public class org.jruby.ir.IRBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.ir.IRBuilder
  super_class: java.lang.Object
{
  static final org.jruby.ir.operands.UnexecutableNil U_NIL;
    descriptor: Lorg/jruby/ir/operands/UnexecutableNil;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private java.util.Stack<org.jruby.ir.IRBuilder$RescueBlockInfo> activeRescueBlockStack;
    descriptor: Ljava/util/Stack;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Stack<Lorg/jruby/ir/IRBuilder$RescueBlockInfo;>;

  private java.util.Stack<org.jruby.ir.IRBuilder$EnsureBlockInfo> activeEnsureBlockStack;
    descriptor: Ljava/util/Stack;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Stack<Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;>;

  private java.util.Stack<org.jruby.ir.IRBuilder$EnsureBlockInfo> ensureBodyBuildStack;
    descriptor: Ljava/util/Stack;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Stack<Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;>;

  private java.util.Stack<org.jruby.ir.operands.Label> activeRescuers;
    descriptor: Ljava/util/Stack;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Stack<Lorg/jruby/ir/operands/Label;>;

  private java.util.Stack<org.jruby.ir.IRBuilder$IRLoop> loopStack;
    descriptor: Ljava/util/Stack;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Stack<Lorg/jruby/ir/IRBuilder$IRLoop;>;

  private int _lastProcessedLineNum;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean needsLineNumInfo;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public boolean underscoreVariableSeen;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  protected org.jruby.ir.IRBuilder parent;
    descriptor: Lorg/jruby/ir/IRBuilder;
    flags: (0x0004) ACC_PROTECTED

  protected org.jruby.ir.IRManager manager;
    descriptor: Lorg/jruby/ir/IRManager;
    flags: (0x0004) ACC_PROTECTED

  protected org.jruby.ir.IRScope scope;
    descriptor: Lorg/jruby/ir/IRScope;
    flags: (0x0004) ACC_PROTECTED

  protected java.util.List<org.jruby.ir.instructions.Instr> instructions;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;

  protected java.util.List<java.lang.Object> argumentDescriptions;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Ljava/lang/Object;>;

  protected boolean needsCodeCoverage;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  private boolean executesOnce;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected int afterPrologueIndex;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  private org.jruby.ir.operands.TemporaryVariable yieldClosureVariable;
    descriptor: Lorg/jruby/ir/operands/TemporaryVariable;
    flags: (0x0002) ACC_PRIVATE

  private org.jruby.ir.operands.Variable currentModuleVariable;
    descriptor: Lorg/jruby/ir/operands/Variable;
    flags: (0x0002) ACC_PRIVATE

  private org.jruby.ir.operands.Variable currentScopeVariable;
    descriptor: Lorg/jruby/ir/operands/Variable;
    flags: (0x0002) ACC_PRIVATE

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 86
            ldc Lorg/jruby/ir/IRBuilder;
            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.IRBuilder.$assertionsDisabled:Z
         3: .line 87
            getstatic org.jruby.ir.operands.UnexecutableNil.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            putstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.jruby.ast.Node buildAST(boolean, java.lang.String);
    descriptor: (ZLjava/lang/String;)Lorg/jruby/ast/Node;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // boolean isCommandLineScript
        start local 1 // java.lang.String arg
         0: .line 90
            invokestatic org.jruby.Ruby.getGlobalRuntime:()Lorg/jruby/Ruby;
            astore 2 /* ruby */
        start local 2 // org.jruby.Ruby ruby
         1: .line 93
            iload 0 /* isCommandLineScript */
            ifeq 2
            aload 2 /* ruby */
            aload 1 /* arg */
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            ldc "-e"
            aconst_null
            iconst_0
            iconst_0
            invokevirtual org.jruby.Ruby.parse:(Lorg/jruby/util/ByteList;Ljava/lang/String;Lorg/jruby/runtime/DynamicScope;IZ)Lorg/jruby/ast/Node;
            areturn
         2: .line 96
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aconst_null
            astore 3 /* fis */
        start local 3 // java.io.FileInputStream fis
         3: .line 98
            new java.io.File
            dup
            aload 1 /* arg */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 4 /* file */
        start local 4 // java.io.File file
         4: .line 99
            new java.io.FileInputStream
            dup
            aload 4 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 3 /* fis */
         5: .line 100
            aload 4 /* file */
            invokevirtual java.io.File.length:()J
            lstore 5 /* size */
        start local 5 // long size
         6: .line 101
            lload 5 /* size */
            l2i
            newarray 8
            astore 7 /* bytes */
        start local 7 // byte[] bytes
         7: .line 102
            aload 3 /* fis */
            aload 7 /* bytes */
            invokevirtual java.io.FileInputStream.read:([B)I
            pop
         8: .line 103
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "-- processing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* arg */
            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 java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 104
            aload 2 /* ruby */
            new org.jruby.util.ByteList
            dup
            aload 7 /* bytes */
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            aload 1 /* arg */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual org.jruby.Ruby.parse:(Lorg/jruby/util/ByteList;Ljava/lang/String;Lorg/jruby/runtime/DynamicScope;IZ)Lorg/jruby/ast/Node;
            astore 9
        10: .line 108
            aload 3 /* fis */
            ifnull 13
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        11: goto 13
      StackMap locals: int java.lang.String org.jruby.Ruby java.io.FileInputStream java.io.File long byte[] top org.jruby.ast.Node
      StackMap stack: java.lang.Exception
        12: pop
        13: .line 104
      StackMap locals:
      StackMap stack:
            aload 9
            areturn
        end local 7 // byte[] bytes
        end local 5 // long size
        end local 4 // java.io.File file
        14: .line 105
      StackMap locals: int java.lang.String org.jruby.Ruby java.io.FileInputStream
      StackMap stack: java.io.IOException
            astore 4 /* ioe */
        start local 4 // java.io.IOException ioe
        15: .line 106
            new java.lang.RuntimeException
            dup
            aload 4 /* ioe */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException ioe
        16: .line 107
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        17: .line 108
            aload 3 /* fis */
            ifnull 20
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        18: goto 20
      StackMap locals: int java.lang.String org.jruby.Ruby java.io.FileInputStream top top top top java.lang.Throwable
      StackMap stack: java.lang.Exception
        19: pop
        20: .line 109
      StackMap locals:
      StackMap stack:
            aload 8
            athrow
        end local 3 // java.io.FileInputStream fis
        end local 2 // org.jruby.Ruby ruby
        end local 1 // java.lang.String arg
        end local 0 // boolean isCommandLineScript
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   21     0  isCommandLineScript  Z
            0   21     1                  arg  Ljava/lang/String;
            1   21     2                 ruby  Lorg/jruby/Ruby;
            3   21     3                  fis  Ljava/io/FileInputStream;
            4   14     4                 file  Ljava/io/File;
            6   14     5                 size  J
            7   14     7                bytes  [B
           15   16     4                  ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          10    11      12  Class java.lang.Exception
           3    10      14  Class java.io.IOException
           3    10      16  any
          14    16      16  any
          17    18      19  Class java.lang.Exception
    MethodParameters:
                     Name  Flags
      isCommandLineScript  
      arg                  

  public org.jruby.ir.IRBuilder$IRLoop getCurrentLoop();
    descriptor: ()Lorg/jruby/ir/IRBuilder$IRLoop;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 295
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.loopStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.isEmpty:()Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.loopStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$IRLoop
      StackMap locals:
      StackMap stack: org.jruby.ir.IRBuilder$IRLoop
         2: areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;

  public void <init>(org.jruby.ir.IRManager, org.jruby.ir.IRScope, org.jruby.ir.IRBuilder);
    descriptor: (Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.IRManager manager
        start local 2 // org.jruby.ir.IRScope scope
        start local 3 // org.jruby.ir.IRBuilder parent
         0: .line 314
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 263
            aload 0 /* this */
            new java.util.Stack
            dup
            invokespecial java.util.Stack.<init>:()V
            putfield org.jruby.ir.IRBuilder.activeRescueBlockStack:Ljava/util/Stack;
         2: .line 266
            aload 0 /* this */
            new java.util.Stack
            dup
            invokespecial java.util.Stack.<init>:()V
            putfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
         3: .line 269
            aload 0 /* this */
            new java.util.Stack
            dup
            invokespecial java.util.Stack.<init>:()V
            putfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
         4: .line 275
            aload 0 /* this */
            new java.util.Stack
            dup
            invokespecial java.util.Stack.<init>:()V
            putfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
         5: .line 282
            aload 0 /* this */
            new java.util.Stack
            dup
            invokespecial java.util.Stack.<init>:()V
            putfield org.jruby.ir.IRBuilder.loopStack:Ljava/util/Stack;
         6: .line 284
            aload 0 /* this */
            iconst_m1
            putfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
         7: .line 290
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.needsLineNumInfo:Z
         8: .line 292
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.underscoreVariableSeen:Z
         9: .line 304
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
        10: .line 309
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
        11: .line 310
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRBuilder.yieldClosureVariable:Lorg/jruby/ir/operands/TemporaryVariable;
        12: .line 311
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRBuilder.currentModuleVariable:Lorg/jruby/ir/operands/Variable;
        13: .line 315
            aload 0 /* this */
            aload 1 /* manager */
            putfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
        14: .line 316
            aload 0 /* this */
            aload 2 /* scope */
            putfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
        15: .line 317
            aload 0 /* this */
            aload 3 /* parent */
            putfield org.jruby.ir.IRBuilder.parent:Lorg/jruby/ir/IRBuilder;
        16: .line 318
            aload 0 /* this */
            new java.util.ArrayList
            dup
            bipush 50
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
        17: .line 319
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            getstatic org.jruby.ir.operands.Label.UNRESCUED_REGION_LABEL:Lorg/jruby/ir/operands/Label;
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 321
            aload 3 /* parent */
            ifnull 19
            aload 0 /* this */
            aload 3 /* parent */
            getfield org.jruby.ir.IRBuilder.executesOnce:Z
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
        19: .line 322
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.IRManager org.jruby.ir.IRScope org.jruby.ir.IRBuilder
      StackMap stack:
            return
        end local 3 // org.jruby.ir.IRBuilder parent
        end local 2 // org.jruby.ir.IRScope scope
        end local 1 // org.jruby.ir.IRManager manager
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lorg/jruby/ir/IRBuilder;
            0   20     1  manager  Lorg/jruby/ir/IRManager;
            0   20     2    scope  Lorg/jruby/ir/IRScope;
            0   20     3   parent  Lorg/jruby/ir/IRBuilder;
    MethodParameters:
         Name  Flags
      manager  
      scope    
      parent   

  private boolean needsCodeCoverage();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 325
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
            ifne 2
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.parent:Lorg/jruby/ir/IRBuilder;
            ifnull 1
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.parent:Lorg/jruby/ir/IRBuilder;
            invokevirtual org.jruby.ir.IRBuilder.needsCodeCoverage:()Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;

  public void addArgumentDescription(org.jruby.runtime.ArgumentType, org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.runtime.ArgumentType type
        start local 2 // org.jruby.RubySymbol name
         0: .line 329
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            ifnonnull 1
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
         1: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            aload 1 /* type */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 332
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            aload 2 /* name */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 333
            return
        end local 2 // org.jruby.RubySymbol name
        end local 1 // org.jruby.runtime.ArgumentType type
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ir/IRBuilder;
            0    4     1  type  Lorg/jruby/runtime/ArgumentType;
            0    4     2  name  Lorg/jruby/RubySymbol;
    MethodParameters:
      Name  Flags
      type  
      name  

  public void addInstr(org.jruby.ir.instructions.Instr);
    descriptor: (Lorg/jruby/ir/instructions/Instr;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.instructions.Instr instr
         0: .line 336
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.needsLineNumInfo:Z
            ifeq 7
         1: .line 337
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.needsLineNumInfo:Z
         2: .line 338
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
            invokevirtual org.jruby.ir.IRManager.newLineNumber:(I)Lorg/jruby/ir/instructions/LineNumberInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 339
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 7
         4: .line 340
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.LINE:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.methodNameFor:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 341
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.needsCodeCoverage:()Z
            ifeq 7
         6: .line 342
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.COVERAGE:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.methodNameFor:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifeq 12
         8: .line 350
            aload 1 /* instr */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.instructions.Instr.computeScopeFlags:(Lorg/jruby/ir/IRScope;)Z
            pop
         9: .line 352
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.hasListener:()Z
            ifeq 10
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getIRScopeListener:()Lorg/jruby/ir/listeners/IRScopeListener;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* instr */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokeinterface org.jruby.ir.listeners.IRScopeListener.addedInstr:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/instructions/Instr;I)V
        10: .line 354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            aload 1 /* instr */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 355
            goto 13
        12: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$EnsureBlockInfo
            aload 1 /* instr */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 358
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ir.instructions.Instr instr
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Lorg/jruby/ir/IRBuilder;
            0   14     1  instr  Lorg/jruby/ir/instructions/Instr;
    MethodParameters:
       Name  Flags
      instr  

  public void addInstrAtBeginning(org.jruby.ir.instructions.Instr);
    descriptor: (Lorg/jruby/ir/instructions/Instr;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.instructions.Instr instr
         0: .line 363
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifeq 5
         1: .line 364
            aload 1 /* instr */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.instructions.Instr.computeScopeFlags:(Lorg/jruby/ir/IRScope;)Z
            pop
         2: .line 366
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.hasListener:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getIRScopeListener:()Lorg/jruby/ir/listeners/IRScopeListener;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* instr */
            iconst_0
            invokeinterface org.jruby.ir.listeners.IRScopeListener.addedInstr:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/instructions/Instr;I)V
         3: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            iconst_0
            aload 1 /* instr */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         4: .line 369
            goto 6
         5: .line 370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$EnsureBlockInfo
            aload 1 /* instr */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.addInstrAtBeginning:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 372
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ir.instructions.Instr instr
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/jruby/ir/IRBuilder;
            0    7     1  instr  Lorg/jruby/ir/instructions/Instr;
    MethodParameters:
       Name  Flags
      instr  

  private void emitEnsureBlocks(org.jruby.ir.IRBuilder$IRLoop);
    descriptor: (Lorg/jruby/ir/IRBuilder$IRLoop;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.IRBuilder$IRLoop loop
         0: .line 377
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.size:()I
            istore 2 /* n */
        start local 2 // int n
         1: .line 378
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            iload 2 /* n */
            anewarray org.jruby.ir.IRBuilder$EnsureBlockInfo
            invokevirtual java.util.Stack.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$EnsureBlockInfo[]
            astore 3 /* ebArray */
        start local 3 // org.jruby.ir.IRBuilder$EnsureBlockInfo[] ebArray
         2: .line 379
            iload 2 /* n */
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 380
      StackMap locals: int org.jruby.ir.IRBuilder$EnsureBlockInfo[] int
      StackMap stack:
            aload 3 /* ebArray */
            iload 4 /* i */
            aaload
            astore 5 /* ebi */
        start local 5 // org.jruby.ir.IRBuilder$EnsureBlockInfo ebi
         5: .line 384
            aload 1 /* loop */
            ifnull 6
            aload 5 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.innermostLoop:Lorg/jruby/ir/IRBuilder$IRLoop;
            aload 1 /* loop */
            if_acmpeq 6
            goto 9
         6: .line 387
      StackMap locals: org.jruby.ir.IRBuilder$EnsureBlockInfo
      StackMap stack:
            aload 5 /* ebi */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.cloneIntoHostScope:(Lorg/jruby/ir/IRBuilder;)V
        end local 5 // org.jruby.ir.IRBuilder$EnsureBlockInfo ebi
         7: .line 379
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            ifge 4
        end local 4 // int i
         9: .line 389
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.ir.IRBuilder$EnsureBlockInfo[] ebArray
        end local 2 // int n
        end local 1 // org.jruby.ir.IRBuilder$IRLoop loop
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/jruby/ir/IRBuilder;
            0   10     1     loop  Lorg/jruby/ir/IRBuilder$IRLoop;
            1   10     2        n  I
            2   10     3  ebArray  [Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;
            3    9     4        i  I
            5    7     5      ebi  Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;
    MethodParameters:
      Name  Flags
      loop  

  private void determineIfWeNeedLineNumber(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 392
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.isNewline:()Z
            ifeq 5
         1: .line 393
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getLine:()I
            istore 2 /* currLineNum */
        start local 2 // int currLineNum
         2: .line 394
            iload 2 /* currLineNum */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
            if_icmpeq 5
         3: .line 395
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ir.IRBuilder.needsLineNumInfo:Z
         4: .line 396
            aload 0 /* this */
            iload 2 /* currLineNum */
            putfield org.jruby.ir.IRBuilder._lastProcessedLineNum:I
        end local 2 // int currLineNum
         5: .line 399
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/jruby/ir/IRBuilder;
            0    6     1         node  Lorg/jruby/ast/Node;
            2    5     2  currLineNum  I
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Operand buildOperand(org.jruby.ir.operands.Variable, org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.Node node
         0: .line 402
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual org.jruby.ir.IRBuilder.determineIfWeNeedLineNumber:(Lorg/jruby/ast/Node;)V
         1: .line 404
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 2 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            tableswitch { // 1 - 115
                    1: 2
                    2: 3
                    3: 4
                    4: 96
                    5: 96
                    6: 6
                    7: 96
                    8: 8
                    9: 9
                   10: 10
                   11: 96
                   12: 96
                   13: 11
                   14: 96
                   15: 12
                   16: 13
                   17: 14
                   18: 15
                   19: 17
                   20: 96
                   21: 16
                   22: 18
                   23: 19
                   24: 21
                   25: 22
                   26: 23
                   27: 24
                   28: 25
                   29: 26
                   30: 27
                   31: 28
                   32: 29
                   33: 30
                   34: 31
                   35: 32
                   36: 34
                   37: 35
                   38: 36
                   39: 37
                   40: 38
                   41: 39
                   42: 40
                   43: 41
                   44: 42
                   45: 43
                   46: 44
                   47: 45
                   48: 46
                   49: 47
                   50: 96
                   51: 48
                   52: 96
                   53: 51
                   54: 52
                   55: 53
                   56: 54
                   57: 55
                   58: 56
                   59: 96
                   60: 58
                   61: 60
                   62: 96
                   63: 59
                   64: 61
                   65: 63
                   66: 64
                   67: 65
                   68: 66
                   69: 67
                   70: 68
                   71: 70
                   72: 71
                   73: 72
                   74: 73
                   75: 74
                   76: 75
                   77: 77
                   78: 96
                   79: 78
                   80: 79
                   81: 96
                   82: 80
                   83: 81
                   84: 82
                   85: 83
                   86: 84
                   87: 85
                   88: 86
                   89: 87
                   90: 88
                   91: 90
                   92: 89
                   93: 92
                   94: 93
                   95: 94
                   96: 96
                   97: 95
                   98: 96
                   99: 76
                  100: 7
                  101: 5
                  102: 96
                  103: 96
                  104: 49
                  105: 57
                  106: 96
                  107: 33
                  108: 50
                  109: 96
                  110: 96
                  111: 96
                  112: 69
                  113: 20
                  114: 96
                  115: 62
              default: 96
          }
         2: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.AliasNode
            invokevirtual org.jruby.ir.IRBuilder.buildAlias:(Lorg/jruby/ast/AliasNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         3: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.AndNode
            invokevirtual org.jruby.ir.IRBuilder.buildAnd:(Lorg/jruby/ast/AndNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         4: .line 407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ArgsCatNode
            invokevirtual org.jruby.ir.IRBuilder.buildArgsCat:(Lorg/jruby/ast/ArgsCatNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         5: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ArgsPushNode
            invokevirtual org.jruby.ir.IRBuilder.buildArgsPush:(Lorg/jruby/ast/ArgsPushNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         6: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ArrayNode
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildArray:(Lorg/jruby/ast/ArrayNode;Z)Lorg/jruby/ir/operands/Operand;
            areturn
         7: .line 410
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.AttrAssignNode
            invokevirtual org.jruby.ir.IRBuilder.buildAttrAssign:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/AttrAssignNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         8: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.BackRefNode
            invokevirtual org.jruby.ir.IRBuilder.buildBackref:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/BackRefNode;)Lorg/jruby/ir/operands/Operand;
            areturn
         9: .line 412
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.BeginNode
            invokevirtual org.jruby.ir.IRBuilder.buildBegin:(Lorg/jruby/ast/BeginNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        10: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.BignumNode
            invokevirtual org.jruby.ir.IRBuilder.buildBignum:(Lorg/jruby/ast/BignumNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        11: .line 414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.BlockNode
            invokevirtual org.jruby.ir.IRBuilder.buildBlock:(Lorg/jruby/ast/BlockNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        12: .line 415
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.BreakNode
            invokevirtual org.jruby.ir.IRBuilder.buildBreak:(Lorg/jruby/ast/BreakNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        13: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.CallNode
            aconst_null
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.buildCall:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/CallNode;Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/operands/Operand;
            areturn
        14: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.CaseNode
            invokevirtual org.jruby.ir.IRBuilder.buildCase:(Lorg/jruby/ast/CaseNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        15: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ClassNode
            invokevirtual org.jruby.ir.IRBuilder.buildClass:(Lorg/jruby/ast/ClassNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        16: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ClassVarNode
            invokevirtual org.jruby.ir.IRBuilder.buildClassVar:(Lorg/jruby/ast/ClassVarNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        17: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ClassVarAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildClassVarAsgn:(Lorg/jruby/ast/ClassVarAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        18: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.Colon2Node
            invokevirtual org.jruby.ir.IRBuilder.buildColon2:(Lorg/jruby/ast/Colon2Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        19: .line 422
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.Colon3Node
            invokevirtual org.jruby.ir.IRBuilder.buildColon3:(Lorg/jruby/ast/Colon3Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        20: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ComplexNode
            invokevirtual org.jruby.ir.IRBuilder.buildComplex:(Lorg/jruby/ast/ComplexNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        21: .line 424
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ConstDeclNode
            invokevirtual org.jruby.ir.IRBuilder.buildConstDecl:(Lorg/jruby/ast/ConstDeclNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        22: .line 425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ConstNode
            invokevirtual org.jruby.ast.ConstNode.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.ir.IRBuilder.searchConst:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
            areturn
        23: .line 426
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.DAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildDAsgn:(Lorg/jruby/ast/DAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        24: .line 427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.DefinedNode
            invokevirtual org.jruby.ast.DefinedNode.getExpressionNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.buildGetDefinition:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        25: .line 428
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.MethodDefNode
            invokevirtual org.jruby.ir.IRBuilder.buildDefn:(Lorg/jruby/ast/MethodDefNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        26: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.DefsNode
            invokevirtual org.jruby.ir.IRBuilder.buildDefs:(Lorg/jruby/ast/DefsNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        27: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.DotNode
            invokevirtual org.jruby.ir.IRBuilder.buildDot:(Lorg/jruby/ast/DotNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        28: .line 431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.DRegexpNode
            invokevirtual org.jruby.ir.IRBuilder.buildDRegexp:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DRegexpNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        29: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.DStrNode
            invokevirtual org.jruby.ir.IRBuilder.buildDStr:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DStrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        30: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.DSymbolNode
            invokevirtual org.jruby.ir.IRBuilder.buildDSymbol:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DSymbolNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        31: .line 434
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.DVarNode
            invokevirtual org.jruby.ir.IRBuilder.buildDVar:(Lorg/jruby/ast/DVarNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        32: .line 435
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.DXStrNode
            invokevirtual org.jruby.ir.IRBuilder.buildDXStr:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DXStrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        33: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.EncodingNode
            invokevirtual org.jruby.ir.IRBuilder.buildEncoding:(Lorg/jruby/ast/EncodingNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        34: .line 437
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.EnsureNode
            invokevirtual org.jruby.ir.IRBuilder.buildEnsureNode:(Lorg/jruby/ast/EnsureNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        35: .line 438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.EvStrNode
            invokevirtual org.jruby.ir.IRBuilder.buildEvStr:(Lorg/jruby/ast/EvStrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        36: .line 439
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildFalse:()Lorg/jruby/ir/operands/Operand;
            areturn
        37: .line 440
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.FCallNode
            invokevirtual org.jruby.ir.IRBuilder.buildFCall:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/FCallNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        38: .line 441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.FixnumNode
            invokevirtual org.jruby.ir.IRBuilder.buildFixnum:(Lorg/jruby/ast/FixnumNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        39: .line 442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.FlipNode
            invokevirtual org.jruby.ir.IRBuilder.buildFlip:(Lorg/jruby/ast/FlipNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        40: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.FloatNode
            invokevirtual org.jruby.ir.IRBuilder.buildFloat:(Lorg/jruby/ast/FloatNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        41: .line 444
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ForNode
            invokevirtual org.jruby.ir.IRBuilder.buildFor:(Lorg/jruby/ast/ForNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        42: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.GlobalAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildGlobalAsgn:(Lorg/jruby/ast/GlobalAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        43: .line 446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.GlobalVarNode
            invokevirtual org.jruby.ir.IRBuilder.buildGlobalVar:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/GlobalVarNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        44: .line 447
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.HashNode
            invokevirtual org.jruby.ir.IRBuilder.buildHash:(Lorg/jruby/ast/HashNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        45: .line 448
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.IfNode
            invokevirtual org.jruby.ir.IRBuilder.buildIf:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/IfNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        46: .line 449
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.InstAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildInstAsgn:(Lorg/jruby/ast/InstAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        47: .line 450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.InstVarNode
            invokevirtual org.jruby.ir.IRBuilder.buildInstVar:(Lorg/jruby/ast/InstVarNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        48: .line 451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.IterNode
            invokevirtual org.jruby.ir.IRBuilder.buildIter:(Lorg/jruby/ast/IterNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        49: .line 452
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.LambdaNode
            invokevirtual org.jruby.ir.IRBuilder.buildLambda:(Lorg/jruby/ast/LambdaNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        50: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.LiteralNode
            invokevirtual org.jruby.ir.IRBuilder.buildLiteral:(Lorg/jruby/ast/LiteralNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        51: .line 454
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.LocalAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildLocalAsgn:(Lorg/jruby/ast/LocalAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        52: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.LocalVarNode
            invokevirtual org.jruby.ir.IRBuilder.buildLocalVar:(Lorg/jruby/ast/LocalVarNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        53: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.Match2Node
            invokevirtual org.jruby.ir.IRBuilder.buildMatch2:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Match2Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        54: .line 457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.Match3Node
            invokevirtual org.jruby.ir.IRBuilder.buildMatch3:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Match3Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        55: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.MatchNode
            invokevirtual org.jruby.ir.IRBuilder.buildMatch:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/MatchNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        56: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ModuleNode
            invokevirtual org.jruby.ir.IRBuilder.buildModule:(Lorg/jruby/ast/ModuleNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        57: .line 460
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.MultipleAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19:(Lorg/jruby/ast/MultipleAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        58: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.NextNode
            invokevirtual org.jruby.ir.IRBuilder.buildNext:(Lorg/jruby/ast/NextNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        59: .line 462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.NthRefNode
            invokevirtual org.jruby.ir.IRBuilder.buildNthRef:(Lorg/jruby/ast/NthRefNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        60: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildNil:()Lorg/jruby/ir/operands/Operand;
            areturn
        61: .line 464
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OpAsgnAndNode
            invokevirtual org.jruby.ir.IRBuilder.buildOpAsgnAnd:(Lorg/jruby/ast/OpAsgnAndNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        62: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OpAsgnConstDeclNode
            invokevirtual org.jruby.ir.IRBuilder.buildOpAsgnConstDeclNode:(Lorg/jruby/ast/OpAsgnConstDeclNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        63: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OpAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildOpAsgn:(Lorg/jruby/ast/OpAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        64: .line 467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OpAsgnOrNode
            invokevirtual org.jruby.ir.IRBuilder.buildOpAsgnOr:(Lorg/jruby/ast/OpAsgnOrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        65: .line 468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OpElementAsgnNode
            invokevirtual org.jruby.ir.IRBuilder.buildOpElementAsgn:(Lorg/jruby/ast/OpElementAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        66: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.OrNode
            invokevirtual org.jruby.ir.IRBuilder.buildOr:(Lorg/jruby/ast/OrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        67: .line 470
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.PreExeNode
            invokevirtual org.jruby.ir.IRBuilder.buildPreExe:(Lorg/jruby/ast/PreExeNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        68: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.PostExeNode
            invokevirtual org.jruby.ir.IRBuilder.buildPostExe:(Lorg/jruby/ast/PostExeNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        69: .line 472
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.RationalNode
            invokevirtual org.jruby.ir.IRBuilder.buildRational:(Lorg/jruby/ast/RationalNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        70: .line 473
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.RedoNode
            invokevirtual org.jruby.ir.IRBuilder.buildRedo:(Lorg/jruby/ast/RedoNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        71: .line 474
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.RegexpNode
            invokevirtual org.jruby.ir.IRBuilder.buildRegexp:(Lorg/jruby/ast/RegexpNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        72: .line 476
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "rescue body is handled by rescue compilation at: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* node */
            invokevirtual org.jruby.ast.Node.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        73: .line 477
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.RescueNode
            invokevirtual org.jruby.ir.IRBuilder.buildRescue:(Lorg/jruby/ast/RescueNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        74: .line 478
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildRetry:()Lorg/jruby/ir/operands/Operand;
            areturn
        75: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ReturnNode
            invokevirtual org.jruby.ir.IRBuilder.buildReturn:(Lorg/jruby/ast/ReturnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        76: .line 481
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Use buildRoot(); Root node at: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* node */
            invokevirtual org.jruby.ast.Node.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        77: .line 482
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.SClassNode
            invokevirtual org.jruby.ir.IRBuilder.buildSClass:(Lorg/jruby/ast/SClassNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        78: .line 483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            areturn
        79: .line 484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.SplatNode
            invokevirtual org.jruby.ir.IRBuilder.buildSplat:(Lorg/jruby/ast/SplatNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        80: .line 485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.StrNode
            invokevirtual org.jruby.ir.IRBuilder.buildStr:(Lorg/jruby/ast/StrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        81: .line 486
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.SuperNode
            invokevirtual org.jruby.ir.IRBuilder.buildSuper:(Lorg/jruby/ast/SuperNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        82: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.SValueNode
            invokevirtual org.jruby.ir.IRBuilder.buildSValue:(Lorg/jruby/ast/SValueNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        83: .line 488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.SymbolNode
            invokevirtual org.jruby.ir.IRBuilder.buildSymbol:(Lorg/jruby/ast/SymbolNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        84: .line 489
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildTrue:()Lorg/jruby/ir/operands/Operand;
            areturn
        85: .line 490
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildUndef:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        86: .line 491
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.UntilNode
            invokevirtual org.jruby.ir.IRBuilder.buildUntil:(Lorg/jruby/ast/UntilNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        87: .line 492
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.VAliasNode
            invokevirtual org.jruby.ir.IRBuilder.buildVAlias:(Lorg/jruby/ast/VAliasNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        88: .line 493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            checkcast org.jruby.ast.VCallNode
            invokevirtual org.jruby.ir.IRBuilder.buildVCall:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/VCallNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        89: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.WhileNode
            invokevirtual org.jruby.ir.IRBuilder.buildWhile:(Lorg/jruby/ast/WhileNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        90: .line 495
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRBuilder.$assertionsDisabled:Z
            ifne 91
            new java.lang.AssertionError
            dup
            ldc "When nodes are handled by case node compilation."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
      StackMap locals:
      StackMap stack:
        91: aconst_null
            areturn
        92: .line 496
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.XStrNode
            invokevirtual org.jruby.ir.IRBuilder.buildXStr:(Lorg/jruby/ast/XStrNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        93: .line 497
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.YieldNode
            aload 1 /* result */
            invokevirtual org.jruby.ir.IRBuilder.buildYield:(Lorg/jruby/ast/YieldNode;Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Operand;
            areturn
        94: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            invokevirtual org.jruby.ir.IRBuilder.buildZArray:(Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Operand;
            areturn
        95: .line 499
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            checkcast org.jruby.ast.ZSuperNode
            invokevirtual org.jruby.ir.IRBuilder.buildZSuper:(Lorg/jruby/ast/ZSuperNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        96: .line 500
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown node encountered in builder: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* node */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.jruby.ast.Node node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   97     0    this  Lorg/jruby/ir/IRBuilder;
            0   97     1  result  Lorg/jruby/ir/operands/Variable;
            0   97     2    node  Lorg/jruby/ast/Node;
    Exceptions:
      throws org.jruby.compiler.NotCompilableException
    MethodParameters:
        Name  Flags
      result  
      node    

  private boolean hasListener();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 505
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getIRScopeListener:()Lorg/jruby/ir/listeners/IRScopeListener;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.IRBuilder newIRBuilder(org.jruby.ir.IRManager, org.jruby.ir.IRScope);
    descriptor: (Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.IRManager manager
        start local 2 // org.jruby.ir.IRScope newScope
         0: .line 509
            new org.jruby.ir.IRBuilder
            dup
            aload 1 /* manager */
            aload 2 /* newScope */
            aload 0 /* this */
            invokespecial org.jruby.ir.IRBuilder.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder;)V
            areturn
        end local 2 // org.jruby.ir.IRScope newScope
        end local 1 // org.jruby.ir.IRManager manager
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/ir/IRBuilder;
            0    1     1   manager  Lorg/jruby/ir/IRManager;
            0    1     2  newScope  Lorg/jruby/ir/IRScope;
    MethodParameters:
          Name  Flags
      manager   
      newScope  

  public static org.jruby.ir.IRBuilder topIRBuilder(org.jruby.ir.IRManager, org.jruby.ir.IRScope);
    descriptor: (Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRManager manager
        start local 1 // org.jruby.ir.IRScope newScope
         0: .line 513
            new org.jruby.ir.IRBuilder
            dup
            aload 0 /* manager */
            aload 1 /* newScope */
            aconst_null
            invokespecial org.jruby.ir.IRBuilder.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder;)V
            areturn
        end local 1 // org.jruby.ir.IRScope newScope
        end local 0 // org.jruby.ir.IRManager manager
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0   manager  Lorg/jruby/ir/IRManager;
            0    1     1  newScope  Lorg/jruby/ir/IRScope;
    MethodParameters:
          Name  Flags
      manager   
      newScope  

  public org.jruby.ir.operands.Operand build(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 517
            aload 0 /* this */
            aconst_null
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand build(org.jruby.ir.operands.Variable, org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.Node node
         0: .line 521
            aload 2 /* node */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.executesOnce:Z
            istore 3 /* savedExecuteOnce */
        start local 3 // boolean savedExecuteOnce
         2: .line 525
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.executesOnce:Z
            ifeq 3
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual org.jruby.ast.Node.executesOnce:()Z
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
         3: .line 527
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.hasListener:()Z
            ifeq 4
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getIRScopeListener:()Lorg/jruby/ir/listeners/IRScopeListener;
            aload 2 /* node */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokeinterface org.jruby.ir.listeners.IRScopeListener.startBuildOperand:(Lorg/jruby/ast/Node;Lorg/jruby/ir/IRScope;)V
         4: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildOperand:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* operand */
        start local 4 // org.jruby.ir.operands.Operand operand
         5: .line 531
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.hasListener:()Z
            ifeq 6
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getIRScopeListener:()Lorg/jruby/ir/listeners/IRScopeListener;
            aload 2 /* node */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* operand */
            invokeinterface org.jruby.ir.listeners.IRScopeListener.endBuildOperand:(Lorg/jruby/ast/Node;Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Operand;)V
         6: .line 533
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 4 /* operand */
            astore 6
         7: .line 535
            aload 0 /* this */
            iload 3 /* savedExecuteOnce */
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
         8: .line 533
            aload 6
            areturn
        end local 4 // org.jruby.ir.operands.Operand operand
         9: .line 534
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.Node int
      StackMap stack: java.lang.Throwable
            astore 5
        10: .line 535
            aload 0 /* this */
            iload 3 /* savedExecuteOnce */
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
        11: .line 536
            aload 5
            athrow
        end local 3 // boolean savedExecuteOnce
        end local 2 // org.jruby.ast.Node node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0              this  Lorg/jruby/ir/IRBuilder;
            0   12     1            result  Lorg/jruby/ir/operands/Variable;
            0   12     2              node  Lorg/jruby/ast/Node;
            2   12     3  savedExecuteOnce  Z
            5    9     4           operand  Lorg/jruby/ir/operands/Operand;
      Exception table:
        from    to  target  type
           2     7       9  any
    MethodParameters:
        Name  Flags
      result  
      node    

  private org.jruby.ir.interpreter.InterpreterContext buildLambdaInner(org.jruby.ast.LambdaNode);
    descriptor: (Lorg/jruby/ast/LambdaNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.LambdaNode node
         0: .line 540
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         1: .line 541
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         2: .line 543
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArgs:(Lorg/jruby/ast/IterNode;)V
         3: .line 545
            aload 1 /* node */
            invokevirtual org.jruby.ast.LambdaNode.getBody:()Lorg/jruby/ast/Node;
            ifnonnull 4
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            goto 5
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.LambdaNode.getBody:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         5: astore 2 /* closureRetVal */
        start local 2 // org.jruby.ir.operands.Operand closureRetVal
         6: .line 548
            aload 2 /* closureRetVal */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 7
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 2 /* closureRetVal */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 550
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.handleBreakAndReturnsInLambdas:()V
         8: .line 552
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 2 // org.jruby.ir.operands.Operand closureRetVal
        end local 1 // org.jruby.ast.LambdaNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/jruby/ir/IRBuilder;
            0    9     1           node  Lorg/jruby/ast/LambdaNode;
            6    9     2  closureRetVal  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildLambda(org.jruby.ast.LambdaNode);
    descriptor: (Lorg/jruby/ast/LambdaNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.LambdaNode node
         0: .line 556
            new org.jruby.ir.IRClosure
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* node */
            invokevirtual org.jruby.ast.LambdaNode.getLine:()I
            aload 1 /* node */
            invokevirtual org.jruby.ast.LambdaNode.getScope:()Lorg/jruby/parser/StaticScope;
            aload 1 /* node */
            invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/ast/IterNode;)Lorg/jruby/runtime/Signature;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
            invokespecial org.jruby.ir.IRClosure.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;ILorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;Z)V
            astore 2 /* closure */
        start local 2 // org.jruby.ir.IRClosure closure
         1: .line 559
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 2 /* closure */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildLambdaInner:(Lorg/jruby/ast/LambdaNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         2: .line 561
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* lambda */
        start local 3 // org.jruby.ir.operands.Variable lambda
         3: .line 562
            new org.jruby.ir.operands.WrappedIRClosure
            dup
            aload 2 /* closure */
            invokevirtual org.jruby.ir.IRClosure.getSelf:()Lorg/jruby/ir/operands/Variable;
            aload 2 /* closure */
            invokespecial org.jruby.ir.operands.WrappedIRClosure.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRClosure;)V
            astore 4 /* lambdaBody */
        start local 4 // org.jruby.ir.operands.WrappedIRClosure lambdaBody
         4: .line 563
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildLambdaInstr
            dup
            aload 3 /* lambda */
            aload 4 /* lambdaBody */
            invokespecial org.jruby.ir.instructions.BuildLambdaInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/WrappedIRClosure;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 564
            aload 3 /* lambda */
            areturn
        end local 4 // org.jruby.ir.operands.WrappedIRClosure lambdaBody
        end local 3 // org.jruby.ir.operands.Variable lambda
        end local 2 // org.jruby.ir.IRClosure closure
        end local 1 // org.jruby.ast.LambdaNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/jruby/ir/IRBuilder;
            0    6     1        node  Lorg/jruby/ast/LambdaNode;
            1    6     2     closure  Lorg/jruby/ir/IRClosure;
            3    6     3      lambda  Lorg/jruby/ir/operands/Variable;
            4    6     4  lambdaBody  Lorg/jruby/ir/operands/WrappedIRClosure;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildEncoding(org.jruby.ast.EncodingNode);
    descriptor: (Lorg/jruby/ast/EncodingNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.EncodingNode node
         0: .line 568
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* ret */
        start local 2 // org.jruby.ir.operands.Variable ret
         1: .line 569
            aload 0 /* this */
            new org.jruby.ir.instructions.GetEncodingInstr
            dup
            aload 2 /* ret */
            aload 1 /* node */
            invokevirtual org.jruby.ast.EncodingNode.getEncoding:()Lorg/jcodings/Encoding;
            invokespecial org.jruby.ir.instructions.GetEncodingInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jcodings/Encoding;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 570
            aload 2 /* ret */
            areturn
        end local 2 // org.jruby.ir.operands.Variable ret
        end local 1 // org.jruby.ast.EncodingNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;
            0    3     1  node  Lorg/jruby/ast/EncodingNode;
            1    3     2   ret  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildMultipleAsgn19(org.jruby.ast.MultipleAsgnNode);
    descriptor: (Lorg/jruby/ast/MultipleAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.MultipleAsgnNode multipleAsgnNode
         0: .line 575
            aload 1 /* multipleAsgnNode */
            invokevirtual org.jruby.ast.MultipleAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            astore 2 /* valueNode */
        start local 2 // org.jruby.ast.Node valueNode
         1: .line 576
            aload 0 /* this */
            aload 2 /* valueNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* values */
        start local 3 // org.jruby.ir.operands.Operand values
         2: .line 577
            aload 0 /* this */
            aload 3 /* values */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* ret */
        start local 4 // org.jruby.ir.operands.Variable ret
         3: .line 578
            aload 2 /* valueNode */
            instanceof org.jruby.ast.ArrayNode
            ifeq 6
         4: .line 579
            aload 0 /* this */
            aload 1 /* multipleAsgnNode */
            aconst_null
            aload 4 /* ret */
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19Assignment:(Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
         5: .line 580
            goto 9
         6: .line 581
      StackMap locals: org.jruby.ast.Node org.jruby.ir.operands.Operand org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* tmp */
        start local 5 // org.jruby.ir.operands.Variable tmp
         7: .line 582
            aload 0 /* this */
            new org.jruby.ir.instructions.ToAryInstr
            dup
            aload 5 /* tmp */
            aload 4 /* ret */
            invokespecial org.jruby.ir.instructions.ToAryInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 583
            aload 0 /* this */
            aload 1 /* multipleAsgnNode */
            aconst_null
            aload 5 /* tmp */
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19Assignment:(Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
        end local 5 // org.jruby.ir.operands.Variable tmp
         9: .line 585
      StackMap locals:
      StackMap stack:
            aload 4 /* ret */
            areturn
        end local 4 // org.jruby.ir.operands.Variable ret
        end local 3 // org.jruby.ir.operands.Operand values
        end local 2 // org.jruby.ast.Node valueNode
        end local 1 // org.jruby.ast.MultipleAsgnNode multipleAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lorg/jruby/ir/IRBuilder;
            0   10     1  multipleAsgnNode  Lorg/jruby/ast/MultipleAsgnNode;
            1   10     2         valueNode  Lorg/jruby/ast/Node;
            2   10     3            values  Lorg/jruby/ir/operands/Operand;
            3   10     4               ret  Lorg/jruby/ir/operands/Variable;
            7    9     5               tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
                  Name  Flags
      multipleAsgnNode  

  protected org.jruby.ir.operands.Variable copyAndReturnValue(org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand val
         0: .line 589
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 1 /* val */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ir.operands.Operand val
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1   val  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      val   

  protected org.jruby.ir.operands.Operand buildWithOrder(org.jruby.ast.Node, boolean);
    descriptor: (Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // boolean preserveOrder
         0: .line 593
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* value */
        start local 3 // org.jruby.ir.operands.Operand value
         1: .line 597
            iload 2 /* preserveOrder */
            ifeq 2
            aload 3 /* value */
            instanceof org.jruby.ir.operands.ImmutableLiteral
            ifne 2
            aload 0 /* this */
            aload 3 /* value */
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            goto 3
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
         2: aload 3 /* value */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         3: areturn
        end local 3 // org.jruby.ir.operands.Operand value
        end local 2 // boolean preserveOrder
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/jruby/ir/IRBuilder;
            0    4     1           node  Lorg/jruby/ast/Node;
            0    4     2  preserveOrder  Z
            1    4     3          value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
               Name  Flags
      node           
      preserveOrder  

  protected org.jruby.ir.operands.Operand buildLazyWithOrder(org.jruby.ast.CallNode, org.jruby.ir.operands.Label, org.jruby.ir.operands.Label, boolean);
    descriptor: (Lorg/jruby/ast/CallNode;Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.CallNode node
        start local 2 // org.jruby.ir.operands.Label lazyLabel
        start local 3 // org.jruby.ir.operands.Label endLabel
        start local 4 // boolean preserveOrder
         0: .line 601
            aload 0 /* this */
            aconst_null
            aload 1 /* node */
            aload 2 /* lazyLabel */
            aload 3 /* endLabel */
            invokevirtual org.jruby.ir.IRBuilder.buildCall:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/CallNode;Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* value */
        start local 5 // org.jruby.ir.operands.Operand value
         1: .line 605
            iload 4 /* preserveOrder */
            ifeq 2
            aload 5 /* value */
            instanceof org.jruby.ir.operands.ImmutableLiteral
            ifne 2
            aload 0 /* this */
            aload 5 /* value */
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            goto 3
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
         2: aload 5 /* value */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         3: areturn
        end local 5 // org.jruby.ir.operands.Operand value
        end local 4 // boolean preserveOrder
        end local 3 // org.jruby.ir.operands.Label endLabel
        end local 2 // org.jruby.ir.operands.Label lazyLabel
        end local 1 // org.jruby.ast.CallNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/jruby/ir/IRBuilder;
            0    4     1           node  Lorg/jruby/ast/CallNode;
            0    4     2      lazyLabel  Lorg/jruby/ir/operands/Label;
            0    4     3       endLabel  Lorg/jruby/ir/operands/Label;
            0    4     4  preserveOrder  Z
            1    4     5          value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
               Name  Flags
      node           
      lazyLabel      
      endLabel       
      preserveOrder  

  protected org.jruby.ir.operands.Variable getValueInTemporaryVariable(org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand val
         0: .line 609
            aload 1 /* val */
            ifnull 1
            aload 1 /* val */
            instanceof org.jruby.ir.operands.TemporaryVariable
            ifeq 1
            aload 1 /* val */
            checkcast org.jruby.ir.operands.Variable
            areturn
         1: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* val */
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ir.operands.Operand val
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRBuilder;
            0    2     1   val  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      val   

  protected org.jruby.ir.operands.Operand buildAttrAssignCallArgs(java.util.List<org.jruby.ir.operands.Operand>, org.jruby.ast.Node, boolean);
    descriptor: (Ljava/util/List;Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=9, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // java.util.List argsList
        start local 2 // org.jruby.ast.Node args
        start local 3 // boolean containsAssignment
         0: .line 617
            aload 2 /* args */
            ifnonnull 1
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
         1: .line 619
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 2 /* args */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 3
                    6: 2
                   80: 17
                  101: 10
              default: 20
          }
         2: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            astore 4 /* last */
        start local 4 // org.jruby.ir.operands.Operand last
         3: .line 622
            aload 2 /* args */
            checkcast org.jruby.ast.ListNode
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 8
      StackMap locals: org.jruby.ir.IRBuilder java.util.List org.jruby.ast.Node int org.jruby.ir.operands.Operand top int int org.jruby.ast.Node[]
      StackMap stack:
         4: aload 8
            iload 6
            aaload
            astore 5 /* n */
        start local 5 // org.jruby.ast.Node n
         5: .line 623
            aload 0 /* this */
            aload 5 /* n */
            iload 3 /* containsAssignment */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 4 /* last */
         6: .line 624
            aload 1 /* argsList */
            aload 4 /* last */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.jruby.ast.Node n
         7: .line 622
            iinc 6 1
      StackMap locals:
      StackMap stack:
         8: iload 6
            iload 7
            if_icmplt 4
         9: .line 626
            aload 4 /* last */
            areturn
        end local 4 // org.jruby.ir.operands.Operand last
        10: .line 629
      StackMap locals: org.jruby.ir.IRBuilder java.util.List org.jruby.ast.Node int
      StackMap stack:
            aload 2 /* args */
            checkcast org.jruby.ast.ArgsPushNode
            astore 4 /* argsPushNode */
        start local 4 // org.jruby.ast.ArgsPushNode argsPushNode
        11: .line 630
            aload 0 /* this */
            aload 4 /* argsPushNode */
            invokevirtual org.jruby.ast.ArgsPushNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* lhs */
        start local 5 // org.jruby.ir.operands.Operand lhs
        12: .line 631
            aload 0 /* this */
            aload 4 /* argsPushNode */
            invokevirtual org.jruby.ast.ArgsPushNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 6 /* rhs */
        start local 6 // org.jruby.ir.operands.Operand rhs
        13: .line 632
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 7 /* res */
        start local 7 // org.jruby.ir.operands.Variable res
        14: .line 633
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundArrayInstr
            dup
            aload 7 /* res */
            aload 5 /* lhs */
            aload 6 /* rhs */
            iconst_1
            invokespecial org.jruby.ir.instructions.BuildCompoundArrayInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 634
            aload 1 /* argsList */
            new org.jruby.ir.operands.Splat
            dup
            aload 7 /* res */
            invokespecial org.jruby.ir.operands.Splat.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        16: .line 635
            aload 6 /* rhs */
            areturn
        end local 7 // org.jruby.ir.operands.Variable res
        end local 6 // org.jruby.ir.operands.Operand rhs
        end local 5 // org.jruby.ir.operands.Operand lhs
        end local 4 // org.jruby.ast.ArgsPushNode argsPushNode
        17: .line 638
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.Splat
            dup
            aload 0 /* this */
            aload 2 /* args */
            checkcast org.jruby.ast.SplatNode
            invokevirtual org.jruby.ir.IRBuilder.buildSplat:(Lorg/jruby/ast/SplatNode;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.operands.Splat.<init>:(Lorg/jruby/ir/operands/Operand;)V
            astore 4 /* rhs */
        start local 4 // org.jruby.ir.operands.Splat rhs
        18: .line 639
            aload 1 /* argsList */
            aload 4 /* rhs */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 640
            aload 4 /* rhs */
            areturn
        end local 4 // org.jruby.ir.operands.Splat rhs
        20: .line 644
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid node for attrassign call args: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* args */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        21: .line 645
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* args */
            invokevirtual org.jruby.ast.Node.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 644
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // boolean containsAssignment
        end local 2 // org.jruby.ast.Node args
        end local 1 // java.util.List argsList
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   23     0                this  Lorg/jruby/ir/IRBuilder;
            0   23     1            argsList  Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;
            0   23     2                args  Lorg/jruby/ast/Node;
            0   23     3  containsAssignment  Z
            3   10     4                last  Lorg/jruby/ir/operands/Operand;
            5    7     5                   n  Lorg/jruby/ast/Node;
           11   17     4        argsPushNode  Lorg/jruby/ast/ArgsPushNode;
           12   17     5                 lhs  Lorg/jruby/ir/operands/Operand;
           13   17     6                 rhs  Lorg/jruby/ir/operands/Operand;
           14   17     7                 res  Lorg/jruby/ir/operands/Variable;
           18   20     4                 rhs  Lorg/jruby/ir/operands/Splat;
    Signature: (Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                    Name  Flags
      argsList            
      args                
      containsAssignment  

  protected org.jruby.ir.operands.Operand[] buildCallArgs(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node args
         0: .line 649
            aload 0 /* this */
            aload 1 /* args */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.buildCallArgsExcept:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.Node args
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  args  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      args  

  protected org.jruby.ir.operands.Operand[] buildCallArgsExcept(org.jruby.ast.Node, org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=11, locals=8, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node args
        start local 2 // org.jruby.ast.Node excludeKeywordArg
         0: .line 660
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* args */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 4
                    3: 1
                    6: 2
                   80: 14
                  101: 1
              default: 15
          }
         1: .line 663
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            new org.jruby.ir.operands.Splat
            dup
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildSplatInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            aload 1 /* args */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            iconst_0
            invokespecial org.jruby.ir.instructions.BuildSplatInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.ir.operands.Splat.<init>:(Lorg/jruby/ir/operands/Operand;)V
            aastore
            areturn
         2: .line 665
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            checkcast org.jruby.ast.ListNode
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* children */
        start local 3 // org.jruby.ast.Node[] children
         3: .line 666
            aload 3 /* children */
            arraylength
            aload 2 /* excludeKeywordArg */
            ifnull 4
            iconst_1
            goto 5
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node org.jruby.ast.Node[]
      StackMap stack: int
         4: iconst_0
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node org.jruby.ast.Node[]
      StackMap stack: int int
         5: isub
            istore 4 /* numberOfArgs */
        start local 4 // int numberOfArgs
         6: .line 667
            iload 4 /* numberOfArgs */
            anewarray org.jruby.ir.operands.Operand
            astore 5 /* builtArgs */
        start local 5 // org.jruby.ir.operands.Operand[] builtArgs
         7: .line 668
            aload 1 /* args */
            invokevirtual org.jruby.ast.Node.containsVariableAssignment:()Z
            istore 6 /* hasAssignments */
        start local 6 // boolean hasAssignments
         8: .line 670
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         9: goto 12
        10: .line 671
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node org.jruby.ast.Node[] int org.jruby.ir.operands.Operand[] int int
      StackMap stack:
            aload 5 /* builtArgs */
            iload 7 /* i */
            aload 0 /* this */
            aload 3 /* children */
            iload 7 /* i */
            aaload
            iload 6 /* hasAssignments */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            aastore
        11: .line 670
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            iload 4 /* numberOfArgs */
            if_icmplt 10
        end local 7 // int i
        13: .line 673
            aload 5 /* builtArgs */
            areturn
        end local 6 // boolean hasAssignments
        end local 5 // org.jruby.ir.operands.Operand[] builtArgs
        end local 4 // int numberOfArgs
        end local 3 // org.jruby.ast.Node[] children
        14: .line 676
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node
      StackMap stack:
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            new org.jruby.ir.operands.Splat
            dup
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildSplatInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            aload 1 /* args */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            iconst_0
            invokespecial org.jruby.ir.instructions.BuildSplatInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.ir.operands.Splat.<init>:(Lorg/jruby/ir/operands/Operand;)V
            aastore
            areturn
        15: .line 679
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid node for call args: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* args */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 680
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* args */
            invokevirtual org.jruby.ast.Node.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 679
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.jruby.ast.Node excludeKeywordArg
        end local 1 // org.jruby.ast.Node args
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   18     0               this  Lorg/jruby/ir/IRBuilder;
            0   18     1               args  Lorg/jruby/ast/Node;
            0   18     2  excludeKeywordArg  Lorg/jruby/ast/Node;
            3   14     3           children  [Lorg/jruby/ast/Node;
            6   14     4       numberOfArgs  I
            7   14     5          builtArgs  [Lorg/jruby/ir/operands/Operand;
            8   14     6     hasAssignments  Z
            9   13     7                  i  I
    MethodParameters:
                   Name  Flags
      args               
      excludeKeywordArg  

  public org.jruby.ir.operands.Operand[] setupCallArgs(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node args
         0: .line 684
            aload 1 /* args */
            ifnonnull 1
            getstatic org.jruby.ir.operands.Operand.EMPTY_ARRAY:[Lorg/jruby/ir/operands/Operand;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            aload 1 /* args */
            invokevirtual org.jruby.ir.IRBuilder.buildCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand[]
         2: areturn
        end local 1 // org.jruby.ast.Node args
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;
            0    3     1  args  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      args  

  public static org.jruby.ir.operands.Operand[] addArg(org.jruby.ir.operands.Operand[], org.jruby.ir.operands.Operand);
    descriptor: ([Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.operands.Operand[] args
        start local 1 // org.jruby.ir.operands.Operand extraArg
         0: .line 688
            aload 0 /* args */
            arraylength
            iconst_1
            iadd
            anewarray org.jruby.ir.operands.Operand
            astore 2 /* newArgs */
        start local 2 // org.jruby.ir.operands.Operand[] newArgs
         1: .line 689
            aload 0 /* args */
            iconst_0
            aload 2 /* newArgs */
            iconst_0
            aload 0 /* args */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         2: .line 690
            aload 2 /* newArgs */
            aload 0 /* args */
            arraylength
            aload 1 /* extraArg */
            aastore
         3: .line 691
            aload 2 /* newArgs */
            areturn
        end local 2 // org.jruby.ir.operands.Operand[] newArgs
        end local 1 // org.jruby.ir.operands.Operand extraArg
        end local 0 // org.jruby.ir.operands.Operand[] args
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      args  [Lorg/jruby/ir/operands/Operand;
            0    4     1  extraArg  Lorg/jruby/ir/operands/Operand;
            1    4     2   newArgs  [Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      args      
      extraArg  

  public void buildAssignment(org.jruby.ast.Node, org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // org.jruby.ir.operands.Variable rhsVal
         0: .line 696
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 9
                   19: 3
                   24: 5
                   26: 7
                   44: 11
                   48: 13
                   53: 15
                   96: 19
                  100: 1
                  105: 20
              default: 24
          }
         1: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            aload 2 /* rhsVal */
            invokevirtual org.jruby.ir.IRBuilder.buildAttrAssignAssignment:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
         2: .line 699
            goto 25
         3: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.PutClassVariableInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.classVarDefinitionContainer:()Lorg/jruby/ir/operands/Operand;
            aload 1 /* node */
            checkcast org.jruby.ast.ClassVarAsgnNode
            invokevirtual org.jruby.ast.ClassVarAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.PutClassVariableInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 702
            goto 25
         5: .line 704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.ConstDeclNode
            aload 2 /* rhsVal */
            invokevirtual org.jruby.ir.IRBuilder.buildConstDeclAssignment:(Lorg/jruby/ast/ConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
         6: .line 705
            goto 25
         7: .line 707
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.DAsgnNode
            astore 3 /* variable */
        start local 3 // org.jruby.ast.DAsgnNode variable
         8: .line 708
            aload 3 /* variable */
            invokevirtual org.jruby.ast.DAsgnNode.getDepth:()I
            istore 4 /* depth */
        start local 4 // int depth
         9: .line 709
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            aload 3 /* variable */
            invokevirtual org.jruby.ast.DAsgnNode.getName:()Lorg/jruby/RubySymbol;
            iload 4 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 710
            goto 25
        end local 4 // int depth
        end local 3 // org.jruby.ast.DAsgnNode variable
        11: .line 713
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.PutGlobalVarInstr
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.GlobalAsgnNode
            invokevirtual org.jruby.ast.GlobalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.PutGlobalVarInstr.<init>:(Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 714
            goto 25
        13: .line 717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.PutFieldInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 1 /* node */
            checkcast org.jruby.ast.InstAsgnNode
            invokevirtual org.jruby.ast.InstAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.PutFieldInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 718
            goto 25
        15: .line 720
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.LocalAsgnNode
            astore 3 /* localVariable */
        start local 3 // org.jruby.ast.LocalAsgnNode localVariable
        16: .line 721
            aload 3 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getDepth:()I
            istore 4 /* depth */
        start local 4 // int depth
        17: .line 722
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            aload 3 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            iload 4 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 723
            goto 25
        end local 4 // int depth
        end local 3 // org.jruby.ast.LocalAsgnNode localVariable
        19: .line 726
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Shouldn't get here; zeroarg does not do assignment: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* tmp */
        start local 3 // org.jruby.ir.operands.Variable tmp
        21: .line 729
            aload 0 /* this */
            new org.jruby.ir.instructions.ToAryInstr
            dup
            aload 3 /* tmp */
            aload 2 /* rhsVal */
            invokespecial org.jruby.ir.instructions.ToAryInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        22: .line 730
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.MultipleAsgnNode
            aconst_null
            aload 3 /* tmp */
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19Assignment:(Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
        23: .line 731
            goto 25
        end local 3 // org.jruby.ir.operands.Variable tmp
        24: .line 734
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't build assignment node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 736
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.ir.operands.Variable rhsVal
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   26     0           this  Lorg/jruby/ir/IRBuilder;
            0   26     1           node  Lorg/jruby/ast/Node;
            0   26     2         rhsVal  Lorg/jruby/ir/operands/Variable;
            8   11     3       variable  Lorg/jruby/ast/DAsgnNode;
            9   11     4          depth  I
           16   19     3  localVariable  Lorg/jruby/ast/LocalAsgnNode;
           17   19     4          depth  I
           21   24     3            tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
        Name  Flags
      node    
      rhsVal  

  protected org.jruby.ir.operands.LocalVariable getBlockArgVariable(org.jruby.RubySymbol, int);
    descriptor: (Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int depth
         0: .line 739
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRFor
            ifne 1
            new org.jruby.compiler.NotCompilableException
            dup
            ldc "Cannot ask for block-arg variable in 1.9 mode"
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 2 // int depth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1   name  Lorg/jruby/RubySymbol;
            0    2     2  depth  I
    MethodParameters:
       Name  Flags
      name   
      depth  

  protected void receiveBlockArg(org.jruby.ir.operands.Variable, org.jruby.ir.operands.Operand, int, boolean);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable v
        start local 2 // org.jruby.ir.operands.Operand argsArray
        start local 3 // int argIndex
        start local 4 // boolean isSplat
         0: .line 745
            aload 2 /* argsArray */
            ifnull 4
         1: .line 748
            iload 4 /* isSplat */
            ifeq 2
            aload 0 /* this */
            new org.jruby.ir.instructions.RestArgMultipleAsgnInstr
            dup
            aload 1 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            invokespecial org.jruby.ir.instructions.RestArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
            goto 7
         2: .line 749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 1 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 750
            goto 7
         4: .line 753
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* isSplat */
            ifeq 5
            new org.jruby.ir.instructions.ReceiveRestArgInstr
            dup
            aload 1 /* v */
            iload 3 /* argIndex */
            iload 3 /* argIndex */
            invokespecial org.jruby.ir.instructions.ReceiveRestArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;II)V
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.ir.IRBuilder
         5: new org.jruby.ir.instructions.ReceivePreReqdArgInstr
            dup
            aload 1 /* v */
            iload 3 /* argIndex */
            invokespecial org.jruby.ir.instructions.ReceivePreReqdArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;I)V
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand int int
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.instructions.ReceiveArgBase
         6: invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 755
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean isSplat
        end local 3 // int argIndex
        end local 2 // org.jruby.ir.operands.Operand argsArray
        end local 1 // org.jruby.ir.operands.Variable v
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jruby/ir/IRBuilder;
            0    8     1          v  Lorg/jruby/ir/operands/Variable;
            0    8     2  argsArray  Lorg/jruby/ir/operands/Operand;
            0    8     3   argIndex  I
            0    8     4    isSplat  Z
    MethodParameters:
           Name  Flags
      v          
      argsArray  
      argIndex   
      isSplat    

  public void buildVersionSpecificBlockArgsAssignment(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 758
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRFor
            ifne 1
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Should not have come here for block args assignment in 1.9 mode: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 761
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            tableswitch { // 105 - 105
                  105: 2
              default: 11
          }
         2: .line 763
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.MultipleAsgnNode
            invokevirtual org.jruby.ast.MultipleAsgnNode.getPre:()Lorg/jruby/ast/ListNode;
            astore 2 /* sourceArray */
        start local 2 // org.jruby.ast.ListNode sourceArray
         3: .line 764
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: .line 765
            aload 2 /* sourceArray */
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 9
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.ListNode int top int int org.jruby.ast.Node[]
      StackMap stack:
         5: aload 7
            iload 5
            aaload
            astore 4 /* an */
        start local 4 // org.jruby.ast.Node an
         6: .line 767
            aload 0 /* this */
            aload 4 /* an */
            aconst_null
            iload 3 /* i */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildBlockArgsAssignment:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;IZ)V
         7: .line 768
            iinc 3 /* i */ 1
        end local 4 // org.jruby.ast.Node an
         8: .line 765
            iinc 5 1
      StackMap locals:
      StackMap stack:
         9: iload 5
            iload 6
            if_icmplt 5
        10: .line 770
            goto 12
        end local 3 // int i
        end local 2 // org.jruby.ast.ListNode sourceArray
        11: .line 773
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't build assignment node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 775
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lorg/jruby/ir/IRBuilder;
            0   13     1         node  Lorg/jruby/ast/Node;
            3   11     2  sourceArray  Lorg/jruby/ast/ListNode;
            4   11     3            i  I
            6    8     4           an  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      node  

  public void buildBlockArgsAssignment(org.jruby.ast.Node, org.jruby.ir.operands.Operand, int, boolean);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // org.jruby.ir.operands.Operand argsArray
        start local 3 // int argIndex
        start local 4 // boolean isSplat
         0: .line 780
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 8
                   19: 9
                   24: 13
                   26: 5
                   44: 17
                   48: 21
                   53: 25
                   96: 29
                  100: 1
              default: 30
          }
         1: .line 782
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
         2: .line 783
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
         3: .line 784
            aload 0 /* this */
            aload 1 /* node */
            aload 5 /* v */
            invokevirtual org.jruby.ir.IRBuilder.buildAttrAssignAssignment:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
         4: .line 785
            goto 31
        end local 5 // org.jruby.ir.operands.Variable v
         5: .line 787
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.DAsgnNode
            astore 6 /* dynamicAsgn */
        start local 6 // org.jruby.ast.DAsgnNode dynamicAsgn
         6: .line 788
            aload 0 /* this */
            aload 6 /* dynamicAsgn */
            invokevirtual org.jruby.ast.DAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 6 /* dynamicAsgn */
            invokevirtual org.jruby.ast.DAsgnNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getBlockArgVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
         7: .line 789
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
         8: .line 790
            goto 31
        end local 6 // org.jruby.ast.DAsgnNode dynamicAsgn
        end local 5 // org.jruby.ir.operands.Variable v
         9: .line 793
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
        10: .line 794
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
        11: .line 795
            aload 0 /* this */
            new org.jruby.ir.instructions.PutClassVariableInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.classVarDefinitionContainer:()Lorg/jruby/ir/operands/Operand;
            aload 1 /* node */
            checkcast org.jruby.ast.ClassVarAsgnNode
            invokevirtual org.jruby.ast.ClassVarAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* v */
            invokespecial org.jruby.ir.instructions.PutClassVariableInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 796
            goto 31
        end local 5 // org.jruby.ir.operands.Variable v
        13: .line 798
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
        14: .line 799
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
        15: .line 800
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.ConstDeclNode
            aload 5 /* v */
            invokevirtual org.jruby.ir.IRBuilder.buildConstDeclAssignment:(Lorg/jruby/ast/ConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
        16: .line 801
            goto 31
        end local 5 // org.jruby.ir.operands.Variable v
        17: .line 803
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
        18: .line 804
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
        19: .line 805
            aload 0 /* this */
            new org.jruby.ir.instructions.PutGlobalVarInstr
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.GlobalAsgnNode
            invokevirtual org.jruby.ast.GlobalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* v */
            invokespecial org.jruby.ir.instructions.PutGlobalVarInstr.<init>:(Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 806
            goto 31
        end local 5 // org.jruby.ir.operands.Variable v
        21: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
        22: .line 809
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
        23: .line 811
            aload 0 /* this */
            new org.jruby.ir.instructions.PutFieldInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 1 /* node */
            checkcast org.jruby.ast.InstAsgnNode
            invokevirtual org.jruby.ast.InstAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* v */
            invokespecial org.jruby.ir.instructions.PutFieldInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 812
            goto 31
        end local 5 // org.jruby.ir.operands.Variable v
        25: .line 814
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.LocalAsgnNode
            astore 6 /* localVariable */
        start local 6 // org.jruby.ast.LocalAsgnNode localVariable
        26: .line 815
            aload 0 /* this */
            aload 6 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 6 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getBlockArgVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
        27: .line 816
            aload 0 /* this */
            aload 5 /* v */
            aload 2 /* argsArray */
            iload 3 /* argIndex */
            iload 4 /* isSplat */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;IZ)V
        28: .line 817
            goto 31
        end local 6 // org.jruby.ast.LocalAsgnNode localVariable
        end local 5 // org.jruby.ir.operands.Variable v
        29: .line 820
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Shouldn't get here; zeroarg does not do assignment: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        30: .line 822
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildVersionSpecificBlockArgsAssignment:(Lorg/jruby/ast/Node;)V
        31: .line 824
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean isSplat
        end local 3 // int argIndex
        end local 2 // org.jruby.ir.operands.Operand argsArray
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   32     0           this  Lorg/jruby/ir/IRBuilder;
            0   32     1           node  Lorg/jruby/ast/Node;
            0   32     2      argsArray  Lorg/jruby/ir/operands/Operand;
            0   32     3       argIndex  I
            0   32     4        isSplat  Z
            2    5     5              v  Lorg/jruby/ir/operands/Variable;
            7    9     5              v  Lorg/jruby/ir/operands/Variable;
           10   13     5              v  Lorg/jruby/ir/operands/Variable;
           14   17     5              v  Lorg/jruby/ir/operands/Variable;
           18   21     5              v  Lorg/jruby/ir/operands/Variable;
           22   25     5              v  Lorg/jruby/ir/operands/Variable;
           27   29     5              v  Lorg/jruby/ir/operands/Variable;
            6    9     6    dynamicAsgn  Lorg/jruby/ast/DAsgnNode;
           26   29     6  localVariable  Lorg/jruby/ast/LocalAsgnNode;
    MethodParameters:
           Name  Flags
      node       
      argsArray  
      argIndex   
      isSplat    

  public org.jruby.ir.operands.Operand buildAlias(org.jruby.ast.AliasNode);
    descriptor: (Lorg/jruby/ast/AliasNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.AliasNode alias
         0: .line 827
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual org.jruby.ast.AliasNode.getNewName:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* newName */
        start local 2 // org.jruby.ir.operands.Operand newName
         1: .line 828
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual org.jruby.ast.AliasNode.getOldName:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* oldName */
        start local 3 // org.jruby.ir.operands.Operand oldName
         2: .line 829
            aload 0 /* this */
            new org.jruby.ir.instructions.AliasInstr
            dup
            aload 2 /* newName */
            aload 3 /* oldName */
            invokespecial org.jruby.ir.instructions.AliasInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 831
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 3 // org.jruby.ir.operands.Operand oldName
        end local 2 // org.jruby.ir.operands.Operand newName
        end local 1 // org.jruby.ast.AliasNode alias
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ir/IRBuilder;
            0    4     1    alias  Lorg/jruby/ast/AliasNode;
            1    4     2  newName  Lorg/jruby/ir/operands/Operand;
            2    4     3  oldName  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      alias  final

  public org.jruby.ir.operands.Operand buildAnd(org.jruby.ast.AndNode);
    descriptor: (Lorg/jruby/ast/AndNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.AndNode andNode
         0: .line 846
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysTrue:()Z
            ifeq 3
         1: .line 848
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
         2: .line 849
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
         3: .line 850
      StackMap locals:
      StackMap stack:
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysFalse:()Z
            ifeq 5
         4: .line 852
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
         5: .line 854
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* l */
        start local 2 // org.jruby.ir.operands.Label l
         6: .line 855
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* v1 */
        start local 3 // org.jruby.ir.operands.Operand v1
         7: .line 856
            aload 0 /* this */
            aload 3 /* v1 */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* ret */
        start local 4 // org.jruby.ir.operands.Variable ret
         8: .line 857
            aload 0 /* this */
            aload 3 /* v1 */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aload 2 /* l */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 858
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.AndNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* v2 */
        start local 5 // org.jruby.ir.operands.Operand v2
        10: .line 859
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* ret */
            aload 5 /* v2 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 860
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* l */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 861
            aload 4 /* ret */
            areturn
        end local 5 // org.jruby.ir.operands.Operand v2
        end local 4 // org.jruby.ir.operands.Variable ret
        end local 3 // org.jruby.ir.operands.Operand v1
        end local 2 // org.jruby.ir.operands.Label l
        end local 1 // org.jruby.ast.AndNode andNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/jruby/ir/IRBuilder;
            0   13     1  andNode  Lorg/jruby/ast/AndNode;
            6   13     2        l  Lorg/jruby/ir/operands/Label;
            7   13     3       v1  Lorg/jruby/ir/operands/Operand;
            8   13     4      ret  Lorg/jruby/ir/operands/Variable;
           10   13     5       v2  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
         Name  Flags
      andNode  final

  public org.jruby.ir.operands.Operand buildArray(org.jruby.ast.ArrayNode, boolean);
    descriptor: (Lorg/jruby/ast/ArrayNode;Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArrayNode node
        start local 2 // boolean operandOnly
         0: .line 866
            aload 1 /* node */
            invokevirtual org.jruby.ast.ArrayNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* nodes */
        start local 3 // org.jruby.ast.Node[] nodes
         1: .line 867
            aload 3 /* nodes */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* elts */
        start local 4 // org.jruby.ir.operands.Operand[] elts
         2: .line 868
            aload 1 /* node */
            invokevirtual org.jruby.ast.ArrayNode.containsVariableAssignment:()Z
            istore 5 /* containsAssignments */
        start local 5 // boolean containsAssignments
         3: .line 869
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 7
         5: .line 870
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArrayNode int org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int int
      StackMap stack:
            aload 4 /* elts */
            iload 6 /* i */
            aload 0 /* this */
            aload 3 /* nodes */
            iload 6 /* i */
            aaload
            iload 5 /* containsAssignments */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            aastore
         6: .line 869
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* i */
            aload 3 /* nodes */
            arraylength
            if_icmplt 5
        end local 6 // int i
         8: .line 873
            new org.jruby.ir.operands.Array
            dup
            aload 4 /* elts */
            invokespecial org.jruby.ir.operands.Array.<init>:([Lorg/jruby/ir/operands/Operand;)V
            astore 6 /* array */
        start local 6 // org.jruby.ir.operands.Operand array
         9: .line 874
            iload 2 /* operandOnly */
            ifeq 10
            aload 6 /* array */
            goto 11
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArrayNode int org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int org.jruby.ir.operands.Operand
      StackMap stack:
        10: aload 0 /* this */
            aload 6 /* array */
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        11: areturn
        end local 6 // org.jruby.ir.operands.Operand array
        end local 5 // boolean containsAssignments
        end local 4 // org.jruby.ir.operands.Operand[] elts
        end local 3 // org.jruby.ast.Node[] nodes
        end local 2 // boolean operandOnly
        end local 1 // org.jruby.ast.ArrayNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   12     0                 this  Lorg/jruby/ir/IRBuilder;
            0   12     1                 node  Lorg/jruby/ast/ArrayNode;
            0   12     2          operandOnly  Z
            1   12     3                nodes  [Lorg/jruby/ast/Node;
            2   12     4                 elts  [Lorg/jruby/ir/operands/Operand;
            3   12     5  containsAssignments  Z
            4    8     6                    i  I
            9   12     6                array  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
             Name  Flags
      node         
      operandOnly  

  public org.jruby.ir.operands.Operand buildArgsCat(org.jruby.ast.ArgsCatNode);
    descriptor: (Lorg/jruby/ast/ArgsCatNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsCatNode argsCatNode
         0: .line 878
            aload 0 /* this */
            aload 1 /* argsCatNode */
            invokevirtual org.jruby.ast.ArgsCatNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* lhs */
        start local 2 // org.jruby.ir.operands.Operand lhs
         1: .line 879
            aload 0 /* this */
            aload 1 /* argsCatNode */
            invokevirtual org.jruby.ast.ArgsCatNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* rhs */
        start local 3 // org.jruby.ir.operands.Operand rhs
         2: .line 881
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundArrayInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 2 /* lhs */
            aload 3 /* rhs */
            iconst_0
            invokespecial org.jruby.ir.instructions.BuildCompoundArrayInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 3 // org.jruby.ir.operands.Operand rhs
        end local 2 // org.jruby.ir.operands.Operand lhs
        end local 1 // org.jruby.ast.ArgsCatNode argsCatNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/jruby/ir/IRBuilder;
            0    3     1  argsCatNode  Lorg/jruby/ast/ArgsCatNode;
            1    3     2          lhs  Lorg/jruby/ir/operands/Operand;
            2    3     3          rhs  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
             Name  Flags
      argsCatNode  final

  public org.jruby.ir.operands.Operand buildArgsPush(org.jruby.ast.ArgsPushNode);
    descriptor: (Lorg/jruby/ast/ArgsPushNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsPushNode node
         0: .line 885
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.ArgsPushNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* lhs */
        start local 2 // org.jruby.ir.operands.Operand lhs
         1: .line 886
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.ArgsPushNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* rhs */
        start local 3 // org.jruby.ir.operands.Operand rhs
         2: .line 888
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundArrayInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 2 /* lhs */
            aload 3 /* rhs */
            iconst_1
            invokespecial org.jruby.ir.instructions.BuildCompoundArrayInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 3 // org.jruby.ir.operands.Operand rhs
        end local 2 // org.jruby.ir.operands.Operand lhs
        end local 1 // org.jruby.ast.ArgsPushNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;
            0    3     1  node  Lorg/jruby/ast/ArgsPushNode;
            1    3     2   lhs  Lorg/jruby/ir/operands/Operand;
            2    3     3   rhs  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      node  final

  private org.jruby.ir.operands.Operand buildAttrAssign(org.jruby.ir.operands.Variable, org.jruby.ast.AttrAssignNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/AttrAssignNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.AttrAssignNode attrAssignNode
         0: .line 892
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.containsVariableAssignment:()Z
            istore 3 /* containsAssignment */
        start local 3 // boolean containsAssignment
         1: .line 893
            aload 0 /* this */
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getReceiverNode:()Lorg/jruby/ast/Node;
            iload 3 /* containsAssignment */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 4 /* obj */
        start local 4 // org.jruby.ir.operands.Operand obj
         2: .line 895
            aconst_null
            astore 5 /* lazyLabel */
        start local 5 // org.jruby.ir.operands.Label lazyLabel
         3: .line 896
            aconst_null
            astore 6 /* endLabel */
        start local 6 // org.jruby.ir.operands.Label endLabel
         4: .line 897
            aload 1 /* result */
            ifnonnull 5
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         5: .line 898
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.AttrAssignNode int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label
      StackMap stack:
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.isLazy:()Z
            ifeq 9
         6: .line 899
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 5 /* lazyLabel */
         7: .line 900
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* endLabel */
         8: .line 901
            aload 0 /* this */
            new org.jruby.ir.instructions.BNilInstr
            dup
            aload 5 /* lazyLabel */
            aload 4 /* obj */
            invokespecial org.jruby.ir.instructions.BNilInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 904
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* args */
        start local 7 // java.util.List args
        10: .line 905
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getArgsNode:()Lorg/jruby/ast/Node;
            astore 8 /* argsNode */
        start local 8 // org.jruby.ast.Node argsNode
        11: .line 906
            aload 0 /* this */
            aload 7 /* args */
            aload 8 /* argsNode */
            iload 3 /* containsAssignment */
            invokevirtual org.jruby.ir.IRBuilder.buildAttrAssignCallArgs:(Ljava/util/List;Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 9 /* lastArg */
        start local 9 // org.jruby.ir.operands.Operand lastArg
        12: .line 907
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* obj */
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getName:()Lorg/jruby/RubySymbol;
            aload 7 /* args */
            aload 7 /* args */
            invokeinterface java.util.List.size:()I
            anewarray org.jruby.ir.operands.Operand
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Operand[]
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokestatic org.jruby.ir.instructions.AttrAssignInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;Z)Lorg/jruby/ir/instructions/AttrAssignInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 908
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 9 /* lastArg */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 910
            aload 2 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.isLazy:()Z
            ifeq 19
        15: .line 911
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 6 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 912
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* lazyLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 913
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 914
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        19: .line 917
      StackMap locals: java.util.List org.jruby.ast.Node org.jruby.ir.operands.Operand
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 9 // org.jruby.ir.operands.Operand lastArg
        end local 8 // org.jruby.ast.Node argsNode
        end local 7 // java.util.List args
        end local 6 // org.jruby.ir.operands.Label endLabel
        end local 5 // org.jruby.ir.operands.Label lazyLabel
        end local 4 // org.jruby.ir.operands.Operand obj
        end local 3 // boolean containsAssignment
        end local 2 // org.jruby.ast.AttrAssignNode attrAssignNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   20     0                this  Lorg/jruby/ir/IRBuilder;
            0   20     1              result  Lorg/jruby/ir/operands/Variable;
            0   20     2      attrAssignNode  Lorg/jruby/ast/AttrAssignNode;
            1   20     3  containsAssignment  Z
            2   20     4                 obj  Lorg/jruby/ir/operands/Operand;
            3   20     5           lazyLabel  Lorg/jruby/ir/operands/Label;
            4   20     6            endLabel  Lorg/jruby/ir/operands/Label;
           10   20     7                args  Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;
           11   20     8            argsNode  Lorg/jruby/ast/Node;
           12   20     9             lastArg  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                Name  Flags
      result          
      attrAssignNode  

  public org.jruby.ir.operands.Operand buildAttrAssignAssignment(org.jruby.ast.Node, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 921
            aload 1 /* node */
            checkcast org.jruby.ast.AttrAssignNode
            astore 3 /* attrAssignNode */
        start local 3 // org.jruby.ast.AttrAssignNode attrAssignNode
         1: .line 922
            aload 0 /* this */
            aload 3 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* obj */
        start local 4 // org.jruby.ir.operands.Operand obj
         2: .line 923
            aload 0 /* this */
            aload 3 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 5 /* args */
        start local 5 // org.jruby.ir.operands.Operand[] args
         3: .line 924
            aload 5 /* args */
            aload 2 /* value */
            invokestatic org.jruby.ir.IRBuilder.addArg:([Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)[Lorg/jruby/ir/operands/Operand;
            astore 5 /* args */
         4: .line 925
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* obj */
            aload 3 /* attrAssignNode */
            invokevirtual org.jruby.ast.AttrAssignNode.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* args */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokestatic org.jruby.ir.instructions.AttrAssignInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;Z)Lorg/jruby/ir/instructions/AttrAssignInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 926
            aload 2 /* value */
            areturn
        end local 5 // org.jruby.ir.operands.Operand[] args
        end local 4 // org.jruby.ir.operands.Operand obj
        end local 3 // org.jruby.ast.AttrAssignNode attrAssignNode
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/jruby/ir/IRBuilder;
            0    6     1            node  Lorg/jruby/ast/Node;
            0    6     2           value  Lorg/jruby/ir/operands/Operand;
            1    6     3  attrAssignNode  Lorg/jruby/ast/AttrAssignNode;
            2    6     4             obj  Lorg/jruby/ir/operands/Operand;
            3    6     5            args  [Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      node   
      value  

  public org.jruby.ir.operands.Operand buildBackref(org.jruby.ir.operands.Variable, org.jruby.ast.BackRefNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/BackRefNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.BackRefNode node
         0: .line 930
            aload 1 /* result */
            ifnonnull 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         1: .line 931
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildBackrefInstr
            dup
            aload 1 /* result */
            aload 2 /* node */
            invokevirtual org.jruby.ast.BackRefNode.getType:()C
            invokespecial org.jruby.ir.instructions.BuildBackrefInstr.<init>:(Lorg/jruby/ir/operands/Variable;C)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.ast.BackRefNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/ir/IRBuilder;
            0    2     1  result  Lorg/jruby/ir/operands/Variable;
            0    2     2    node  Lorg/jruby/ast/BackRefNode;
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildBegin(org.jruby.ast.BeginNode);
    descriptor: (Lorg/jruby/ast/BeginNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.BeginNode beginNode
         0: .line 935
            aload 0 /* this */
            aload 1 /* beginNode */
            invokevirtual org.jruby.ast.BeginNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.BeginNode beginNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jruby/ir/IRBuilder;
            0    1     1  beginNode  Lorg/jruby/ast/BeginNode;
    MethodParameters:
           Name  Flags
      beginNode  

  public org.jruby.ir.operands.Operand buildBignum(org.jruby.ast.BignumNode);
    descriptor: (Lorg/jruby/ast/BignumNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.BignumNode node
         0: .line 941
            new org.jruby.ir.operands.Bignum
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.BignumNode.getValue:()Ljava/math/BigInteger;
            invokespecial org.jruby.ir.operands.Bignum.<init>:(Ljava/math/BigInteger;)V
            areturn
        end local 1 // org.jruby.ast.BignumNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/BignumNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildBlock(org.jruby.ast.BlockNode);
    descriptor: (Lorg/jruby/ast/BlockNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.BlockNode node
         0: .line 945
            aconst_null
            astore 2 /* retVal */
        start local 2 // org.jruby.ir.operands.Operand retVal
         1: .line 946
            aload 1 /* node */
            invokevirtual org.jruby.ast.BlockNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.BlockNode org.jruby.ir.operands.Operand top int int org.jruby.ast.Node[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* child */
        start local 3 // org.jruby.ast.Node child
         3: .line 947
            aload 0 /* this */
            aload 3 /* child */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* retVal */
        end local 3 // org.jruby.ast.Node child
         4: .line 946
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 951
            aload 2 /* retVal */
            areturn
        end local 2 // org.jruby.ir.operands.Operand retVal
        end local 1 // org.jruby.ast.BlockNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/jruby/ir/IRBuilder;
            0    7     1    node  Lorg/jruby/ast/BlockNode;
            1    7     2  retVal  Lorg/jruby/ir/operands/Operand;
            3    4     3   child  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildBreak(org.jruby.ast.BreakNode);
    descriptor: (Lorg/jruby/ast/BreakNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.BreakNode breakNode
         0: .line 955
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
            astore 2 /* currLoop */
        start local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
         1: .line 957
            aload 2 /* currLoop */
            ifnull 6
         2: .line 959
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifne 3
            aload 0 /* this */
            aload 2 /* currLoop */
            invokevirtual org.jruby.ir.IRBuilder.emitEnsureBlocks:(Lorg/jruby/ir/IRBuilder$IRLoop;)V
         3: .line 961
      StackMap locals: org.jruby.ir.IRBuilder$IRLoop
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 2 /* currLoop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopResult:Lorg/jruby/ir/operands/Variable;
            aload 0 /* this */
            aload 1 /* breakNode */
            invokevirtual org.jruby.ast.BreakNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 962
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* currLoop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopEndLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 963
            goto 14
         6: .line 964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClosure
            ifeq 13
         7: .line 967
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 3 /* returnScope */
        start local 3 // org.jruby.ir.IRScope returnScope
         8: .line 968
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IREvalScript
            ifne 9
            aload 3 /* returnScope */
            ifnonnull 11
         9: .line 970
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 0 /* this */
            aload 1 /* breakNode */
            ldc "Can't escape from eval with redo"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
        10: .line 971
            goto 14
        11: .line 972
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.BreakInstr
            dup
            aload 0 /* this */
            aload 1 /* breakNode */
            invokevirtual org.jruby.ast.BreakNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 3 /* returnScope */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            invokespecial org.jruby.ir.instructions.BreakInstr.<init>:(Lorg/jruby/ir/operands/Operand;Ljava/lang/String;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 3 // org.jruby.ir.IRScope returnScope
        12: .line 974
            goto 14
        13: .line 976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* breakNode */
            ldc "Invalid break"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
        14: .line 981
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            areturn
        end local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
        end local 1 // org.jruby.ast.BreakNode breakNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/jruby/ir/IRBuilder;
            0   15     1    breakNode  Lorg/jruby/ast/BreakNode;
            1   15     2     currLoop  Lorg/jruby/ir/IRBuilder$IRLoop;
            8   12     3  returnScope  Lorg/jruby/ir/IRScope;
    MethodParameters:
           Name  Flags
      breakNode  

  private void throwSyntaxError(org.jruby.ast.Node, java.lang.String);
    descriptor: (Lorg/jruby/ast/Node;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // java.lang.String message
         0: .line 985
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getLine:()I
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* errorMessage */
        start local 3 // java.lang.String errorMessage
         1: .line 986
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            aload 3 /* errorMessage */
            invokevirtual org.jruby.Ruby.newSyntaxError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // java.lang.String errorMessage
        end local 2 // java.lang.String message
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/jruby/ir/IRBuilder;
            0    2     1          node  Lorg/jruby/ast/Node;
            0    2     2       message  Ljava/lang/String;
            1    2     3  errorMessage  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      node     
      message  

  private void handleNonlocalReturnInMethod();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 990
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 1 /* rBeginLabel */
        start local 1 // org.jruby.ir.operands.Label rBeginLabel
         1: .line 991
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* rEndLabel */
        start local 2 // org.jruby.ir.operands.Label rEndLabel
         2: .line 992
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* gebLabel */
        start local 3 // org.jruby.ir.operands.Label gebLabel
         3: .line 998
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 3 /* gebLabel */
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstrAtBeginning:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 999
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 1 /* rBeginLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstrAtBeginning:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 1000
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 1003
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* gebLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 1004
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* exc */
        start local 4 // org.jruby.ir.operands.Variable exc
         8: .line 1005
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveJRubyExceptionInstr
            dup
            aload 4 /* exc */
            invokespecial org.jruby.ir.instructions.ReceiveJRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 1009
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* ret */
        start local 5 // org.jruby.ir.operands.Variable ret
        10: .line 1010
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 5 /* ret */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_NONLOCAL_RETURN:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 4 /* exc */
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 1011
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 5 /* ret */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 1014
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 1015
            return
        end local 5 // org.jruby.ir.operands.Variable ret
        end local 4 // org.jruby.ir.operands.Variable exc
        end local 3 // org.jruby.ir.operands.Label gebLabel
        end local 2 // org.jruby.ir.operands.Label rEndLabel
        end local 1 // org.jruby.ir.operands.Label rBeginLabel
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/jruby/ir/IRBuilder;
            1   14     1  rBeginLabel  Lorg/jruby/ir/operands/Label;
            2   14     2    rEndLabel  Lorg/jruby/ir/operands/Label;
            3   14     3     gebLabel  Lorg/jruby/ir/operands/Label;
            8   14     4          exc  Lorg/jruby/ir/operands/Variable;
           10   14     5          ret  Lorg/jruby/ir/operands/Variable;

  private org.jruby.ir.operands.Operand receiveBreakException(org.jruby.ir.operands.Operand, org.jruby.ir.IRBuilder$CodeBlock);
    descriptor: (Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=8, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand block
        start local 2 // org.jruby.ir.IRBuilder$CodeBlock codeBlock
         0: .line 1019
            aload 1 /* block */
            ifnull 3
         1: .line 1020
            aload 1 /* block */
            instanceof org.jruby.ir.operands.WrappedIRClosure
            ifeq 3
         2: .line 1021
            aload 1 /* block */
            checkcast org.jruby.ir.operands.WrappedIRClosure
            invokevirtual org.jruby.ir.operands.WrappedIRClosure.getClosure:()Lorg/jruby/ir/IRClosure;
            getfield org.jruby.ir.IRClosure.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_BREAK_INSTRS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 1023
      StackMap locals:
      StackMap stack:
            aload 2 /* codeBlock */
            invokeinterface org.jruby.ir.IRBuilder$CodeBlock.run:()Lorg/jruby/ir/operands/Operand;
            areturn
         4: .line 1026
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* rBeginLabel */
        start local 3 // org.jruby.ir.operands.Label rBeginLabel
         5: .line 1027
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* rEndLabel */
        start local 4 // org.jruby.ir.operands.Label rEndLabel
         6: .line 1028
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 5 /* rescueLabel */
        start local 5 // org.jruby.ir.operands.Label rescueLabel
         7: .line 1031
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* rBeginLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 1032
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 5 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 1033
            aload 2 /* codeBlock */
            invokeinterface org.jruby.ir.IRBuilder$CodeBlock.run:()Lorg/jruby/ir/operands/Operand;
            checkcast org.jruby.ir.operands.Variable
            astore 6 /* callResult */
        start local 6 // org.jruby.ir.operands.Variable callResult
        10: .line 1034
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 1035
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 1038
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 1039
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 7 /* exc */
        start local 7 // org.jruby.ir.operands.Variable exc
        14: .line 1040
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveJRubyExceptionInstr
            dup
            aload 7 /* exc */
            invokespecial org.jruby.ir.instructions.ReceiveJRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 1044
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 6 /* callResult */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_PROPAGATED_BREAK:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 7 /* exc */
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 1047
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 1049
            aload 6 /* callResult */
            areturn
        end local 7 // org.jruby.ir.operands.Variable exc
        end local 6 // org.jruby.ir.operands.Variable callResult
        end local 5 // org.jruby.ir.operands.Label rescueLabel
        end local 4 // org.jruby.ir.operands.Label rEndLabel
        end local 3 // org.jruby.ir.operands.Label rBeginLabel
        end local 2 // org.jruby.ir.IRBuilder$CodeBlock codeBlock
        end local 1 // org.jruby.ir.operands.Operand block
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0         this  Lorg/jruby/ir/IRBuilder;
            0   18     1        block  Lorg/jruby/ir/operands/Operand;
            0   18     2    codeBlock  Lorg/jruby/ir/IRBuilder$CodeBlock;
            5   18     3  rBeginLabel  Lorg/jruby/ir/operands/Label;
            6   18     4    rEndLabel  Lorg/jruby/ir/operands/Label;
            7   18     5  rescueLabel  Lorg/jruby/ir/operands/Label;
           10   18     6   callResult  Lorg/jruby/ir/operands/Variable;
           14   18     7          exc  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
           Name  Flags
      block      
      codeBlock  

  private void receiveBreakException(org.jruby.ir.operands.Operand, org.jruby.ir.instructions.CallInstr);
    descriptor: (Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/instructions/CallInstr;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand block
        start local 2 // org.jruby.ir.instructions.CallInstr callInstr
         0: .line 1054
            aload 0 /* this */
            aload 1 /* block */
            new org.jruby.ir.IRBuilder$1
            dup
            aload 0 /* this */
            aload 2 /* callInstr */
            invokespecial org.jruby.ir.IRBuilder$1.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ir/instructions/CallInstr;)V
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
            pop
         1: .line 1055
            return
        end local 2 // org.jruby.ir.instructions.CallInstr callInstr
        end local 1 // org.jruby.ir.operands.Operand block
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/ir/IRBuilder;
            0    2     1      block  Lorg/jruby/ir/operands/Operand;
            0    2     2  callInstr  Lorg/jruby/ir/instructions/CallInstr;
    MethodParameters:
           Name  Flags
      block      
      callInstr  final

  public org.jruby.ir.operands.Operand buildCall(org.jruby.ir.operands.Variable, org.jruby.ast.CallNode, org.jruby.ir.operands.Label, org.jruby.ir.operands.Label);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/CallNode;Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=16, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.CallNode callNode
        start local 3 // org.jruby.ir.operands.Label lazyLabel
        start local 4 // org.jruby.ir.operands.Label endLabel
         0: .line 1058
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getReceiverNode:()Lorg/jruby/ast/Node;
            astore 5 /* receiverNode */
        start local 5 // org.jruby.ast.Node receiverNode
         1: .line 1059
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getName:()Lorg/jruby/RubySymbol;
            astore 6 /* name */
        start local 6 // org.jruby.RubySymbol name
         2: .line 1062
            aload 6 /* name */
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            astore 7 /* id */
        start local 7 // java.lang.String id
         3: .line 1063
            aload 5 /* receiverNode */
            instanceof org.jruby.ast.StrNode
            ifeq 6
            aload 7 /* id */
            ldc "freeze"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
            aload 7 /* id */
            ldc "-@"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 1064
      StackMap locals: org.jruby.ast.Node org.jruby.RubySymbol java.lang.String
      StackMap stack:
            aload 5 /* receiverNode */
            checkcast org.jruby.ast.StrNode
            astore 8 /* asString */
        start local 8 // org.jruby.ast.StrNode asString
         5: .line 1065
            new org.jruby.ir.operands.FrozenString
            dup
            aload 8 /* asString */
            invokevirtual org.jruby.ast.StrNode.getValue:()Lorg/jruby/util/ByteList;
            aload 8 /* asString */
            invokevirtual org.jruby.ast.StrNode.getCodeRange:()I
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            aload 8 /* asString */
            invokevirtual org.jruby.ast.StrNode.getLine:()I
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/util/ByteList;ILjava/lang/String;I)V
            areturn
        end local 8 // org.jruby.ast.StrNode asString
         6: .line 1068
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* compileLazyLabel */
        start local 8 // boolean compileLazyLabel
         7: .line 1069
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.isLazy:()Z
            ifeq 12
         8: .line 1070
            aload 3 /* lazyLabel */
            ifnonnull 12
         9: .line 1071
            iconst_1
            istore 8 /* compileLazyLabel */
        10: .line 1072
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* lazyLabel */
        11: .line 1073
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* endLabel */
        12: .line 1080
      StackMap locals: int
      StackMap stack:
            aload 5 /* receiverNode */
            instanceof org.jruby.ast.CallNode
            ifeq 15
            aload 5 /* receiverNode */
            checkcast org.jruby.ast.CallNode
            invokevirtual org.jruby.ast.CallNode.isLazy:()Z
            ifeq 15
        13: .line 1081
            aload 0 /* this */
            aload 5 /* receiverNode */
            checkcast org.jruby.ast.CallNode
            aload 3 /* lazyLabel */
            aload 4 /* endLabel */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.containsVariableAssignment:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildLazyWithOrder:(Lorg/jruby/ast/CallNode;Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;Z)Lorg/jruby/ir/operands/Operand;
            astore 9 /* receiver */
        start local 9 // org.jruby.ir.operands.Operand receiver
        14: .line 1082
            goto 16
        end local 9 // org.jruby.ir.operands.Operand receiver
        15: .line 1083
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* receiverNode */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.containsVariableAssignment:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 9 /* receiver */
        start local 9 // org.jruby.ir.operands.Operand receiver
        16: .line 1086
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 1 /* result */
            ifnonnull 17
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
        17: .line 1090
      StackMap locals:
      StackMap stack:
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.isLazy:()Z
            ifne 29
        18: .line 1091
            aload 7 /* id */
            ldc "[]"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        19: .line 1092
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getArgsNode:()Lorg/jruby/ast/Node;
            instanceof org.jruby.ast.ArrayNode
            ifeq 29
        20: .line 1093
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getArgsNode:()Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.ArrayNode
            dup
            astore 10 /* argsAry */
        start local 10 // org.jruby.ast.ArrayNode argsAry
        21: invokevirtual org.jruby.ast.ArrayNode.size:()I
            iconst_1
            if_icmpne 29
        22: .line 1094
            aload 10 /* argsAry */
            iconst_0
            invokevirtual org.jruby.ast.ArrayNode.get:(I)Lorg/jruby/ast/Node;
            instanceof org.jruby.ast.StrNode
            ifeq 29
        23: .line 1095
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            ifne 29
        24: .line 1096
            aload 5 /* receiverNode */
            instanceof org.jruby.ast.HashNode
            ifeq 29
        25: .line 1097
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getIterNode:()Lorg/jruby/ast/Node;
            ifnonnull 29
        26: .line 1098
            aload 10 /* argsAry */
            iconst_0
            invokevirtual org.jruby.ast.ArrayNode.get:(I)Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.StrNode
            astore 11 /* keyNode */
        start local 11 // org.jruby.ast.StrNode keyNode
        27: .line 1099
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* result */
            aload 9 /* receiver */
            new org.jruby.ir.operands.FrozenString
            dup
            aload 11 /* keyNode */
            invokevirtual org.jruby.ast.StrNode.getValue:()Lorg/jruby/util/ByteList;
            aload 11 /* keyNode */
            invokevirtual org.jruby.ast.StrNode.getCodeRange:()I
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            aload 11 /* keyNode */
            invokevirtual org.jruby.ast.StrNode.getLine:()I
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/util/ByteList;ILjava/lang/String;I)V
            invokestatic org.jruby.ir.instructions.ArrayDerefInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/FrozenString;)Lorg/jruby/ir/instructions/ArrayDerefInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        28: .line 1100
            aload 1 /* result */
            areturn
        end local 11 // org.jruby.ast.StrNode keyNode
        end local 10 // org.jruby.ast.ArrayNode argsAry
        29: .line 1103
      StackMap locals:
      StackMap stack:
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.isLazy:()Z
            ifeq 31
        30: .line 1104
            aload 0 /* this */
            new org.jruby.ir.instructions.BNilInstr
            dup
            aload 3 /* lazyLabel */
            aload 9 /* receiver */
            invokespecial org.jruby.ir.instructions.BNilInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        31: .line 1107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.getPossibleKeywordArgument:(Lorg/jruby/ast/Node;)Lorg/jruby/ast/HashNode;
            astore 11 /* keywordArgs */
        start local 11 // org.jruby.ast.HashNode keywordArgs
        32: .line 1111
            aload 11 /* keywordArgs */
            ifnull 38
        33: .line 1112
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getArgsNode:()Lorg/jruby/ast/Node;
            aload 11 /* keywordArgs */
            invokevirtual org.jruby.ir.IRBuilder.buildCallArgsExcept:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 14 /* args */
        start local 14 // org.jruby.ir.operands.Operand[] args
        34: .line 1113
            aload 0 /* this */
            aload 11 /* keywordArgs */
            invokevirtual org.jruby.ir.IRBuilder.buildKeywordArguments:(Lorg/jruby/ast/HashNode;)Ljava/util/List;
            astore 15 /* kwargs */
        start local 15 // java.util.List kwargs
        35: .line 1114
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 13 /* block */
        start local 13 // org.jruby.ir.operands.Operand block
        36: .line 1115
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.NORMAL:Lorg/jruby/runtime/CallType;
            aload 1 /* result */
            aload 6 /* name */
            aload 9 /* receiver */
            aload 14 /* args */
            aload 13 /* block */
            aload 15 /* kwargs */
            invokestatic org.jruby.ir.instructions.CallInstr.createWithKwargs:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Ljava/util/List;)Lorg/jruby/ir/instructions/CallInstr;
            astore 12 /* callInstr */
        end local 15 // java.util.List kwargs
        end local 14 // org.jruby.ir.operands.Operand[] args
        start local 12 // org.jruby.ir.instructions.CallInstr callInstr
        37: .line 1116
            goto 41
        end local 13 // org.jruby.ir.operands.Operand block
        end local 12 // org.jruby.ir.instructions.CallInstr callInstr
        38: .line 1117
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.CallNode org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ast.Node org.jruby.RubySymbol java.lang.String int org.jruby.ir.operands.Operand top org.jruby.ast.HashNode
      StackMap stack:
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 14 /* args */
        start local 14 // org.jruby.ir.operands.Operand[] args
        39: .line 1118
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ast.CallNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 13 /* block */
        start local 13 // org.jruby.ir.operands.Operand block
        40: .line 1119
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* result */
            aload 6 /* name */
            aload 9 /* receiver */
            aload 14 /* args */
            aload 13 /* block */
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            astore 12 /* callInstr */
        end local 14 // org.jruby.ir.operands.Operand[] args
        start local 12 // org.jruby.ir.instructions.CallInstr callInstr
        41: .line 1122
      StackMap locals: org.jruby.ir.instructions.CallInstr org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            aload 2 /* callNode */
            invokevirtual org.jruby.ir.IRBuilder.determineIfWeNeedLineNumber:(Lorg/jruby/ast/Node;)V
        42: .line 1123
            aload 0 /* this */
            aload 5 /* receiverNode */
            aload 6 /* name */
            aload 12 /* callInstr */
            invokevirtual org.jruby.ir.IRBuilder.determineIfProcNew:(Lorg/jruby/ast/Node;Lorg/jruby/RubySymbol;Lorg/jruby/ir/instructions/CallInstr;)V
        43: .line 1124
            aload 0 /* this */
            aload 13 /* block */
            aload 12 /* callInstr */
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/instructions/CallInstr;)V
        44: .line 1126
            iload 8 /* compileLazyLabel */
            ifeq 49
        45: .line 1127
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        46: .line 1128
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* lazyLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        47: .line 1129
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        48: .line 1130
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        49: .line 1133
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 13 // org.jruby.ir.operands.Operand block
        end local 12 // org.jruby.ir.instructions.CallInstr callInstr
        end local 11 // org.jruby.ast.HashNode keywordArgs
        end local 9 // org.jruby.ir.operands.Operand receiver
        end local 8 // boolean compileLazyLabel
        end local 7 // java.lang.String id
        end local 6 // org.jruby.RubySymbol name
        end local 5 // org.jruby.ast.Node receiverNode
        end local 4 // org.jruby.ir.operands.Label endLabel
        end local 3 // org.jruby.ir.operands.Label lazyLabel
        end local 2 // org.jruby.ast.CallNode callNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   50     0              this  Lorg/jruby/ir/IRBuilder;
            0   50     1            result  Lorg/jruby/ir/operands/Variable;
            0   50     2          callNode  Lorg/jruby/ast/CallNode;
            0   50     3         lazyLabel  Lorg/jruby/ir/operands/Label;
            0   50     4          endLabel  Lorg/jruby/ir/operands/Label;
            1   50     5      receiverNode  Lorg/jruby/ast/Node;
            2   50     6              name  Lorg/jruby/RubySymbol;
            3   50     7                id  Ljava/lang/String;
            5    6     8          asString  Lorg/jruby/ast/StrNode;
            7   50     8  compileLazyLabel  Z
           14   15     9          receiver  Lorg/jruby/ir/operands/Operand;
           16   50     9          receiver  Lorg/jruby/ir/operands/Operand;
           21   29    10           argsAry  Lorg/jruby/ast/ArrayNode;
           27   29    11           keyNode  Lorg/jruby/ast/StrNode;
           32   50    11       keywordArgs  Lorg/jruby/ast/HashNode;
           37   38    12         callInstr  Lorg/jruby/ir/instructions/CallInstr;
           41   50    12         callInstr  Lorg/jruby/ir/instructions/CallInstr;
           36   38    13             block  Lorg/jruby/ir/operands/Operand;
           40   50    13             block  Lorg/jruby/ir/operands/Operand;
           34   37    14              args  [Lorg/jruby/ir/operands/Operand;
           35   37    15            kwargs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
           39   41    14              args  [Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      result     
      callNode   
      lazyLabel  
      endLabel   

  private java.util.List<org.jruby.util.KeyValuePair<org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand>> buildKeywordArguments(org.jruby.ast.HashNode);
    descriptor: (Lorg/jruby/ast/HashNode;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.HashNode keywordArgs
         0: .line 1137
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* kwargs */
        start local 2 // java.util.List kwargs
         1: .line 1138
            aload 1 /* keywordArgs */
            invokevirtual org.jruby.ast.HashNode.getPairs:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.HashNode java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.util.KeyValuePair
            astore 3 /* pair */
        start local 3 // org.jruby.util.KeyValuePair pair
         3: .line 1139
            aload 2 /* kwargs */
            new org.jruby.util.KeyValuePair
            dup
            aload 0 /* this */
            aload 3 /* pair */
            invokevirtual org.jruby.util.KeyValuePair.getKey:()Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            checkcast org.jruby.ir.operands.Symbol
            aload 0 /* this */
            aload 3 /* pair */
            invokevirtual org.jruby.util.KeyValuePair.getValue:()Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.util.KeyValuePair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.jruby.util.KeyValuePair pair
         4: .line 1138
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1141
            aload 2 /* kwargs */
            areturn
        end local 2 // java.util.List kwargs
        end local 1 // org.jruby.ast.HashNode keywordArgs
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/jruby/ir/IRBuilder;
            0    6     1  keywordArgs  Lorg/jruby/ast/HashNode;
            1    6     2       kwargs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
            3    4     3         pair  Lorg/jruby/util/KeyValuePair<Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;>;
    Signature: (Lorg/jruby/ast/HashNode;)Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
    MethodParameters:
             Name  Flags
      keywordArgs  

  private void determineIfProcNew(org.jruby.ast.Node, org.jruby.RubySymbol, org.jruby.ir.instructions.CallInstr);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/RubySymbol;Lorg/jruby/ir/instructions/CallInstr;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node receiverNode
        start local 2 // org.jruby.RubySymbol name
        start local 3 // org.jruby.ir.instructions.CallInstr callInstr
         0: .line 1146
            getstatic org.jruby.util.CommonByteLists.NEW_METHOD:Lorg/jruby/util/ByteList;
            aload 2 /* name */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 1147
            aload 1 /* receiverNode */
            instanceof org.jruby.ast.ConstNode
            ifeq 3
            aload 1 /* receiverNode */
            checkcast org.jruby.ast.ConstNode
            invokevirtual org.jruby.ast.ConstNode.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            ldc "Proc"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 1148
            aload 3 /* callInstr */
            iconst_1
            invokevirtual org.jruby.ir.instructions.CallInstr.setProcNew:(Z)V
         3: .line 1150
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.ir.instructions.CallInstr callInstr
        end local 2 // org.jruby.RubySymbol name
        end local 1 // org.jruby.ast.Node receiverNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/jruby/ir/IRBuilder;
            0    4     1  receiverNode  Lorg/jruby/ast/Node;
            0    4     2          name  Lorg/jruby/RubySymbol;
            0    4     3     callInstr  Lorg/jruby/ir/instructions/CallInstr;
    MethodParameters:
              Name  Flags
      receiverNode  
      name          
      callInstr     

  private org.jruby.ast.HashNode getPossibleKeywordArgument(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ast/HashNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node argsNode
         0: .line 1158
            aload 1 /* argsNode */
            instanceof org.jruby.ast.BlockPassNode
            ifeq 2
         1: .line 1159
            aconst_null
            areturn
         2: .line 1162
      StackMap locals:
      StackMap stack:
            aload 1 /* argsNode */
            instanceof org.jruby.ast.ArrayNode
            ifeq 9
         3: .line 1163
            aload 1 /* argsNode */
            checkcast org.jruby.ast.ArrayNode
            astore 2 /* argsList */
        start local 2 // org.jruby.ast.ArrayNode argsList
         4: .line 1165
            aload 2 /* argsList */
            invokevirtual org.jruby.ast.ArrayNode.isEmpty:()Z
            ifeq 5
            aconst_null
            areturn
         5: .line 1167
      StackMap locals: org.jruby.ast.ArrayNode
      StackMap stack:
            aload 2 /* argsList */
            invokevirtual org.jruby.ast.ArrayNode.getLast:()Lorg/jruby/ast/Node;
            astore 3 /* lastNode */
        start local 3 // org.jruby.ast.Node lastNode
         6: .line 1169
            aload 3 /* lastNode */
            instanceof org.jruby.ast.HashNode
            ifeq 9
         7: .line 1170
            aload 3 /* lastNode */
            checkcast org.jruby.ast.HashNode
            astore 4 /* hash */
        start local 4 // org.jruby.ast.HashNode hash
         8: .line 1171
            aload 4 /* hash */
            invokevirtual org.jruby.ast.HashNode.hasOnlySymbolKeys:()Z
            ifeq 9
            aload 4 /* hash */
            invokevirtual org.jruby.ast.HashNode.isEmpty:()Z
            ifne 9
            aload 3 /* lastNode */
            checkcast org.jruby.ast.HashNode
            areturn
        end local 4 // org.jruby.ast.HashNode hash
        end local 3 // org.jruby.ast.Node lastNode
        end local 2 // org.jruby.ast.ArrayNode argsList
         9: .line 1175
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.jruby.ast.Node argsNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lorg/jruby/ir/IRBuilder;
            0   10     1  argsNode  Lorg/jruby/ast/Node;
            4    9     2  argsList  Lorg/jruby/ast/ArrayNode;
            6    9     3  lastNode  Lorg/jruby/ast/Node;
            8    9     4      hash  Lorg/jruby/ast/HashNode;
    MethodParameters:
          Name  Flags
      argsNode  

  public org.jruby.ir.operands.Operand buildCase(org.jruby.ast.CaseNode);
    descriptor: (Lorg/jruby/ast/CaseNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=20, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.CaseNode caseNode
         0: .line 1180
            aconst_null
            astore 2 /* seenType */
        start local 2 // org.jruby.ast.NodeType seenType
         1: .line 1181
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCases:()Lorg/jruby/ast/ListNode;
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType top int int org.jruby.ast.Node[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* aCase */
        start local 3 // org.jruby.ast.Node aCase
         3: .line 1182
            aload 3 /* aCase */
            checkcast org.jruby.ast.WhenNode
            astore 7 /* whenNode */
        start local 7 // org.jruby.ast.WhenNode whenNode
         4: .line 1183
            aload 7 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getExpressionNodes:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            astore 8 /* exprNodeType */
        start local 8 // org.jruby.ast.NodeType exprNodeType
         5: .line 1185
            aload 2 /* seenType */
            ifnonnull 8
         6: .line 1186
            aload 8 /* exprNodeType */
            astore 2 /* seenType */
         7: .line 1187
            goto 11
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ast.Node int int org.jruby.ast.Node[] org.jruby.ast.WhenNode org.jruby.ast.NodeType
      StackMap stack:
         8: aload 2 /* seenType */
            aload 8 /* exprNodeType */
            if_acmpeq 11
         9: .line 1188
            aconst_null
            astore 2 /* seenType */
        10: .line 1189
            goto 13
        end local 8 // org.jruby.ast.NodeType exprNodeType
        end local 7 // org.jruby.ast.WhenNode whenNode
        end local 3 // org.jruby.ast.Node aCase
        11: .line 1181
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType top int int org.jruby.ast.Node[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 2
        13: .line 1193
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType
      StackMap stack:
            aload 2 /* seenType */
            ifnull 16
        14: .line 1194
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 2 /* seenType */
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            tableswitch { // 40 - 40
                   40: 15
              default: 16
          }
        15: .line 1196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* caseNode */
            invokevirtual org.jruby.ir.IRBuilder.buildFixnumCase:(Lorg/jruby/ast/CaseNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        16: .line 1201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCaseNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* value */
        start local 3 // org.jruby.ir.operands.Operand value
        17: .line 1208
            aload 3 /* value */
            ifnonnull 18
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            astore 3 /* value */
        18: .line 1210
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* endLabel */
        start local 4 // org.jruby.ir.operands.Label endLabel
        19: .line 1211
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getElseNode:()Lorg/jruby/ast/Node;
            ifnull 20
            iconst_1
            goto 21
      StackMap locals: org.jruby.ir.operands.Label
      StackMap stack:
        20: iconst_0
      StackMap locals:
      StackMap stack: int
        21: istore 5 /* hasElse */
        start local 5 // boolean hasElse
        22: .line 1212
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* elseLabel */
        start local 6 // org.jruby.ir.operands.Label elseLabel
        23: .line 1213
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 7 /* result */
        start local 7 // org.jruby.ir.operands.Variable result
        24: .line 1215
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* labels */
        start local 8 // java.util.List labels
        25: .line 1216
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 9 /* bodies */
        start local 9 // java.util.Map bodies
        26: .line 1219
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCases:()Lorg/jruby/ast/ListNode;
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 41
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
        27: aload 13
            iload 11
            aaload
            astore 10 /* aCase */
        start local 10 // org.jruby.ast.Node aCase
        28: .line 1220
            aload 10 /* aCase */
            checkcast org.jruby.ast.WhenNode
            astore 14 /* whenNode */
        start local 14 // org.jruby.ast.WhenNode whenNode
        29: .line 1221
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 15 /* bodyLabel */
        start local 15 // org.jruby.ir.operands.Label bodyLabel
        30: .line 1223
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 16 /* eqqResult */
        start local 16 // org.jruby.ir.operands.Variable eqqResult
        31: .line 1224
            aload 8 /* labels */
            aload 15 /* bodyLabel */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        32: .line 1225
            aload 0 /* this */
            aload 14 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getExpressionNodes:()Lorg/jruby/ast/Node;
            aload 14 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.containsVariableAssignment:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 17 /* expression */
        start local 17 // org.jruby.ir.operands.Operand expression
        33: .line 1226
            aload 14 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getExpressionNodes:()Lorg/jruby/ast/Node;
            astore 18 /* exprNodes */
        start local 18 // org.jruby.ast.Node exprNodes
        34: .line 1227
            aload 18 /* exprNodes */
            instanceof org.jruby.ast.ArgsPushNode
            ifne 35
            aload 18 /* exprNodes */
            instanceof org.jruby.ast.SplatNode
            ifne 35
            aload 18 /* exprNodes */
            instanceof org.jruby.ast.ArgsCatNode
            ifne 35
            iconst_0
            goto 36
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map org.jruby.ast.Node int int org.jruby.ast.Node[] org.jruby.ast.WhenNode org.jruby.ir.operands.Label org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand org.jruby.ast.Node
      StackMap stack:
        35: iconst_1
      StackMap locals:
      StackMap stack: int
        36: istore 19 /* needsSplat */
        start local 19 // boolean needsSplat
        37: .line 1229
            aload 0 /* this */
            new org.jruby.ir.instructions.EQQInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 16 /* eqqResult */
            aload 17 /* expression */
            aload 3 /* value */
            iload 19 /* needsSplat */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.EQQInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;ZZ)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        38: .line 1230
            aload 0 /* this */
            aload 16 /* eqqResult */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            aload 15 /* bodyLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        39: .line 1237
            aload 9 /* bodies */
            aload 15 /* bodyLabel */
            aload 14 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 19 // boolean needsSplat
        end local 18 // org.jruby.ast.Node exprNodes
        end local 17 // org.jruby.ir.operands.Operand expression
        end local 16 // org.jruby.ir.operands.Variable eqqResult
        end local 15 // org.jruby.ir.operands.Label bodyLabel
        end local 14 // org.jruby.ast.WhenNode whenNode
        end local 10 // org.jruby.ast.Node aCase
        40: .line 1219
            iinc 11 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
        41: iload 11
            iload 12
            if_icmplt 27
        42: .line 1241
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 6 /* elseLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        43: .line 1244
            iload 5 /* hasElse */
            ifeq 46
        44: .line 1245
            aload 8 /* labels */
            aload 6 /* elseLabel */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 1246
            aload 9 /* bodies */
            aload 6 /* elseLabel */
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getElseNode:()Lorg/jruby/ast/Node;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        46: .line 1250
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map
      StackMap stack:
            aload 8 /* labels */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 53
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top java.util.Iterator
      StackMap stack:
        47: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Label
            astore 10 /* whenLabel */
        start local 10 // org.jruby.ir.operands.Label whenLabel
        48: .line 1251
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 10 /* whenLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        49: .line 1252
            aload 0 /* this */
            aload 9 /* bodies */
            aload 10 /* whenLabel */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 12 /* bodyValue */
        start local 12 // org.jruby.ir.operands.Operand bodyValue
        50: .line 1254
            aload 12 /* bodyValue */
            ifnull 53
        51: .line 1258
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 7 /* result */
            aload 12 /* bodyValue */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        52: .line 1259
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 12 // org.jruby.ir.operands.Operand bodyValue
        end local 10 // org.jruby.ir.operands.Label whenLabel
        53: .line 1250
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        54: .line 1263
            iload 5 /* hasElse */
            ifne 58
        55: .line 1264
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* elseLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        56: .line 1265
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 7 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        57: .line 1266
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        58: .line 1270
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode org.jruby.ast.NodeType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        59: .line 1272
            aload 7 /* result */
            areturn
        end local 9 // java.util.Map bodies
        end local 8 // java.util.List labels
        end local 7 // org.jruby.ir.operands.Variable result
        end local 6 // org.jruby.ir.operands.Label elseLabel
        end local 5 // boolean hasElse
        end local 4 // org.jruby.ir.operands.Label endLabel
        end local 3 // org.jruby.ir.operands.Operand value
        end local 2 // org.jruby.ast.NodeType seenType
        end local 1 // org.jruby.ast.CaseNode caseNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   60     0          this  Lorg/jruby/ir/IRBuilder;
            0   60     1      caseNode  Lorg/jruby/ast/CaseNode;
            1   60     2      seenType  Lorg/jruby/ast/NodeType;
            3   11     3         aCase  Lorg/jruby/ast/Node;
            4   11     7      whenNode  Lorg/jruby/ast/WhenNode;
            5   11     8  exprNodeType  Lorg/jruby/ast/NodeType;
           17   60     3         value  Lorg/jruby/ir/operands/Operand;
           19   60     4      endLabel  Lorg/jruby/ir/operands/Label;
           22   60     5       hasElse  Z
           23   60     6     elseLabel  Lorg/jruby/ir/operands/Label;
           24   60     7        result  Lorg/jruby/ir/operands/Variable;
           25   60     8        labels  Ljava/util/List<Lorg/jruby/ir/operands/Label;>;
           26   60     9        bodies  Ljava/util/Map<Lorg/jruby/ir/operands/Label;Lorg/jruby/ast/Node;>;
           28   40    10         aCase  Lorg/jruby/ast/Node;
           29   40    14      whenNode  Lorg/jruby/ast/WhenNode;
           30   40    15     bodyLabel  Lorg/jruby/ir/operands/Label;
           31   40    16     eqqResult  Lorg/jruby/ir/operands/Variable;
           33   40    17    expression  Lorg/jruby/ir/operands/Operand;
           34   40    18     exprNodes  Lorg/jruby/ast/Node;
           37   40    19    needsSplat  Z
           48   53    10     whenLabel  Lorg/jruby/ir/operands/Label;
           50   53    12     bodyValue  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      caseNode  

  private org.jruby.ir.operands.Operand buildFixnumCase(org.jruby.ast.CaseNode);
    descriptor: (Lorg/jruby/ast/CaseNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=24, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.CaseNode caseNode
         0: .line 1276
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* jumpTable */
        start local 2 // java.util.Map jumpTable
         1: .line 1277
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* nodeBodies */
        start local 3 // java.util.Map nodeBodies
         2: .line 1280
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCases:()Lorg/jruby/ast/ListNode;
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 13
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
         3: aload 7
            iload 5
            aaload
            astore 4 /* aCase */
        start local 4 // org.jruby.ast.Node aCase
         4: .line 1281
            aload 4 /* aCase */
            checkcast org.jruby.ast.WhenNode
            astore 8 /* whenNode */
        start local 8 // org.jruby.ast.WhenNode whenNode
         5: .line 1282
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 9 /* bodyLabel */
        start local 9 // org.jruby.ir.operands.Label bodyLabel
         6: .line 1284
            aload 8 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getExpressionNodes:()Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.FixnumNode
            astore 10 /* expr */
        start local 10 // org.jruby.ast.FixnumNode expr
         7: .line 1285
            aload 10 /* expr */
            invokevirtual org.jruby.ast.FixnumNode.getValue:()J
            lstore 11 /* exprLong */
        start local 11 // long exprLong
         8: .line 1286
            lload 11 /* exprLong */
            ldc 2147483647
            lcmp
            ifle 9
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "optimized fixnum case has long-ranged when at "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 1288
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map org.jruby.ast.Node int int org.jruby.ast.Node[] org.jruby.ast.WhenNode org.jruby.ir.operands.Label org.jruby.ast.FixnumNode long
      StackMap stack:
            aload 2 /* jumpTable */
            lload 11 /* exprLong */
            l2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 11
        10: .line 1289
            aload 2 /* jumpTable */
            lload 11 /* exprLong */
            l2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 9 /* bodyLabel */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 1292
      StackMap locals:
      StackMap stack:
            aload 3 /* nodeBodies */
            aload 8 /* whenNode */
            aload 9 /* bodyLabel */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 11 // long exprLong
        end local 10 // org.jruby.ast.FixnumNode expr
        end local 9 // org.jruby.ir.operands.Label bodyLabel
        end local 8 // org.jruby.ast.WhenNode whenNode
        end local 4 // org.jruby.ast.Node aCase
        12: .line 1280
            iinc 5 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
        13: iload 5
            iload 6
            if_icmplt 3
        14: .line 1296
            aload 2 /* jumpTable */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            aload 2 /* jumpTable */
            invokeinterface java.util.Map.size:()I
            anewarray java.util.Map$Entry
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.util.Map$Entry[]
            astore 4 /* jumpEntries */
        start local 4 // java.util.Map$Entry[] jumpEntries
        15: .line 1297
            aload 4 /* jumpEntries */
            new org.jruby.ir.IRBuilder$2
            dup
            aload 0 /* this */
            invokespecial org.jruby.ir.IRBuilder$2.<init>:(Lorg/jruby/ir/IRBuilder;)V
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
        16: .line 1305
            aload 2 /* jumpTable */
            invokeinterface java.util.Map.size:()I
            newarray 10
            astore 5 /* jumps */
        start local 5 // int[] jumps
        17: .line 1306
            aload 5 /* jumps */
            arraylength
            anewarray org.jruby.ir.operands.Label
            astore 6 /* targets */
        start local 6 // org.jruby.ir.operands.Label[] targets
        18: .line 1307
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        19: .line 1308
            aload 4 /* jumpEntries */
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 25
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int top int int java.util.Map$Entry[]
      StackMap stack:
        20: aload 11
            iload 9
            aaload
            astore 8 /* jumpEntry */
        start local 8 // java.util.Map$Entry jumpEntry
        21: .line 1309
            aload 5 /* jumps */
            iload 7 /* i */
            aload 8 /* jumpEntry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iastore
        22: .line 1310
            aload 6 /* targets */
            iload 7 /* i */
            aload 8 /* jumpEntry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Label
            aastore
        23: .line 1311
            iinc 7 /* i */ 1
        end local 8 // java.util.Map$Entry jumpEntry
        24: .line 1308
            iinc 9 1
      StackMap locals:
      StackMap stack:
        25: iload 9
            iload 10
            if_icmplt 20
        26: .line 1315
            aload 0 /* this */
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCaseNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 8 /* value */
        start local 8 // org.jruby.ir.operands.Operand value
        27: .line 1317
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 9 /* eqqPath */
        start local 9 // org.jruby.ir.operands.Label eqqPath
        28: .line 1318
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 10 /* endLabel */
        start local 10 // org.jruby.ir.operands.Label endLabel
        29: .line 1319
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getElseNode:()Lorg/jruby/ast/Node;
            ifnull 30
            iconst_1
            goto 31
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label
      StackMap stack:
        30: iconst_0
      StackMap locals:
      StackMap stack: int
        31: istore 11 /* hasElse */
        start local 11 // boolean hasElse
        32: .line 1320
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 12 /* elseLabel */
        start local 12 // org.jruby.ir.operands.Label elseLabel
        33: .line 1321
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 13 /* result */
        start local 13 // org.jruby.ir.operands.Variable result
        34: .line 1324
            aload 0 /* this */
            new org.jruby.ir.instructions.BSwitchInstr
            dup
            aload 5 /* jumps */
            aload 8 /* value */
            aload 9 /* eqqPath */
            aload 6 /* targets */
            aload 12 /* elseLabel */
            invokespecial org.jruby.ir.instructions.BSwitchInstr.<init>:([ILorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;[Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        35: .line 1325
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 9 /* eqqPath */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        36: .line 1327
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 14 /* labels */
        start local 14 // java.util.List labels
        37: .line 1328
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 15 /* bodies */
        start local 15 // java.util.Map bodies
        38: .line 1331
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getCases:()Lorg/jruby/ast/ListNode;
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 19
            arraylength
            istore 18
            iconst_0
            istore 17
            goto 52
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
        39: aload 19
            iload 17
            aaload
            astore 16 /* aCase */
        start local 16 // org.jruby.ast.Node aCase
        40: .line 1332
            aload 16 /* aCase */
            checkcast org.jruby.ast.WhenNode
            astore 20 /* whenNode */
        start local 20 // org.jruby.ast.WhenNode whenNode
        41: .line 1333
            aload 3 /* nodeBodies */
            aload 20 /* whenNode */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Label
            astore 21 /* bodyLabel */
        start local 21 // org.jruby.ir.operands.Label bodyLabel
        42: .line 1334
            aload 21 /* bodyLabel */
            ifnonnull 43
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 21 /* bodyLabel */
        43: .line 1336
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map org.jruby.ast.Node int int org.jruby.ast.Node[] org.jruby.ast.WhenNode org.jruby.ir.operands.Label
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 22 /* eqqResult */
        start local 22 // org.jruby.ir.operands.Variable eqqResult
        44: .line 1337
            aload 14 /* labels */
            aload 21 /* bodyLabel */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 1338
            aload 0 /* this */
            aload 20 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getExpressionNodes:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 23 /* expression */
        start local 23 // org.jruby.ir.operands.Operand expression
        46: .line 1341
            aload 23 /* expression */
            instanceof org.jruby.ir.operands.StringLiteral
            ifeq 48
        47: .line 1342
            aload 23 /* expression */
            checkcast org.jruby.ir.operands.StringLiteral
            getfield org.jruby.ir.operands.StringLiteral.frozenString:Lorg/jruby/ir/operands/FrozenString;
            astore 23 /* expression */
        48: .line 1345
      StackMap locals: org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.EQQInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 22 /* eqqResult */
            aload 23 /* expression */
            aload 8 /* value */
            iconst_0
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.EQQInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;ZZ)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        49: .line 1346
            aload 0 /* this */
            aload 22 /* eqqResult */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            aload 21 /* bodyLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        50: .line 1353
            aload 15 /* bodies */
            aload 21 /* bodyLabel */
            aload 20 /* whenNode */
            invokevirtual org.jruby.ast.WhenNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 23 // org.jruby.ir.operands.Operand expression
        end local 22 // org.jruby.ir.operands.Variable eqqResult
        end local 21 // org.jruby.ir.operands.Label bodyLabel
        end local 20 // org.jruby.ast.WhenNode whenNode
        end local 16 // org.jruby.ast.Node aCase
        51: .line 1331
            iinc 17 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top int int org.jruby.ast.Node[]
      StackMap stack:
        52: iload 17
            iload 18
            if_icmplt 39
        53: .line 1357
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 12 /* elseLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        54: .line 1360
            iload 11 /* hasElse */
            ifeq 57
        55: .line 1361
            aload 14 /* labels */
            aload 12 /* elseLabel */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        56: .line 1362
            aload 15 /* bodies */
            aload 12 /* elseLabel */
            aload 1 /* caseNode */
            invokevirtual org.jruby.ast.CaseNode.getElseNode:()Lorg/jruby/ast/Node;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 1366
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map
      StackMap stack:
            aload 14 /* labels */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 64
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map top java.util.Iterator
      StackMap stack:
        58: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Label
            astore 16 /* whenLabel */
        start local 16 // org.jruby.ir.operands.Label whenLabel
        59: .line 1367
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 16 /* whenLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        60: .line 1368
            aload 0 /* this */
            aload 15 /* bodies */
            aload 16 /* whenLabel */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 18 /* bodyValue */
        start local 18 // org.jruby.ir.operands.Operand bodyValue
        61: .line 1370
            aload 18 /* bodyValue */
            ifnull 64
        62: .line 1374
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 13 /* result */
            aload 18 /* bodyValue */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        63: .line 1375
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 10 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 18 // org.jruby.ir.operands.Operand bodyValue
        end local 16 // org.jruby.ir.operands.Label whenLabel
        64: .line 1366
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 58
        65: .line 1379
            iload 11 /* hasElse */
            ifne 69
        66: .line 1380
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 12 /* elseLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        67: .line 1381
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 13 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        68: .line 1382
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 10 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        69: .line 1386
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.CaseNode java.util.Map java.util.Map java.util.Map$Entry[] int[] org.jruby.ir.operands.Label[] int org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label int org.jruby.ir.operands.Label org.jruby.ir.operands.Variable java.util.List java.util.Map
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 10 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        70: .line 1388
            aload 13 /* result */
            areturn
        end local 15 // java.util.Map bodies
        end local 14 // java.util.List labels
        end local 13 // org.jruby.ir.operands.Variable result
        end local 12 // org.jruby.ir.operands.Label elseLabel
        end local 11 // boolean hasElse
        end local 10 // org.jruby.ir.operands.Label endLabel
        end local 9 // org.jruby.ir.operands.Label eqqPath
        end local 8 // org.jruby.ir.operands.Operand value
        end local 7 // int i
        end local 6 // org.jruby.ir.operands.Label[] targets
        end local 5 // int[] jumps
        end local 4 // java.util.Map$Entry[] jumpEntries
        end local 3 // java.util.Map nodeBodies
        end local 2 // java.util.Map jumpTable
        end local 1 // org.jruby.ast.CaseNode caseNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   71     0         this  Lorg/jruby/ir/IRBuilder;
            0   71     1     caseNode  Lorg/jruby/ast/CaseNode;
            1   71     2    jumpTable  Ljava/util/Map<Ljava/lang/Integer;Lorg/jruby/ir/operands/Label;>;
            2   71     3   nodeBodies  Ljava/util/Map<Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Label;>;
            4   12     4        aCase  Lorg/jruby/ast/Node;
            5   12     8     whenNode  Lorg/jruby/ast/WhenNode;
            6   12     9    bodyLabel  Lorg/jruby/ir/operands/Label;
            7   12    10         expr  Lorg/jruby/ast/FixnumNode;
            8   12    11     exprLong  J
           15   71     4  jumpEntries  [Ljava/util/Map$Entry;
           17   71     5        jumps  [I
           18   71     6      targets  [Lorg/jruby/ir/operands/Label;
           19   71     7            i  I
           21   24     8    jumpEntry  Ljava/util/Map$Entry<Ljava/lang/Integer;Lorg/jruby/ir/operands/Label;>;
           27   71     8        value  Lorg/jruby/ir/operands/Operand;
           28   71     9      eqqPath  Lorg/jruby/ir/operands/Label;
           29   71    10     endLabel  Lorg/jruby/ir/operands/Label;
           32   71    11      hasElse  Z
           33   71    12    elseLabel  Lorg/jruby/ir/operands/Label;
           34   71    13       result  Lorg/jruby/ir/operands/Variable;
           37   71    14       labels  Ljava/util/List<Lorg/jruby/ir/operands/Label;>;
           38   71    15       bodies  Ljava/util/Map<Lorg/jruby/ir/operands/Label;Lorg/jruby/ast/Node;>;
           40   51    16        aCase  Lorg/jruby/ast/Node;
           41   51    20     whenNode  Lorg/jruby/ast/WhenNode;
           42   51    21    bodyLabel  Lorg/jruby/ir/operands/Label;
           44   51    22    eqqResult  Lorg/jruby/ir/operands/Variable;
           46   51    23   expression  Lorg/jruby/ir/operands/Operand;
           59   64    16    whenLabel  Lorg/jruby/ir/operands/Label;
           61   64    18    bodyValue  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      caseNode  

  public org.jruby.ir.operands.Operand buildClass(org.jruby.ast.ClassNode);
    descriptor: (Lorg/jruby/ast/ClassNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=10, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ClassNode classNode
         0: .line 1395
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.executesOnce:Z
            istore 2 /* executesOnce */
        start local 2 // boolean executesOnce
         1: .line 1396
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getSuperNode:()Lorg/jruby/ast/Node;
            astore 3 /* superNode */
        start local 3 // org.jruby.ast.Node superNode
         2: .line 1397
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getCPath:()Lorg/jruby/ast/Colon3Node;
            astore 4 /* cpath */
        start local 4 // org.jruby.ast.Colon3Node cpath
         3: .line 1398
            aload 3 /* superNode */
            ifnonnull 4
            aconst_null
            goto 5
      StackMap locals: int org.jruby.ast.Node org.jruby.ast.Colon3Node
      StackMap stack:
         4: aload 0 /* this */
            aload 3 /* superNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         5: astore 5 /* superClass */
        start local 5 // org.jruby.ir.operands.Operand superClass
         6: .line 1399
            aload 4 /* cpath */
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            astore 6 /* className */
        start local 6 // org.jruby.util.ByteList className
         7: .line 1400
            aload 0 /* this */
            aload 4 /* cpath */
            invokevirtual org.jruby.ir.IRBuilder.getContainerFromCPath:(Lorg/jruby/ast/Colon3Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* container */
        start local 7 // org.jruby.ir.operands.Operand container
         8: .line 1404
            new org.jruby.ir.IRClassBody
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 6 /* className */
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getLine:()I
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getScope:()Lorg/jruby/parser/StaticScope;
            iload 2 /* executesOnce */
            invokespecial org.jruby.ir.IRClassBody.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/util/ByteList;ILorg/jruby/parser/StaticScope;Z)V
            astore 8 /* body */
        start local 8 // org.jruby.ir.IRClassBody body
         9: .line 1405
            aload 0 /* this */
            new org.jruby.ir.instructions.DefineClassInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 8 /* body */
            aload 7 /* container */
            aload 5 /* superClass */
            invokespecial org.jruby.ir.instructions.DefineClassInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRClassBody;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 9 /* bodyResult */
        start local 9 // org.jruby.ir.operands.Variable bodyResult
        10: .line 1407
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 8 /* body */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getBodyNode:()Lorg/jruby/ast/Node;
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getLine:()I
            aload 1 /* classNode */
            invokevirtual org.jruby.ast.ClassNode.getEndLine:()I
            invokevirtual org.jruby.ir.IRBuilder.buildModuleOrClassBody:(Lorg/jruby/ast/Node;II)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
        11: .line 1408
            aload 9 /* bodyResult */
            areturn
        end local 9 // org.jruby.ir.operands.Variable bodyResult
        end local 8 // org.jruby.ir.IRClassBody body
        end local 7 // org.jruby.ir.operands.Operand container
        end local 6 // org.jruby.util.ByteList className
        end local 5 // org.jruby.ir.operands.Operand superClass
        end local 4 // org.jruby.ast.Colon3Node cpath
        end local 3 // org.jruby.ast.Node superNode
        end local 2 // boolean executesOnce
        end local 1 // org.jruby.ast.ClassNode classNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Lorg/jruby/ir/IRBuilder;
            0   12     1     classNode  Lorg/jruby/ast/ClassNode;
            1   12     2  executesOnce  Z
            2   12     3     superNode  Lorg/jruby/ast/Node;
            3   12     4         cpath  Lorg/jruby/ast/Colon3Node;
            6   12     5    superClass  Lorg/jruby/ir/operands/Operand;
            7   12     6     className  Lorg/jruby/util/ByteList;
            8   12     7     container  Lorg/jruby/ir/operands/Operand;
            9   12     8          body  Lorg/jruby/ir/IRClassBody;
           10   12     9    bodyResult  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
           Name  Flags
      classNode  

  public org.jruby.ir.operands.Operand buildSClass(org.jruby.ast.SClassNode);
    descriptor: (Lorg/jruby/ast/SClassNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.SClassNode sclassNode
         0: .line 1415
            aload 0 /* this */
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* receiver */
        start local 2 // org.jruby.ir.operands.Operand receiver
         1: .line 1417
            new org.jruby.ir.IRMetaClassBody
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getMetaClassName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getLine:()I
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getScope:()Lorg/jruby/parser/StaticScope;
            invokespecial org.jruby.ir.IRMetaClassBody.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/util/ByteList;ILorg/jruby/parser/StaticScope;)V
            astore 3 /* body */
        start local 3 // org.jruby.ir.IRModuleBody body
         2: .line 1418
            aload 0 /* this */
            new org.jruby.ir.instructions.DefineMetaClassInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 2 /* receiver */
            aload 3 /* body */
            invokespecial org.jruby.ir.instructions.DefineMetaClassInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/IRModuleBody;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* sClassVar */
        start local 4 // org.jruby.ir.operands.Variable sClassVar
         3: .line 1421
            aload 0 /* this */
            new org.jruby.ir.instructions.ProcessModuleBodyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 4 /* sClassVar */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            invokespecial org.jruby.ir.instructions.ProcessModuleBodyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 5 /* processBodyResult */
        start local 5 // org.jruby.ir.operands.Variable processBodyResult
         4: .line 1422
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 3 /* body */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getBodyNode:()Lorg/jruby/ast/Node;
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getLine:()I
            aload 1 /* sclassNode */
            invokevirtual org.jruby.ast.SClassNode.getEndLine:()I
            invokevirtual org.jruby.ir.IRBuilder.buildModuleOrClassBody:(Lorg/jruby/ast/Node;II)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         5: .line 1423
            aload 5 /* processBodyResult */
            areturn
        end local 5 // org.jruby.ir.operands.Variable processBodyResult
        end local 4 // org.jruby.ir.operands.Variable sClassVar
        end local 3 // org.jruby.ir.IRModuleBody body
        end local 2 // org.jruby.ir.operands.Operand receiver
        end local 1 // org.jruby.ast.SClassNode sclassNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/jruby/ir/IRBuilder;
            0    6     1         sclassNode  Lorg/jruby/ast/SClassNode;
            1    6     2           receiver  Lorg/jruby/ir/operands/Operand;
            2    6     3               body  Lorg/jruby/ir/IRModuleBody;
            3    6     4          sClassVar  Lorg/jruby/ir/operands/Variable;
            4    6     5  processBodyResult  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
            Name  Flags
      sclassNode  

  public org.jruby.ir.operands.Operand buildClassVar(org.jruby.ast.ClassVarNode);
    descriptor: (Lorg/jruby/ast/ClassVarNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ClassVarNode node
         0: .line 1428
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* ret */
        start local 2 // org.jruby.ir.operands.Variable ret
         1: .line 1429
            aload 0 /* this */
            new org.jruby.ir.instructions.GetClassVariableInstr
            dup
            aload 2 /* ret */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.classVarDefinitionContainer:()Lorg/jruby/ir/operands/Operand;
            aload 1 /* node */
            invokevirtual org.jruby.ast.ClassVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.GetClassVariableInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 1430
            aload 2 /* ret */
            areturn
        end local 2 // org.jruby.ir.operands.Variable ret
        end local 1 // org.jruby.ast.ClassVarNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;
            0    3     1  node  Lorg/jruby/ast/ClassVarNode;
            1    3     2   ret  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Variable addResultInstr(org.jruby.ir.instructions.ResultInstr);
    descriptor: (Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.instructions.ResultInstr instr
         0: .line 1435
            aload 0 /* this */
            aload 1 /* instr */
            checkcast org.jruby.ir.instructions.Instr
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 1437
            aload 1 /* instr */
            invokeinterface org.jruby.ir.instructions.ResultInstr.getResult:()Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ir.instructions.ResultInstr instr
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1  instr  Lorg/jruby/ir/instructions/ResultInstr;
    MethodParameters:
       Name  Flags
      instr  

  public org.jruby.ir.operands.Operand buildClassVarAsgn(org.jruby.ast.ClassVarAsgnNode);
    descriptor: (Lorg/jruby/ast/ClassVarAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ClassVarAsgnNode classVarAsgnNode
         0: .line 1446
            aload 0 /* this */
            aload 1 /* classVarAsgnNode */
            invokevirtual org.jruby.ast.ClassVarAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* val */
        start local 2 // org.jruby.ir.operands.Operand val
         1: .line 1447
            aload 0 /* this */
            new org.jruby.ir.instructions.PutClassVariableInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.classVarDefinitionContainer:()Lorg/jruby/ir/operands/Operand;
            aload 1 /* classVarAsgnNode */
            invokevirtual org.jruby.ast.ClassVarAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* val */
            invokespecial org.jruby.ir.instructions.PutClassVariableInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 1448
            aload 2 /* val */
            areturn
        end local 2 // org.jruby.ir.operands.Operand val
        end local 1 // org.jruby.ast.ClassVarAsgnNode classVarAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/jruby/ir/IRBuilder;
            0    3     1  classVarAsgnNode  Lorg/jruby/ast/ClassVarAsgnNode;
            1    3     2               val  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                  Name  Flags
      classVarAsgnNode  final

  public org.jruby.ir.operands.Operand classVarDeclarationContainer();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 1453
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ir.IRBuilder.classVarContainer:(Z)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.ir.operands.Operand classVarDefinitionContainer();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 1457
            aload 0 /* this */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.classVarContainer:(Z)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand classVarContainer(boolean);
    descriptor: (Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // boolean declContext
         0: .line 1471
            iconst_0
            istore 2 /* n */
        start local 2 // int n
         1: .line 1472
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            astore 3 /* cvarScope */
        start local 3 // org.jruby.ir.IRScope cvarScope
         2: .line 1473
            goto 6
         3: .line 1475
      StackMap locals: int org.jruby.ir.IRScope
      StackMap stack:
            aload 3 /* cvarScope */
            instanceof org.jruby.ir.IRFor
            ifne 5
         4: .line 1476
            iinc 2 /* n */ 1
         5: .line 1478
      StackMap locals:
      StackMap stack:
            aload 3 /* cvarScope */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 3 /* cvarScope */
         6: .line 1473
      StackMap locals:
      StackMap stack:
            aload 3 /* cvarScope */
            ifnull 7
            aload 3 /* cvarScope */
            instanceof org.jruby.ir.IREvalScript
            ifne 7
            aload 3 /* cvarScope */
            invokevirtual org.jruby.ir.IRScope.isNonSingletonClassBody:()Z
            ifeq 3
         7: .line 1481
      StackMap locals:
      StackMap stack:
            aload 3 /* cvarScope */
            ifnull 9
            aload 3 /* cvarScope */
            invokevirtual org.jruby.ir.IRScope.isNonSingletonClassBody:()Z
            ifeq 9
         8: .line 1482
            iload 2 /* n */
            invokestatic org.jruby.ir.operands.ScopeModule.ModuleFor:(I)Lorg/jruby/ir/operands/ScopeModule;
            areturn
         9: .line 1484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        10: new org.jruby.ir.instructions.GetClassVarContainerModuleInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        11: .line 1485
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            iload 1 /* declContext */
            ifeq 12
            aconst_null
            goto 13
      StackMap locals: org.jruby.ir.IRBuilder int int org.jruby.ir.IRScope
      StackMap stack: org.jruby.ir.IRBuilder new 10 new 10 org.jruby.ir.operands.TemporaryVariable org.jruby.ir.operands.Variable
        12: aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
      StackMap locals: org.jruby.ir.IRBuilder int int org.jruby.ir.IRScope
      StackMap stack: org.jruby.ir.IRBuilder new 10 new 10 org.jruby.ir.operands.TemporaryVariable org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable
        13: invokespecial org.jruby.ir.instructions.GetClassVarContainerModuleInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Variable;)V
        14: .line 1484
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 3 // org.jruby.ir.IRScope cvarScope
        end local 2 // int n
        end local 1 // boolean declContext
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/jruby/ir/IRBuilder;
            0   15     1  declContext  Z
            1   15     2            n  I
            2   15     3    cvarScope  Lorg/jruby/ir/IRScope;
    MethodParameters:
             Name  Flags
      declContext  

  public org.jruby.ir.operands.Operand buildConstDecl(org.jruby.ast.ConstDeclNode);
    descriptor: (Lorg/jruby/ast/ConstDeclNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ConstDeclNode node
         0: .line 1490
            aload 0 /* this */
            aload 1 /* node */
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.ConstDeclNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            invokevirtual org.jruby.ir.IRBuilder.buildConstDeclAssignment:(Lorg/jruby/ast/ConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.ConstDeclNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/ConstDeclNode;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Operand findContainerModule();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 1494
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestModuleReferencingScopeDepth:()I
            istore 1 /* nearestModuleBodyDepth */
        start local 1 // int nearestModuleBodyDepth
         1: .line 1495
            iload 1 /* nearestModuleBodyDepth */
            iconst_m1
            if_icmpne 2
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iload 1 /* nearestModuleBodyDepth */
            invokestatic org.jruby.ir.operands.ScopeModule.ModuleFor:(I)Lorg/jruby/ir/operands/ScopeModule;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         3: areturn
        end local 1 // int nearestModuleBodyDepth
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    4     0                    this  Lorg/jruby/ir/IRBuilder;
            1    4     1  nearestModuleBodyDepth  I

  private org.jruby.ir.operands.Operand startingSearchScope();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 1499
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestModuleReferencingScopeDepth:()I
            istore 1 /* nearestModuleBodyDepth */
        start local 1 // int nearestModuleBodyDepth
         1: .line 1500
            iload 1 /* nearestModuleBodyDepth */
            iconst_m1
            if_icmpne 2
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: getstatic org.jruby.ir.operands.CurrentScope.INSTANCE:Lorg/jruby/ir/operands/CurrentScope;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         3: areturn
        end local 1 // int nearestModuleBodyDepth
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    4     0                    this  Lorg/jruby/ir/IRBuilder;
            1    4     1  nearestModuleBodyDepth  I

  public org.jruby.ir.operands.Operand buildConstDeclAssignment(org.jruby.ast.ConstDeclNode, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/ConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ConstDeclNode constDeclNode
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 1504
            aload 1 /* constDeclNode */
            invokevirtual org.jruby.ast.ConstDeclNode.getConstNode:()Lorg/jruby/ast/Node;
            astore 3 /* constNode */
        start local 3 // org.jruby.ast.Node constNode
         1: .line 1506
            aload 3 /* constNode */
            ifnonnull 3
         2: .line 1507
            aload 0 /* this */
            aload 1 /* constDeclNode */
            invokevirtual org.jruby.ast.ConstDeclNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* value */
            invokevirtual org.jruby.ir.IRBuilder.putConstant:(Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
         3: .line 1508
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 3 /* constNode */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            getstatic org.jruby.ast.NodeType.COLON2NODE:Lorg/jruby/ast/NodeType;
            if_acmpne 5
         4: .line 1509
            aload 0 /* this */
            aload 3 /* constNode */
            checkcast org.jruby.ast.Colon2Node
            aload 2 /* value */
            invokevirtual org.jruby.ir.IRBuilder.putConstant:(Lorg/jruby/ast/Colon2Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
         5: .line 1511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* constNode */
            checkcast org.jruby.ast.Colon3Node
            aload 2 /* value */
            invokevirtual org.jruby.ir.IRBuilder.putConstant:(Lorg/jruby/ast/Colon3Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 3 // org.jruby.ast.Node constNode
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.ConstDeclNode constDeclNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/jruby/ir/IRBuilder;
            0    6     1  constDeclNode  Lorg/jruby/ast/ConstDeclNode;
            0    6     2          value  Lorg/jruby/ir/operands/Operand;
            1    6     3      constNode  Lorg/jruby/ast/Node;
    MethodParameters:
               Name  Flags
      constDeclNode  
      value          

  private org.jruby.ir.operands.Operand putConstant(org.jruby.RubySymbol, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 1516
            aload 0 /* this */
            new org.jruby.ir.instructions.PutConstInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.findContainerModule:()Lorg/jruby/ir/operands/Operand;
            aload 1 /* name */
            aload 2 /* value */
            invokespecial org.jruby.ir.instructions.PutConstInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 1518
            aload 2 /* value */
            areturn
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1   name  Lorg/jruby/RubySymbol;
            0    2     2  value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      name   
      value  

  private org.jruby.ir.operands.Operand putConstant(org.jruby.ast.Colon3Node, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/Colon3Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Colon3Node node
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 1522
            aload 0 /* this */
            new org.jruby.ir.instructions.PutConstInstr
            dup
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
            aload 1 /* node */
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* value */
            invokespecial org.jruby.ir.instructions.PutConstInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 1524
            aload 2 /* value */
            areturn
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.Colon3Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1   node  Lorg/jruby/ast/Colon3Node;
            0    2     2  value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      node   
      value  

  private org.jruby.ir.operands.Operand putConstant(org.jruby.ast.Colon2Node, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/Colon2Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Colon2Node node
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 1528
            aload 0 /* this */
            new org.jruby.ir.instructions.PutConstInstr
            dup
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.Colon2Node.getLeftNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 1 /* node */
            invokevirtual org.jruby.ast.Colon2Node.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* value */
            invokespecial org.jruby.ir.instructions.PutConstInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 1530
            aload 2 /* value */
            areturn
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.Colon2Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1   node  Lorg/jruby/ast/Colon2Node;
            0    2     2  value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      node   
      value  

  private org.jruby.ir.operands.Operand putConstantAssignment(org.jruby.ast.OpAsgnConstDeclNode, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/OpAsgnConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpAsgnConstDeclNode node
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 1534
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            astore 3 /* constNode */
        start local 3 // org.jruby.ast.Node constNode
         1: .line 1536
            aload 3 /* constNode */
            instanceof org.jruby.ast.Colon2Node
            ifeq 2
            aload 0 /* this */
            aload 3 /* constNode */
            checkcast org.jruby.ast.Colon2Node
            aload 2 /* value */
            invokevirtual org.jruby.ir.IRBuilder.putConstant:(Lorg/jruby/ast/Colon2Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
         2: .line 1538
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
            aload 3 /* constNode */
            checkcast org.jruby.ast.Colon3Node
            aload 2 /* value */
            invokevirtual org.jruby.ir.IRBuilder.putConstant:(Lorg/jruby/ast/Colon3Node;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 3 // org.jruby.ast.Node constNode
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.OpAsgnConstDeclNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/ir/IRBuilder;
            0    3     1       node  Lorg/jruby/ast/OpAsgnConstDeclNode;
            0    3     2      value  Lorg/jruby/ir/operands/Operand;
            1    3     3  constNode  Lorg/jruby/ast/Node;
    MethodParameters:
       Name  Flags
      node   
      value  

  private org.jruby.ir.operands.Operand searchModuleForConst(org.jruby.ir.operands.Operand, org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand startingModule
        start local 2 // org.jruby.RubySymbol name
         0: .line 1542
            aload 0 /* this */
            new org.jruby.ir.instructions.SearchModuleForConstInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 1 /* startingModule */
            aload 2 /* name */
            iconst_1
            invokespecial org.jruby.ir.instructions.SearchModuleForConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.RubySymbol name
        end local 1 // org.jruby.ir.operands.Operand startingModule
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/jruby/ir/IRBuilder;
            0    1     1  startingModule  Lorg/jruby/ir/operands/Operand;
            0    1     2            name  Lorg/jruby/RubySymbol;
    MethodParameters:
                Name  Flags
      startingModule  
      name            

  private org.jruby.ir.operands.Operand searchConst(org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
         0: .line 1546
            aload 0 /* this */
            new org.jruby.ir.instructions.SearchConstInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 1 /* name */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.startingSearchScope:()Lorg/jruby/ir/operands/Operand;
            iconst_0
            invokespecial org.jruby.ir.instructions.SearchConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  name  Lorg/jruby/RubySymbol;
    MethodParameters:
      Name  Flags
      name  

  public org.jruby.ir.operands.Operand buildColon2(org.jruby.ast.Colon2Node);
    descriptor: (Lorg/jruby/ast/Colon2Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Colon2Node colon2
         0: .line 1550
            aload 1 /* colon2 */
            invokevirtual org.jruby.ast.Colon2Node.getLeftNode:()Lorg/jruby/ast/Node;
            astore 2 /* lhs */
        start local 2 // org.jruby.ast.Node lhs
         1: .line 1553
            aload 2 /* lhs */
            ifnonnull 2
            aload 0 /* this */
            aload 1 /* colon2 */
            invokevirtual org.jruby.ast.Colon2Node.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.ir.IRBuilder.searchConst:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
            areturn
         2: .line 1556
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* lhs */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 1 /* colon2 */
            invokevirtual org.jruby.ast.Colon2Node.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.ir.IRBuilder.searchModuleForConst:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 2 // org.jruby.ast.Node lhs
        end local 1 // org.jruby.ast.Colon2Node colon2
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ir/IRBuilder;
            0    3     1  colon2  Lorg/jruby/ast/Colon2Node;
            1    3     2     lhs  Lorg/jruby/ast/Node;
    MethodParameters:
        Name  Flags
      colon2  final

  public org.jruby.ir.operands.Operand buildColon3(org.jruby.ast.Colon3Node);
    descriptor: (Lorg/jruby/ast/Colon3Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Colon3Node node
         0: .line 1560
            aload 0 /* this */
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
            aload 1 /* node */
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.ir.IRBuilder.searchModuleForConst:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.Colon3Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/Colon3Node;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildComplex(org.jruby.ast.ComplexNode);
    descriptor: (Lorg/jruby/ast/ComplexNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ComplexNode node
         0: .line 1564
            new org.jruby.ir.operands.Complex
            dup
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.ComplexNode.getNumber:()Lorg/jruby/ast/NumericNode;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            checkcast org.jruby.ir.operands.ImmutableLiteral
            invokespecial org.jruby.ir.operands.Complex.<init>:(Lorg/jruby/ir/operands/ImmutableLiteral;)V
            areturn
        end local 1 // org.jruby.ast.ComplexNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/ComplexNode;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Operand protectCodeWithRescue(org.jruby.ir.IRBuilder$CodeBlock, org.jruby.ir.IRBuilder$CodeBlock);
    descriptor: (Lorg/jruby/ir/IRBuilder$CodeBlock;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
        start local 2 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
         0: .line 1575
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* rv */
        start local 3 // org.jruby.ir.operands.Variable rv
         1: .line 1576
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* rBeginLabel */
        start local 4 // org.jruby.ir.operands.Label rBeginLabel
         2: .line 1577
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 5 /* rEndLabel */
        start local 5 // org.jruby.ir.operands.Label rEndLabel
         3: .line 1578
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* rescueLabel */
        start local 6 // org.jruby.ir.operands.Label rescueLabel
         4: .line 1581
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* rBeginLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 1582
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 6 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 1583
            aload 1 /* protectedCode */
            invokeinterface org.jruby.ir.IRBuilder$CodeBlock.run:()Lorg/jruby/ir/operands/Operand;
            astore 7 /* v1 */
        start local 7 // java.lang.Object v1
         7: .line 1584
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 3 /* rv */
            aload 7 /* v1 */
            checkcast org.jruby.ir.operands.Operand
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 1585
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 5 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 1586
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 1601
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 8 /* caughtLabel */
        start local 8 // org.jruby.ir.operands.Label caughtLabel
        11: .line 1602
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 9 /* exc */
        start local 9 // org.jruby.ir.operands.Variable exc
        12: .line 1603
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 10 /* excType */
        start local 10 // org.jruby.ir.operands.Variable excType
        13: .line 1606
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 1607
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveRubyExceptionInstr
            dup
            aload 9 /* exc */
            invokespecial org.jruby.ir.instructions.ReceiveRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 1608
            aload 0 /* this */
            new org.jruby.ir.instructions.InheritanceSearchConstInstr
            dup
            aload 10 /* excType */
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
        16: .line 1609
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            getfield org.jruby.ir.IRManager.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.util.CommonByteLists.EXCEPTION:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.InheritanceSearchConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
        17: .line 1608
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 1610
            aload 0 /* this */
            aload 10 /* excType */
            aload 9 /* exc */
            aload 8 /* caughtLabel */
            invokevirtual org.jruby.ir.IRBuilder.outputExceptionCheck:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
        19: .line 1613
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            aload 9 /* exc */
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 1616
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 8 /* caughtLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 1617
            aload 2 /* rescueBlock */
            invokeinterface org.jruby.ir.IRBuilder$CodeBlock.run:()Lorg/jruby/ir/operands/Operand;
            astore 11 /* v2 */
        start local 11 // java.lang.Object v2
        22: .line 1618
            aload 11 /* v2 */
            ifnull 23
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 3 /* rv */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 1621
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.IRBuilder$CodeBlock org.jruby.ir.IRBuilder$CodeBlock org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Label java.lang.Object org.jruby.ir.operands.Label org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable java.lang.Object
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 1623
            aload 3 /* rv */
            areturn
        end local 11 // java.lang.Object v2
        end local 10 // org.jruby.ir.operands.Variable excType
        end local 9 // org.jruby.ir.operands.Variable exc
        end local 8 // org.jruby.ir.operands.Label caughtLabel
        end local 7 // java.lang.Object v1
        end local 6 // org.jruby.ir.operands.Label rescueLabel
        end local 5 // org.jruby.ir.operands.Label rEndLabel
        end local 4 // org.jruby.ir.operands.Label rBeginLabel
        end local 3 // org.jruby.ir.operands.Variable rv
        end local 2 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
        end local 1 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   25     0           this  Lorg/jruby/ir/IRBuilder;
            0   25     1  protectedCode  Lorg/jruby/ir/IRBuilder$CodeBlock;
            0   25     2    rescueBlock  Lorg/jruby/ir/IRBuilder$CodeBlock;
            1   25     3             rv  Lorg/jruby/ir/operands/Variable;
            2   25     4    rBeginLabel  Lorg/jruby/ir/operands/Label;
            3   25     5      rEndLabel  Lorg/jruby/ir/operands/Label;
            4   25     6    rescueLabel  Lorg/jruby/ir/operands/Label;
            7   25     7             v1  Ljava/lang/Object;
           11   25     8    caughtLabel  Lorg/jruby/ir/operands/Label;
           12   25     9            exc  Lorg/jruby/ir/operands/Variable;
           13   25    10        excType  Lorg/jruby/ir/operands/Variable;
           22   25    11             v2  Ljava/lang/Object;
    MethodParameters:
               Name  Flags
      protectedCode  
      rescueBlock    

  public org.jruby.ir.operands.Operand buildGetDefinition(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=11, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 1627
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 40
                    2: 2
                    6: 9
                    8: 25
                   16: 140
                   19: 1
                   20: 1
                   21: 60
                   22: 118
                   23: 118
                   24: 1
                   25: 104
                   26: 1
                   31: 2
                   32: 2
                   34: 4
                   38: 3
                   39: 125
                   44: 1
                   45: 32
                   48: 1
                   49: 50
                   53: 1
                   54: 4
                   55: 5
                   56: 5
                   61: 6
                   63: 41
                   64: 1
                   65: 1
                   66: 1
                   67: 1
                   68: 2
                   79: 7
                   83: 70
                   86: 8
                   90: 83
                   94: 94
                   97: 95
                  100: 144
                  105: 1
              default: 148
          }
         1: .line 1632
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.ASSIGNMENT:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         2: .line 1634
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.EXPRESSION:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         3: .line 1636
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.FALSE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         4: .line 1638
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.LOCAL_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         5: .line 1640
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.METHOD:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         6: .line 1642
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.NIL:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         7: .line 1644
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.SELF:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         8: .line 1646
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.TRUE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
         9: .line 1648
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.ArrayNode
            astore 2 /* array */
        start local 2 // org.jruby.ast.ArrayNode array
        10: .line 1649
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* undefLabel */
        start local 3 // org.jruby.ir.operands.Label undefLabel
        11: .line 1650
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* doneLabel */
        start local 4 // org.jruby.ir.operands.Label doneLabel
        12: .line 1652
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* tmpVar */
        start local 5 // org.jruby.ir.operands.Variable tmpVar
        13: .line 1653
            aload 2 /* array */
            invokevirtual org.jruby.ast.ArrayNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 18
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.ArrayNode org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable top int int org.jruby.ast.Node[]
      StackMap stack:
        14: aload 9
            iload 7
            aaload
            astore 6 /* elt */
        start local 6 // org.jruby.ast.Node elt
        15: .line 1654
            aload 0 /* this */
            aload 6 /* elt */
            invokevirtual org.jruby.ir.IRBuilder.buildGetDefinition:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 10 /* result */
        start local 10 // org.jruby.ir.operands.Operand result
        16: .line 1656
            aload 0 /* this */
            aload 10 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 3 /* undefLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 10 // org.jruby.ir.operands.Operand result
        end local 6 // org.jruby.ast.Node elt
        17: .line 1653
            iinc 7 1
      StackMap locals:
      StackMap stack:
        18: iload 7
            iload 8
            if_icmplt 14
        19: .line 1659
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 5 /* tmpVar */
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.EXPRESSION:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 1660
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* doneLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 1661
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* undefLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        22: .line 1662
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 5 /* tmpVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 1663
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* doneLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 1665
            aload 5 /* tmpVar */
            areturn
        end local 5 // org.jruby.ir.operands.Variable tmpVar
        end local 4 // org.jruby.ir.operands.Label doneLabel
        end local 3 // org.jruby.ir.operands.Label undefLabel
        end local 2 // org.jruby.ast.ArrayNode array
        25: .line 1668
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
        26: .line 1669
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        27: .line 1670
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        28: .line 1671
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_BACKREF:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        29: .line 1672
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.GLOBAL_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        30: .line 1669
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        31: .line 1668
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        32: .line 1676
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        33: .line 1677
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        34: .line 1678
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        35: .line 1679
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_GLOBAL:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        36: .line 1680
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        37: .line 1681
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.GlobalVarNode
            invokevirtual org.jruby.ast.GlobalVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/RubySymbol;)V
            aastore
            dup
            iconst_1
        38: .line 1682
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.GLOBAL_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        39: .line 1677
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        40: .line 1676
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        41: .line 1687
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        42: .line 1688
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        43: .line 1689
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        44: .line 1690
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_NTH_REF:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        45: .line 1691
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        46: .line 1692
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 1 /* node */
            checkcast org.jruby.ast.NthRefNode
            invokevirtual org.jruby.ast.NthRefNode.getMatchNumber:()I
            i2l
            invokevirtual org.jruby.ir.IRManager.newFixnum:(J)Lorg/jruby/ir/operands/Fixnum;
            aastore
            dup
            iconst_1
        47: .line 1693
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.GLOBAL_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        48: .line 1688
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        49: .line 1687
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        50: .line 1699
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        51: .line 1700
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        52: .line 1701
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        53: .line 1702
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_INSTANCE_VAR:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        54: .line 1703
            iconst_3
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        55: .line 1704
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aastore
            dup
            iconst_1
        56: .line 1705
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.InstVarNode
            invokevirtual org.jruby.ast.InstVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/RubySymbol;)V
            aastore
            dup
            iconst_2
        57: .line 1706
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.INSTANCE_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        58: .line 1700
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        59: .line 1699
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        60: .line 1711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        61: .line 1712
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        62: .line 1713
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        63: .line 1714
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_CLASS_VAR:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        64: .line 1715
            iconst_3
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        65: .line 1716
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.classVarDefinitionContainer:()Lorg/jruby/ir/operands/Operand;
            aastore
            dup
            iconst_1
        66: .line 1717
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.ClassVarNode
            invokevirtual org.jruby.ast.ClassVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/RubySymbol;)V
            aastore
            dup
            iconst_2
        67: .line 1718
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.CLASS_VARIABLE:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        68: .line 1712
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        69: .line 1711
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        70: .line 1723
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* undefLabel */
        start local 2 // org.jruby.ir.operands.Label undefLabel
        71: .line 1724
            aload 0 /* this */
        72: .line 1725
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        73: .line 1726
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        74: .line 1727
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_SUPER:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        75: .line 1728
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        76: .line 1729
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aastore
            dup
            iconst_1
        77: .line 1730
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.SUPER:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        78: .line 1725
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        79: .line 1724
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 3 /* tmpVar */
        start local 3 // org.jruby.ir.operands.Variable tmpVar
        80: .line 1734
            aload 0 /* this */
            aload 3 /* tmpVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 2 /* undefLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        81: .line 1735
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.SuperNode
            invokevirtual org.jruby.ast.SuperNode.getArgsNode:()Lorg/jruby/ast/Node;
            getstatic org.jruby.util.DefinedMessage.SUPER:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokevirtual org.jruby.ir.IRBuilder.buildGetArgumentDefinition:(Lorg/jruby/ast/Node;Ljava/lang/String;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* superDefnVal */
        start local 4 // org.jruby.ir.operands.Operand superDefnVal
        82: .line 1736
            aload 0 /* this */
            aload 2 /* undefLabel */
            aload 4 /* superDefnVal */
            invokevirtual org.jruby.ir.IRBuilder.buildDefnCheckIfThenPaths:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 4 // org.jruby.ir.operands.Operand superDefnVal
        end local 3 // org.jruby.ir.operands.Variable tmpVar
        end local 2 // org.jruby.ir.operands.Label undefLabel
        83: .line 1739
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        84: .line 1740
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        85: .line 1741
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        86: .line 1742
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_METHOD:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        87: .line 1743
            iconst_4
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
        88: .line 1744
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aastore
            dup
            iconst_1
        89: .line 1745
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.VCallNode
            invokevirtual org.jruby.ast.VCallNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/RubySymbol;)V
            aastore
            dup
            iconst_2
        90: .line 1746
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aastore
            dup
            iconst_3
        91: .line 1747
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.METHOD:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
        92: .line 1740
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
        93: .line 1739
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        94: .line 1752
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.BlockGivenInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            invokespecial org.jruby.ir.instructions.BlockGivenInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            getstatic org.jruby.util.DefinedMessage.YIELD:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokevirtual org.jruby.ir.IRBuilder.buildDefinitionCheck:(Lorg/jruby/ir/instructions/ResultInstr;Ljava/lang/String;)Lorg/jruby/ir/operands/Variable;
            areturn
        95: .line 1754
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        96: .line 1755
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
        97: .line 1756
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
        98: .line 1757
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_SUPER:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
        99: .line 1758
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
       100: .line 1759
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aastore
            dup
            iconst_1
       101: .line 1760
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.SUPER:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
       102: .line 1755
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
       103: .line 1754
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
       104: .line 1765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* defLabel */
        start local 2 // org.jruby.ir.operands.Label defLabel
       105: .line 1766
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* doneLabel */
        start local 3 // org.jruby.ir.operands.Label doneLabel
       106: .line 1767
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* tmpVar */
        start local 4 // org.jruby.ir.operands.Variable tmpVar
       107: .line 1768
            aload 1 /* node */
            checkcast org.jruby.ast.ConstNode
            invokevirtual org.jruby.ast.ConstNode.getName:()Lorg/jruby/RubySymbol;
            astore 5 /* constName */
        start local 5 // org.jruby.RubySymbol constName
       108: .line 1769
            aload 0 /* this */
            new org.jruby.ir.instructions.LexicalSearchConstInstr
            dup
            aload 4 /* tmpVar */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.startingSearchScope:()Lorg/jruby/ir/operands/Operand;
            aload 5 /* constName */
            invokespecial org.jruby.ir.instructions.LexicalSearchConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       109: .line 1770
            aload 0 /* this */
            aload 2 /* defLabel */
            aload 4 /* tmpVar */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            invokestatic org.jruby.ir.instructions.BNEInstr.create:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/BranchInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       110: .line 1771
            aload 0 /* this */
            new org.jruby.ir.instructions.InheritanceSearchConstInstr
            dup
            aload 4 /* tmpVar */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.findContainerModule:()Lorg/jruby/ir/operands/Operand;
            aload 5 /* constName */
            invokespecial org.jruby.ir.instructions.InheritanceSearchConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       111: .line 1772
            aload 0 /* this */
            aload 2 /* defLabel */
            aload 4 /* tmpVar */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            invokestatic org.jruby.ir.instructions.BNEInstr.create:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/BranchInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       112: .line 1773
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* tmpVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       113: .line 1774
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 3 /* doneLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       114: .line 1775
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* defLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       115: .line 1776
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* tmpVar */
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.CONSTANT:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       116: .line 1777
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* doneLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       117: .line 1778
            aload 4 /* tmpVar */
            areturn
        end local 5 // org.jruby.RubySymbol constName
        end local 4 // org.jruby.ir.operands.Variable tmpVar
        end local 3 // org.jruby.ir.operands.Label doneLabel
        end local 2 // org.jruby.ir.operands.Label defLabel
       118: .line 1786
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.Colon3Node
            astore 2 /* colon */
        start local 2 // org.jruby.ast.Colon3Node colon
       119: .line 1787
            aload 2 /* colon */
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            astore 3 /* name */
        start local 3 // org.jruby.RubySymbol name
       120: .line 1788
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* errInfo */
        start local 4 // org.jruby.ir.operands.Variable errInfo
       121: .line 1791
            aload 0 /* this */
            new org.jruby.ir.instructions.defined.GetErrorInfoInstr
            dup
            aload 4 /* errInfo */
            invokespecial org.jruby.ir.instructions.defined.GetErrorInfoInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       122: .line 1793
            new org.jruby.ir.IRBuilder$3
            dup
            aload 0 /* this */
            aload 2 /* colon */
            aload 3 /* name */
            invokespecial org.jruby.ir.IRBuilder$3.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ast/Colon3Node;Lorg/jruby/RubySymbol;)V
            astore 5 /* protectedCode */
        start local 5 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
       123: .line 1838
            new org.jruby.ir.IRBuilder$4
            dup
            aload 0 /* this */
            aload 4 /* errInfo */
            invokespecial org.jruby.ir.IRBuilder$4.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ir/operands/Variable;)V
            astore 6 /* rescueBlock */
        start local 6 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
       124: .line 1847
            aload 0 /* this */
            aload 5 /* protectedCode */
            aload 6 /* rescueBlock */
            invokevirtual org.jruby.ir.IRBuilder.protectCodeWithRescue:(Lorg/jruby/ir/IRBuilder$CodeBlock;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 6 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
        end local 5 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
        end local 4 // org.jruby.ir.operands.Variable errInfo
        end local 3 // org.jruby.RubySymbol name
        end local 2 // org.jruby.ast.Colon3Node colon
       125: .line 1856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* undefLabel */
        start local 2 // org.jruby.ir.operands.Label undefLabel
       126: .line 1857
            aload 0 /* this */
       127: .line 1858
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
       128: .line 1859
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
       129: .line 1860
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.IS_DEFINED_METHOD:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
       130: .line 1861
            iconst_4
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
       131: .line 1862
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aastore
            dup
            iconst_1
       132: .line 1863
            new org.jruby.ir.operands.Symbol
            dup
            aload 1 /* node */
            checkcast org.jruby.ast.FCallNode
            invokevirtual org.jruby.ast.FCallNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.Symbol.<init>:(Lorg/jruby/RubySymbol;)V
            aastore
            dup
            iconst_2
       133: .line 1864
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aastore
            dup
            iconst_3
       134: .line 1865
            new org.jruby.ir.operands.FrozenString
            dup
            getstatic org.jruby.util.DefinedMessage.METHOD:Lorg/jruby/util/DefinedMessage;
            invokevirtual org.jruby.util.DefinedMessage.getText:()Ljava/lang/String;
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            aastore
       135: .line 1858
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
       136: .line 1857
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 3 /* tmpVar */
        start local 3 // org.jruby.ir.operands.Variable tmpVar
       137: .line 1869
            aload 0 /* this */
            aload 3 /* tmpVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 2 /* undefLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
       138: .line 1870
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.FCallNode
            invokevirtual org.jruby.ast.FCallNode.getArgsNode:()Lorg/jruby/ast/Node;
            ldc "method"
            invokevirtual org.jruby.ir.IRBuilder.buildGetArgumentDefinition:(Lorg/jruby/ast/Node;Ljava/lang/String;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* argsCheckDefn */
        start local 4 // org.jruby.ir.operands.Operand argsCheckDefn
       139: .line 1871
            aload 0 /* this */
            aload 2 /* undefLabel */
            aload 4 /* argsCheckDefn */
            invokevirtual org.jruby.ir.IRBuilder.buildDefnCheckIfThenPaths:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 4 // org.jruby.ir.operands.Operand argsCheckDefn
        end local 3 // org.jruby.ir.operands.Variable tmpVar
        end local 2 // org.jruby.ir.operands.Label undefLabel
       140: .line 1874
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.CallNode
            astore 2 /* callNode */
        start local 2 // org.jruby.ast.CallNode callNode
       141: .line 1877
            new org.jruby.ir.IRBuilder$5
            dup
            aload 0 /* this */
            aload 2 /* callNode */
            invokespecial org.jruby.ir.IRBuilder$5.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ast/CallNode;)V
            astore 3 /* protectedCode */
        start local 3 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
       142: .line 1899
            new org.jruby.ir.IRBuilder$6
            dup
            aload 0 /* this */
            invokespecial org.jruby.ir.IRBuilder$6.<init>:(Lorg/jruby/ir/IRBuilder;)V
            astore 4 /* rescueBlock */
        start local 4 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
       143: .line 1904
            aload 0 /* this */
            aload 3 /* protectedCode */
            aload 4 /* rescueBlock */
            invokevirtual org.jruby.ir.IRBuilder.protectCodeWithRescue:(Lorg/jruby/ir/IRBuilder$CodeBlock;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 4 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
        end local 3 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
        end local 2 // org.jruby.ast.CallNode callNode
       144: .line 1907
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.AttrAssignNode
            astore 2 /* attrAssign */
        start local 2 // org.jruby.ast.AttrAssignNode attrAssign
       145: .line 1910
            new org.jruby.ir.IRBuilder$7
            dup
            aload 0 /* this */
            aload 2 /* attrAssign */
            invokespecial org.jruby.ir.IRBuilder$7.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ast/AttrAssignNode;)V
            astore 3 /* protectedCode */
        start local 3 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
       146: .line 1950
            new org.jruby.ir.IRBuilder$8
            dup
            aload 0 /* this */
            invokespecial org.jruby.ir.IRBuilder$8.<init>:(Lorg/jruby/ir/IRBuilder;)V
            astore 4 /* rescueBlock */
        start local 4 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
       147: .line 1955
            aload 0 /* this */
            aload 3 /* protectedCode */
            aload 4 /* rescueBlock */
            invokevirtual org.jruby.ir.IRBuilder.protectCodeWithRescue:(Lorg/jruby/ir/IRBuilder$CodeBlock;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 4 // org.jruby.ir.IRBuilder$CodeBlock rescueBlock
        end local 3 // org.jruby.ir.IRBuilder$CodeBlock protectedCode
        end local 2 // org.jruby.ast.AttrAssignNode attrAssign
       148: .line 1958
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            ldc "expression"
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  149     0           this  Lorg/jruby/ir/IRBuilder;
            0  149     1           node  Lorg/jruby/ast/Node;
           10   25     2          array  Lorg/jruby/ast/ArrayNode;
           11   25     3     undefLabel  Lorg/jruby/ir/operands/Label;
           12   25     4      doneLabel  Lorg/jruby/ir/operands/Label;
           13   25     5         tmpVar  Lorg/jruby/ir/operands/Variable;
           15   17     6            elt  Lorg/jruby/ast/Node;
           16   17    10         result  Lorg/jruby/ir/operands/Operand;
           71   83     2     undefLabel  Lorg/jruby/ir/operands/Label;
           80   83     3         tmpVar  Lorg/jruby/ir/operands/Variable;
           82   83     4   superDefnVal  Lorg/jruby/ir/operands/Operand;
          105  118     2       defLabel  Lorg/jruby/ir/operands/Label;
          106  118     3      doneLabel  Lorg/jruby/ir/operands/Label;
          107  118     4         tmpVar  Lorg/jruby/ir/operands/Variable;
          108  118     5      constName  Lorg/jruby/RubySymbol;
          119  125     2          colon  Lorg/jruby/ast/Colon3Node;
          120  125     3           name  Lorg/jruby/RubySymbol;
          121  125     4        errInfo  Lorg/jruby/ir/operands/Variable;
          123  125     5  protectedCode  Lorg/jruby/ir/IRBuilder$CodeBlock;
          124  125     6    rescueBlock  Lorg/jruby/ir/IRBuilder$CodeBlock;
          126  140     2     undefLabel  Lorg/jruby/ir/operands/Label;
          137  140     3         tmpVar  Lorg/jruby/ir/operands/Variable;
          139  140     4  argsCheckDefn  Lorg/jruby/ir/operands/Operand;
          141  144     2       callNode  Lorg/jruby/ast/CallNode;
          142  144     3  protectedCode  Lorg/jruby/ir/IRBuilder$CodeBlock;
          143  144     4    rescueBlock  Lorg/jruby/ir/IRBuilder$CodeBlock;
          145  148     2     attrAssign  Lorg/jruby/ast/AttrAssignNode;
          146  148     3  protectedCode  Lorg/jruby/ir/IRBuilder$CodeBlock;
          147  148     4    rescueBlock  Lorg/jruby/ir/IRBuilder$CodeBlock;
    MethodParameters:
      Name  Flags
      node  

  protected org.jruby.ir.operands.Variable buildDefnCheckIfThenPaths(org.jruby.ir.operands.Label, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Label undefLabel
        start local 2 // org.jruby.ir.operands.Operand defVal
         0: .line 1963
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* defLabel */
        start local 3 // org.jruby.ir.operands.Label defLabel
         1: .line 1964
            aload 0 /* this */
            aload 2 /* defVal */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* tmpVar */
        start local 4 // org.jruby.ir.operands.Variable tmpVar
         2: .line 1965
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 3 /* defLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 1966
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 1 /* undefLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 1967
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* tmpVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 1968
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* defLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 1969
            aload 4 /* tmpVar */
            areturn
        end local 4 // org.jruby.ir.operands.Variable tmpVar
        end local 3 // org.jruby.ir.operands.Label defLabel
        end local 2 // org.jruby.ir.operands.Operand defVal
        end local 1 // org.jruby.ir.operands.Label undefLabel
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/jruby/ir/IRBuilder;
            0    7     1  undefLabel  Lorg/jruby/ir/operands/Label;
            0    7     2      defVal  Lorg/jruby/ir/operands/Operand;
            1    7     3    defLabel  Lorg/jruby/ir/operands/Label;
            2    7     4      tmpVar  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
            Name  Flags
      undefLabel  
      defVal      

  protected org.jruby.ir.operands.Variable buildDefinitionCheck(org.jruby.ir.instructions.ResultInstr, java.lang.String);
    descriptor: (Lorg/jruby/ir/instructions/ResultInstr;Ljava/lang/String;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.instructions.ResultInstr definedInstr
        start local 2 // java.lang.String definedReturnValue
         0: .line 1973
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* undefLabel */
        start local 3 // org.jruby.ir.operands.Label undefLabel
         1: .line 1974
            aload 0 /* this */
            aload 1 /* definedInstr */
            checkcast org.jruby.ir.instructions.Instr
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 1975
            aload 0 /* this */
            aload 1 /* definedInstr */
            invokeinterface org.jruby.ir.instructions.ResultInstr.getResult:()Lorg/jruby/ir/operands/Variable;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aload 3 /* undefLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 1976
            aload 0 /* this */
            aload 3 /* undefLabel */
            new org.jruby.ir.operands.FrozenString
            dup
            aload 2 /* definedReturnValue */
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            invokevirtual org.jruby.ir.IRBuilder.buildDefnCheckIfThenPaths:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 3 // org.jruby.ir.operands.Label undefLabel
        end local 2 // java.lang.String definedReturnValue
        end local 1 // org.jruby.ir.instructions.ResultInstr definedInstr
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/jruby/ir/IRBuilder;
            0    4     1        definedInstr  Lorg/jruby/ir/instructions/ResultInstr;
            0    4     2  definedReturnValue  Ljava/lang/String;
            1    4     3          undefLabel  Lorg/jruby/ir/operands/Label;
    MethodParameters:
                    Name  Flags
      definedInstr        
      definedReturnValue  

  public org.jruby.ir.operands.Operand buildGetArgumentDefinition(org.jruby.ast.Node, java.lang.String);
    descriptor: (Lorg/jruby/ast/Node;Ljava/lang/String;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // java.lang.String type
         0: .line 1980
            aload 1 /* node */
            ifnonnull 1
            new org.jruby.ir.operands.StringLiteral
            dup
            aload 2 /* type */
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Ljava/lang/String;)V
            areturn
         1: .line 1982
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.FrozenString
            dup
            aload 2 /* type */
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Ljava/lang/String;)V
            astore 3 /* rv */
        start local 3 // org.jruby.ir.operands.Operand rv
         2: .line 1983
            iconst_0
            istore 4 /* failPathReqd */
        start local 4 // boolean failPathReqd
         3: .line 1984
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 5 /* failLabel */
        start local 5 // org.jruby.ir.operands.Label failLabel
         4: .line 1985
            aload 1 /* node */
            instanceof org.jruby.ast.ArrayNode
            ifeq 18
         5: .line 1986
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: goto 16
         7: .line 1987
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node java.lang.String org.jruby.ir.operands.Operand int org.jruby.ir.operands.Label int
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.ArrayNode
            iload 6 /* i */
            invokevirtual org.jruby.ast.ArrayNode.get:(I)Lorg/jruby/ast/Node;
            astore 7 /* iterNode */
        start local 7 // org.jruby.ast.Node iterNode
         8: .line 1988
            aload 0 /* this */
            aload 7 /* iterNode */
            invokevirtual org.jruby.ir.IRBuilder.buildGetDefinition:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 8 /* def */
        start local 8 // org.jruby.ir.operands.Operand def
         9: .line 1989
            aload 8 /* def */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            if_acmpne 12
        10: .line 1990
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            astore 3 /* rv */
        11: .line 1991
            goto 25
        12: .line 1992
      StackMap locals: org.jruby.ast.Node org.jruby.ir.operands.Operand
      StackMap stack:
            aload 8 /* def */
            invokevirtual org.jruby.ir.operands.Operand.hasKnownValue:()Z
            ifne 15
        13: .line 1993
            iconst_1
            istore 4 /* failPathReqd */
        14: .line 1994
            aload 0 /* this */
            aload 8 /* def */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 5 /* failLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 8 // org.jruby.ir.operands.Operand def
        end local 7 // org.jruby.ast.Node iterNode
        15: .line 1986
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 6 /* i */
            aload 1 /* node */
            checkcast org.jruby.ast.ArrayNode
            invokevirtual org.jruby.ast.ArrayNode.size:()I
            if_icmplt 7
        end local 6 // int i
        17: .line 1997
            goto 25
        18: .line 1998
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildGetDefinition:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 6 /* def */
        start local 6 // org.jruby.ir.operands.Operand def
        19: .line 1999
            aload 6 /* def */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            if_acmpne 22
        20: .line 2000
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            astore 3 /* rv */
        21: .line 2001
            goto 25
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
        22: aload 6 /* def */
            invokevirtual org.jruby.ir.operands.Operand.hasKnownValue:()Z
            ifne 25
        23: .line 2002
            iconst_1
            istore 4 /* failPathReqd */
        24: .line 2003
            aload 0 /* this */
            aload 6 /* def */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 5 /* failLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 6 // org.jruby.ir.operands.Operand def
        25: .line 2008
      StackMap locals:
      StackMap stack:
            iload 4 /* failPathReqd */
            ifeq 26
            aload 0 /* this */
            aload 5 /* failLabel */
            aload 3 /* rv */
            invokevirtual org.jruby.ir.IRBuilder.buildDefnCheckIfThenPaths:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 3 /* rv */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        27: areturn
        end local 5 // org.jruby.ir.operands.Label failLabel
        end local 4 // boolean failPathReqd
        end local 3 // org.jruby.ir.operands.Operand rv
        end local 2 // java.lang.String type
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Lorg/jruby/ir/IRBuilder;
            0   28     1          node  Lorg/jruby/ast/Node;
            0   28     2          type  Ljava/lang/String;
            2   28     3            rv  Lorg/jruby/ir/operands/Operand;
            3   28     4  failPathReqd  Z
            4   28     5     failLabel  Lorg/jruby/ir/operands/Label;
            6   17     6             i  I
            8   15     7      iterNode  Lorg/jruby/ast/Node;
            9   15     8           def  Lorg/jruby/ir/operands/Operand;
           19   25     6           def  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      node  final
      type  

  public org.jruby.ir.operands.Operand buildDAsgn(org.jruby.ast.DAsgnNode);
    descriptor: (Lorg/jruby/ast/DAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.DAsgnNode dasgnNode
         0: .line 2017
            aload 1 /* dasgnNode */
            invokevirtual org.jruby.ast.DAsgnNode.getDepth:()I
            istore 2 /* depth */
        start local 2 // int depth
         1: .line 2018
            aload 0 /* this */
            aload 1 /* dasgnNode */
            invokevirtual org.jruby.ast.DAsgnNode.getName:()Lorg/jruby/RubySymbol;
            iload 2 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 3 /* arg */
        start local 3 // org.jruby.ir.operands.Variable arg
         2: .line 2019
            aload 0 /* this */
            aload 1 /* dasgnNode */
            invokevirtual org.jruby.ast.DAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* value */
        start local 4 // org.jruby.ir.operands.Operand value
         3: .line 2022
            aload 3 /* arg */
            aload 4 /* value */
            if_acmpne 4
            aload 4 /* value */
            areturn
         4: .line 2024
      StackMap locals: int org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 3 /* arg */
            aload 4 /* value */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2026
            aload 4 /* value */
            areturn
        end local 4 // org.jruby.ir.operands.Operand value
        end local 3 // org.jruby.ir.operands.Variable arg
        end local 2 // int depth
        end local 1 // org.jruby.ast.DAsgnNode dasgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/jruby/ir/IRBuilder;
            0    6     1  dasgnNode  Lorg/jruby/ast/DAsgnNode;
            1    6     2      depth  I
            2    6     3        arg  Lorg/jruby/ir/operands/Variable;
            3    6     4      value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      dasgnNode  final

  protected org.jruby.ir.interpreter.InterpreterContext defineMethodInner(org.jruby.ast.DefNode, org.jruby.ir.IRScope, boolean);
    descriptor: (Lorg/jruby/ast/DefNode;Lorg/jruby/ir/IRScope;Z)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=10, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.DefNode defNode
        start local 2 // org.jruby.ir.IRScope parent
        start local 3 // boolean needsCodeCoverage
         0: .line 2054
            aload 0 /* this */
            iload 3 /* needsCodeCoverage */
            putfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
         1: .line 2056
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 4
         2: .line 2058
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            iconst_1
            iadd
            invokevirtual org.jruby.ir.IRManager.newLineNumber:(I)Lorg/jruby/ir/instructions/LineNumberInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 2059
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.CALL:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 2062
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         5: .line 2068
            aload 2 /* parent */
            invokevirtual org.jruby.ir.IRScope.getNearestModuleReferencingScopeDepth:()I
            istore 4 /* nearestScopeDepth */
        start local 4 // int nearestScopeDepth
         6: .line 2069
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.operands.CurrentScope.INSTANCE:Lorg/jruby/ir/operands/CurrentScope;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 2070
            aload 0 /* this */
         8: new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            iload 4 /* nearestScopeDepth */
            iconst_m1
            if_icmpne 9
            iconst_1
            goto 10
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.DefNode org.jruby.ir.IRScope int int
      StackMap stack: org.jruby.ir.IRBuilder new 8 new 8 org.jruby.ir.operands.Variable
         9: iload 4 /* nearestScopeDepth */
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.DefNode org.jruby.ir.IRScope int int
      StackMap stack: org.jruby.ir.IRBuilder new 8 new 8 org.jruby.ir.operands.Variable int
        10: invokestatic org.jruby.ir.operands.ScopeModule.ModuleFor:(I)Lorg/jruby/ir/operands/ScopeModule;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 2073
            aload 0 /* this */
            aload 1 /* defNode */
            invokeinterface org.jruby.ast.DefNode.getArgsNode:()Lorg/jruby/ast/ArgsNode;
            invokevirtual org.jruby.ir.IRBuilder.receiveMethodArgs:(Lorg/jruby/ast/ArgsNode;)V
        12: .line 2076
            aload 0 /* this */
            aload 1 /* defNode */
            invokeinterface org.jruby.ast.DefNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* rv */
        start local 5 // org.jruby.ir.operands.Operand rv
        13: .line 2078
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 16
        14: .line 2079
            aload 0 /* this */
            new org.jruby.ir.instructions.LineNumberInstr
            dup
            aload 1 /* defNode */
            invokeinterface org.jruby.ast.DefNode.getEndLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.LineNumberInstr.<init>:(I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 2080
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.RETURN:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 1 /* defNode */
            invokeinterface org.jruby.ast.DefNode.getEndLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 2083
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 5 /* rv */
            ifnull 17
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 5 /* rv */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 2085
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.computeScopeFlagsEarly:(Ljava/util/List;)V
        18: .line 2087
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.canReceiveNonlocalReturns:()Z
            ifeq 19
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.handleNonlocalReturnInMethod:()V
        19: .line 2090
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            ifnonnull 22
        20: .line 2091
            getstatic org.jruby.runtime.ArgumentDescriptor.EMPTY_ARRAY:[Lorg/jruby/runtime/ArgumentDescriptor;
            astore 6 /* argDesc */
        start local 6 // org.jruby.runtime.ArgumentDescriptor[] argDesc
        21: .line 2092
            goto 30
        end local 6 // org.jruby.runtime.ArgumentDescriptor[] argDesc
        22: .line 2093
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_2
            idiv
            anewarray org.jruby.runtime.ArgumentDescriptor
            astore 6 /* argDesc */
        start local 6 // org.jruby.runtime.ArgumentDescriptor[] argDesc
        23: .line 2094
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        24: goto 29
        25: .line 2095
      StackMap locals: org.jruby.runtime.ArgumentDescriptor[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jruby.runtime.ArgumentType
            astore 8 /* type */
        start local 8 // org.jruby.runtime.ArgumentType type
        26: .line 2096
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            iload 7 /* i */
            iconst_1
            iadd
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jruby.RubySymbol
            astore 9 /* symbol */
        start local 9 // org.jruby.RubySymbol symbol
        27: .line 2097
            aload 6 /* argDesc */
            iload 7 /* i */
            iconst_2
            idiv
            new org.jruby.runtime.ArgumentDescriptor
            dup
            aload 8 /* type */
            aload 9 /* symbol */
            invokespecial org.jruby.runtime.ArgumentDescriptor.<init>:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
            aastore
        end local 9 // org.jruby.RubySymbol symbol
        end local 8 // org.jruby.runtime.ArgumentType type
        28: .line 2094
            iinc 7 /* i */ 2
      StackMap locals:
      StackMap stack:
        29: iload 7 /* i */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.argumentDescriptions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 25
        end local 7 // int i
        30: .line 2101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            checkcast org.jruby.ir.IRMethod
            aload 6 /* argDesc */
            invokevirtual org.jruby.ir.IRMethod.setArgumentDescriptors:([Lorg/jruby/runtime/ArgumentDescriptor;)V
        31: .line 2103
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 6 // org.jruby.runtime.ArgumentDescriptor[] argDesc
        end local 5 // org.jruby.ir.operands.Operand rv
        end local 4 // int nearestScopeDepth
        end local 3 // boolean needsCodeCoverage
        end local 2 // org.jruby.ir.IRScope parent
        end local 1 // org.jruby.ast.DefNode defNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   32     0               this  Lorg/jruby/ir/IRBuilder;
            0   32     1            defNode  Lorg/jruby/ast/DefNode;
            0   32     2             parent  Lorg/jruby/ir/IRScope;
            0   32     3  needsCodeCoverage  Z
            6   32     4  nearestScopeDepth  I
           13   32     5                 rv  Lorg/jruby/ir/operands/Operand;
           21   22     6            argDesc  [Lorg/jruby/runtime/ArgumentDescriptor;
           23   32     6            argDesc  [Lorg/jruby/runtime/ArgumentDescriptor;
           24   30     7                  i  I
           26   28     8               type  Lorg/jruby/runtime/ArgumentType;
           27   28     9             symbol  Lorg/jruby/RubySymbol;
    MethodParameters:
                   Name  Flags
      defNode            
      parent             
      needsCodeCoverage  

  private org.jruby.ir.IRMethod defineNewMethod(org.jruby.ast.MethodDefNode, boolean);
    descriptor: (Lorg/jruby/ast/MethodDefNode;Z)Lorg/jruby/ir/IRMethod;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.MethodDefNode defNode
        start local 2 // boolean isInstanceMethod
         0: .line 2107
            new org.jruby.ir.IRMethod
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* defNode */
            aload 1 /* defNode */
            invokevirtual org.jruby.ast.MethodDefNode.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            iload 2 /* isInstanceMethod */
            aload 1 /* defNode */
            invokevirtual org.jruby.ast.MethodDefNode.getLine:()I
         1: .line 2108
            aload 1 /* defNode */
            invokevirtual org.jruby.ast.MethodDefNode.getScope:()Lorg/jruby/parser/StaticScope;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.needsCodeCoverage:()Z
         2: .line 2107
            invokespecial org.jruby.ir.IRMethod.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/ast/DefNode;Lorg/jruby/util/ByteList;ZILorg/jruby/parser/StaticScope;Z)V
            areturn
        end local 2 // boolean isInstanceMethod
        end local 1 // org.jruby.ast.MethodDefNode defNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/jruby/ir/IRBuilder;
            0    3     1           defNode  Lorg/jruby/ast/MethodDefNode;
            0    3     2  isInstanceMethod  Z
    MethodParameters:
                  Name  Flags
      defNode           
      isInstanceMethod  

  public org.jruby.ir.operands.Operand buildDefn(org.jruby.ast.MethodDefNode);
    descriptor: (Lorg/jruby/ast/MethodDefNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.MethodDefNode node
         0: .line 2112
            aload 0 /* this */
            aload 1 /* node */
            iconst_1
            invokevirtual org.jruby.ir.IRBuilder.defineNewMethod:(Lorg/jruby/ast/MethodDefNode;Z)Lorg/jruby/ir/IRMethod;
            astore 2 /* method */
        start local 2 // org.jruby.ir.IRMethod method
         1: .line 2113
            aload 0 /* this */
            new org.jruby.ir.instructions.DefineInstanceMethodInstr
            dup
            aload 2 /* method */
            invokespecial org.jruby.ir.instructions.DefineInstanceMethodInstr.<init>:(Lorg/jruby/ir/IRMethod;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 2114
            new org.jruby.ir.operands.Symbol
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.MethodDefNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.Symbol.<init>:(Lorg/jruby/RubySymbol;)V
            areturn
        end local 2 // org.jruby.ir.IRMethod method
        end local 1 // org.jruby.ast.MethodDefNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ir/IRBuilder;
            0    3     1    node  Lorg/jruby/ast/MethodDefNode;
            1    3     2  method  Lorg/jruby/ir/IRMethod;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildDefs(org.jruby.ast.DefsNode);
    descriptor: (Lorg/jruby/ast/DefsNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.DefsNode node
         0: .line 2118
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.DefsNode.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* container */
        start local 2 // org.jruby.ir.operands.Operand container
         1: .line 2119
            aload 0 /* this */
            aload 1 /* node */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.defineNewMethod:(Lorg/jruby/ast/MethodDefNode;Z)Lorg/jruby/ir/IRMethod;
            astore 3 /* method */
        start local 3 // org.jruby.ir.IRMethod method
         2: .line 2120
            aload 0 /* this */
            new org.jruby.ir.instructions.DefineClassMethodInstr
            dup
            aload 2 /* container */
            aload 3 /* method */
            invokespecial org.jruby.ir.instructions.DefineClassMethodInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/IRMethod;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 2121
            new org.jruby.ir.operands.Symbol
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.DefsNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.Symbol.<init>:(Lorg/jruby/RubySymbol;)V
            areturn
        end local 3 // org.jruby.ir.IRMethod method
        end local 2 // org.jruby.ir.operands.Operand container
        end local 1 // org.jruby.ast.DefsNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/jruby/ir/IRBuilder;
            0    4     1       node  Lorg/jruby/ast/DefsNode;
            1    4     2  container  Lorg/jruby/ir/operands/Operand;
            2    4     3     method  Lorg/jruby/ir/IRMethod;
    MethodParameters:
      Name  Flags
      node  

  protected org.jruby.ir.operands.LocalVariable getArgVariable(org.jruby.RubySymbol, int);
    descriptor: (Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int depth
         0: .line 2126
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRFor
            ifeq 1
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            aload 1 /* name */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.LocalVariable
         2: areturn
        end local 2 // int depth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/ir/IRBuilder;
            0    3     1   name  Lorg/jruby/RubySymbol;
            0    3     2  depth  I
    MethodParameters:
       Name  Flags
      name   
      depth  

  private void addArgReceiveInstr(org.jruby.ir.operands.Variable, int, org.jruby.runtime.Signature);
    descriptor: (Lorg/jruby/ir/operands/Variable;ILorg/jruby/runtime/Signature;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable v
        start local 2 // int argIndex
        start local 3 // org.jruby.runtime.Signature signature
         0: .line 2130
            aload 3 /* signature */
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 4 /* post */
        start local 4 // boolean post
         3: .line 2132
            iload 4 /* post */
            ifeq 6
         4: .line 2133
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceivePostReqdArgInstr
            dup
            aload 1 /* v */
            iload 2 /* argIndex */
            aload 3 /* signature */
            invokevirtual org.jruby.runtime.Signature.pre:()I
            aload 3 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            aload 3 /* signature */
            invokevirtual org.jruby.runtime.Signature.hasRest:()Z
            aload 3 /* signature */
            invokevirtual org.jruby.runtime.Signature.post:()I
            invokespecial org.jruby.ir.instructions.ReceivePostReqdArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;IIIZI)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2134
            goto 7
         6: .line 2135
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceivePreReqdArgInstr
            dup
            aload 1 /* v */
            iload 2 /* argIndex */
            invokespecial org.jruby.ir.instructions.ReceivePreReqdArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 2137
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean post
        end local 3 // org.jruby.runtime.Signature signature
        end local 2 // int argIndex
        end local 1 // org.jruby.ir.operands.Variable v
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jruby/ir/IRBuilder;
            0    8     1          v  Lorg/jruby/ir/operands/Variable;
            0    8     2   argIndex  I
            0    8     3  signature  Lorg/jruby/runtime/Signature;
            3    8     4       post  Z
    MethodParameters:
           Name  Flags
      v          
      argIndex   
      signature  

  private org.jruby.ir.operands.Variable argumentResult(org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
         0: .line 2144
            aload 1 /* name */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iconst_1
            if_icmpne 1
            aload 1 /* name */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            iconst_0
            invokevirtual org.jruby.util.ByteList.charAt:(I)C
            bipush 95
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* isUnderscore */
        start local 2 // boolean isUnderscore
         3: .line 2146
            iload 2 /* isUnderscore */
            ifeq 5
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.underscoreVariableSeen:Z
            ifeq 5
         4: .line 2147
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            areturn
         5: .line 2149
      StackMap locals: int
      StackMap stack:
            iload 2 /* isUnderscore */
            ifeq 6
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ir.IRBuilder.underscoreVariableSeen:Z
         6: .line 2150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 2 // boolean isUnderscore
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/jruby/ir/IRBuilder;
            0    7     1          name  Lorg/jruby/RubySymbol;
            3    7     2  isUnderscore  Z
    MethodParameters:
      Name  Flags
      name  

  public void receiveRequiredArg(org.jruby.ast.Node, int, org.jruby.runtime.Signature);
    descriptor: (Lorg/jruby/ast/Node;ILorg/jruby/runtime/Signature;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // int argIndex
        start local 3 // org.jruby.runtime.Signature signature
         0: .line 2155
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 2
                    5: 1
                  105: 5
              default: 13
          }
         1: .line 2157
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.ArgumentNode
            invokevirtual org.jruby.ast.ArgumentNode.getName:()Lorg/jruby/RubySymbol;
            astore 4 /* argName */
        start local 4 // org.jruby.RubySymbol argName
         2: .line 2159
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 3
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.req:Lorg/jruby/runtime/ArgumentType;
            aload 4 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
         3: .line 2161
      StackMap locals: org.jruby.RubySymbol
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.argumentResult:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Variable;
            iload 2 /* argIndex */
            aload 3 /* signature */
            invokevirtual org.jruby.ir.IRBuilder.addArgReceiveInstr:(Lorg/jruby/ir/operands/Variable;ILorg/jruby/runtime/Signature;)V
         4: .line 2162
            goto 14
        end local 4 // org.jruby.RubySymbol argName
         5: .line 2165
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.MultipleAsgnNode
            astore 4 /* childNode */
        start local 4 // org.jruby.ast.MultipleAsgnNode childNode
         6: .line 2166
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* v */
        start local 5 // org.jruby.ir.operands.Variable v
         7: .line 2167
            aload 0 /* this */
            aload 5 /* v */
            iload 2 /* argIndex */
            aload 3 /* signature */
            invokevirtual org.jruby.ir.IRBuilder.addArgReceiveInstr:(Lorg/jruby/ir/operands/Variable;ILorg/jruby/runtime/Signature;)V
         8: .line 2168
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 9
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.anonreq:Lorg/jruby/runtime/ArgumentType;
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
         9: .line 2169
      StackMap locals: org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 6 /* tmp */
        start local 6 // org.jruby.ir.operands.Variable tmp
        10: .line 2170
            aload 0 /* this */
            new org.jruby.ir.instructions.ToAryInstr
            dup
            aload 6 /* tmp */
            aload 5 /* v */
            invokespecial org.jruby.ir.instructions.ToAryInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 2171
            aload 0 /* this */
            aload 4 /* childNode */
            aload 6 /* tmp */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19Assignment:(Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
        12: .line 2172
            goto 14
        end local 6 // org.jruby.ir.operands.Variable tmp
        end local 5 // org.jruby.ir.operands.Variable v
        end local 4 // org.jruby.ast.MultipleAsgnNode childNode
        13: .line 2174
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't build assignment node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 2176
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.runtime.Signature signature
        end local 2 // int argIndex
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lorg/jruby/ir/IRBuilder;
            0   15     1       node  Lorg/jruby/ast/Node;
            0   15     2   argIndex  I
            0   15     3  signature  Lorg/jruby/runtime/Signature;
            2    5     4    argName  Lorg/jruby/RubySymbol;
            6   13     4  childNode  Lorg/jruby/ast/MultipleAsgnNode;
            7   13     5          v  Lorg/jruby/ir/operands/Variable;
           10   13     6        tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
           Name  Flags
      node       
      argIndex   
      signature  

  protected void receiveNonBlockArgs(org.jruby.ast.ArgsNode);
    descriptor: (Lorg/jruby/ast/ArgsNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=13, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsNode argsNode
         0: .line 2179
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getSignature:()Lorg/jruby/runtime/Signature;
            astore 2 /* signature */
        start local 2 // org.jruby.runtime.Signature signature
         1: .line 2182
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 6
         2: .line 2189
            aload 0 /* this */
            new org.jruby.ir.instructions.CheckArityInstr
            dup
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.required:()I
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.hasRest:()Z
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.hasKwargs:()Z
         3: .line 2190
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.keyRest:()I
            invokespecial org.jruby.ir.instructions.CheckArityInstr.<init>:(IIZZI)V
         4: .line 2189
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2191
            goto 10
      StackMap locals: org.jruby.runtime.Signature
      StackMap stack:
         6: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClosure
            ifeq 10
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.hasKwargs:()Z
            ifeq 10
         7: .line 2194
            aload 0 /* this */
            new org.jruby.ir.instructions.CheckArityInstr
            dup
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.required:()I
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.hasRest:()Z
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.hasKwargs:()Z
         8: .line 2195
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.keyRest:()I
            invokespecial org.jruby.ir.instructions.CheckArityInstr.<init>:(IIZZI)V
         9: .line 2194
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 2199
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* argIndex */
        start local 3 // int argIndex
        11: .line 2202
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getArgs:()[Lorg/jruby/ast/Node;
            astore 4 /* args */
        start local 4 // org.jruby.ast.Node[] args
        12: .line 2203
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.pre:()I
            istore 5 /* preCount */
        start local 5 // int preCount
        13: .line 2204
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        14: goto 17
        15: .line 2205
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.runtime.Signature int org.jruby.ast.Node[] int int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* args */
            iload 6 /* i */
            aaload
            iload 3 /* argIndex */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.receiveRequiredArg:(Lorg/jruby/ast/Node;ILorg/jruby/runtime/Signature;)V
        16: .line 2204
            iinc 6 /* i */ 1
            iinc 3 /* argIndex */ 1
      StackMap locals:
      StackMap stack:
        17: iload 6 /* i */
            iload 5 /* preCount */
            if_icmplt 15
        end local 6 // int i
        18: .line 2209
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            ifle 19
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            goto 20
      StackMap locals:
      StackMap stack:
        19: iconst_0
      StackMap locals:
      StackMap stack: int
        20: istore 6 /* opt */
        start local 6 // int opt
        21: .line 2212
            iload 6 /* opt */
            ifle 37
        22: .line 2213
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getOptArgIndex:()I
            istore 7 /* optIndex */
        start local 7 // int optIndex
        23: .line 2214
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        24: goto 36
        25: .line 2216
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 9 /* variableAssigned */
        start local 9 // org.jruby.ir.operands.Label variableAssigned
        26: .line 2217
            aload 4 /* args */
            iload 7 /* optIndex */
            iload 8 /* j */
            iadd
            aaload
            checkcast org.jruby.ast.OptArgNode
            astore 10 /* optArg */
        start local 10 // org.jruby.ast.OptArgNode optArg
        27: .line 2218
            aload 10 /* optArg */
            invokevirtual org.jruby.ast.OptArgNode.getName:()Lorg/jruby/RubySymbol;
            astore 11 /* argName */
        start local 11 // org.jruby.RubySymbol argName
        28: .line 2219
            aload 0 /* this */
            aload 11 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.argumentResult:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Variable;
            astore 12 /* argVar */
        start local 12 // org.jruby.ir.operands.Variable argVar
        29: .line 2220
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 30
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.opt:Lorg/jruby/runtime/ArgumentType;
            aload 11 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
        30: .line 2222
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.runtime.Signature int org.jruby.ast.Node[] int int int int org.jruby.ir.operands.Label org.jruby.ast.OptArgNode org.jruby.RubySymbol org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveOptArgInstr
            dup
            aload 12 /* argVar */
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.required:()I
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.pre:()I
            iload 8 /* j */
            invokespecial org.jruby.ir.instructions.ReceiveOptArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        31: .line 2223
            aload 0 /* this */
            aload 9 /* variableAssigned */
            aload 12 /* argVar */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            invokestatic org.jruby.ir.instructions.BNEInstr.create:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/BranchInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        32: .line 2226
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 12 /* argVar */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        33: .line 2229
            aload 0 /* this */
            aload 10 /* optArg */
            invokevirtual org.jruby.ast.OptArgNode.getValue:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
        34: .line 2230
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 9 /* variableAssigned */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 12 // org.jruby.ir.operands.Variable argVar
        end local 11 // org.jruby.RubySymbol argName
        end local 10 // org.jruby.ast.OptArgNode optArg
        end local 9 // org.jruby.ir.operands.Label variableAssigned
        35: .line 2214
            iinc 8 /* j */ 1
            iinc 3 /* argIndex */ 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.runtime.Signature int org.jruby.ast.Node[] int int int int
      StackMap stack:
        36: iload 8 /* j */
            iload 6 /* opt */
            if_icmplt 25
        end local 8 // int j
        end local 7 // int optIndex
        37: .line 2235
      StackMap locals:
      StackMap stack:
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.hasRest:()Z
            ifeq 50
        38: .line 2239
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getRestArgNode:()Lorg/jruby/ast/RestArgNode;
            astore 7 /* restArgNode */
        start local 7 // org.jruby.ast.RestArgNode restArgNode
        39: .line 2240
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 45
        40: .line 2241
            aload 0 /* this */
            aload 7 /* restArgNode */
            invokevirtual org.jruby.ast.RestArgNode.isAnonymous:()Z
            ifeq 42
        41: .line 2242
            getstatic org.jruby.runtime.ArgumentType.anonrest:Lorg/jruby/runtime/ArgumentType;
            goto 43
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.runtime.Signature int org.jruby.ast.Node[] int int org.jruby.ast.RestArgNode
      StackMap stack: org.jruby.ir.IRBuilder
        42: getstatic org.jruby.runtime.ArgumentType.rest:Lorg/jruby/runtime/ArgumentType;
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.runtime.Signature int org.jruby.ast.Node[] int int org.jruby.ast.RestArgNode
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.runtime.ArgumentType
        43: aload 7 /* restArgNode */
            invokevirtual org.jruby.ast.RestArgNode.getName:()Lorg/jruby/RubySymbol;
        44: .line 2241
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
        45: .line 2245
      StackMap locals:
      StackMap stack:
            aload 7 /* restArgNode */
            invokevirtual org.jruby.ast.RestArgNode.isAnonymous:()Z
            ifeq 47
        46: .line 2246
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            getstatic org.jruby.util.CommonByteLists.STAR:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            goto 48
      StackMap locals:
      StackMap stack:
        47: aload 7 /* restArgNode */
            invokevirtual org.jruby.ast.RestArgNode.getName:()Lorg/jruby/RubySymbol;
        48: .line 2245
      StackMap locals:
      StackMap stack: org.jruby.RubySymbol
            astore 8 /* argName */
        start local 8 // org.jruby.RubySymbol argName
        49: .line 2251
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveRestArgInstr
            dup
            aload 0 /* this */
            aload 8 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.argumentResult:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Variable;
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.required:()I
            iload 6 /* opt */
            iadd
            iload 3 /* argIndex */
            invokespecial org.jruby.ir.instructions.ReceiveRestArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;II)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 8 // org.jruby.RubySymbol argName
        end local 7 // org.jruby.ast.RestArgNode restArgNode
        50: .line 2255
      StackMap locals:
      StackMap stack:
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getPostCount:()I
            istore 7 /* postCount */
        start local 7 // int postCount
        51: .line 2256
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getPostIndex:()I
            istore 8 /* postIndex */
        start local 8 // int postIndex
        52: .line 2257
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        53: goto 56
        54: .line 2258
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* args */
            iload 8 /* postIndex */
            iload 9 /* i */
            iadd
            aaload
            iload 9 /* i */
            aload 2 /* signature */
            invokevirtual org.jruby.ir.IRBuilder.receiveRequiredArg:(Lorg/jruby/ast/Node;ILorg/jruby/runtime/Signature;)V
        55: .line 2257
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        56: iload 9 /* i */
            iload 7 /* postCount */
            if_icmplt 54
        end local 9 // int i
        57: .line 2260
            return
        end local 8 // int postIndex
        end local 7 // int postCount
        end local 6 // int opt
        end local 5 // int preCount
        end local 4 // org.jruby.ast.Node[] args
        end local 3 // int argIndex
        end local 2 // org.jruby.runtime.Signature signature
        end local 1 // org.jruby.ast.ArgsNode argsNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   58     0              this  Lorg/jruby/ir/IRBuilder;
            0   58     1          argsNode  Lorg/jruby/ast/ArgsNode;
            1   58     2         signature  Lorg/jruby/runtime/Signature;
           11   58     3          argIndex  I
           12   58     4              args  [Lorg/jruby/ast/Node;
           13   58     5          preCount  I
           14   18     6                 i  I
           21   58     6               opt  I
           23   37     7          optIndex  I
           24   37     8                 j  I
           26   35     9  variableAssigned  Lorg/jruby/ir/operands/Label;
           27   35    10            optArg  Lorg/jruby/ast/OptArgNode;
           28   35    11           argName  Lorg/jruby/RubySymbol;
           29   35    12            argVar  Lorg/jruby/ir/operands/Variable;
           39   50     7       restArgNode  Lorg/jruby/ast/RestArgNode;
           49   50     8           argName  Lorg/jruby/RubySymbol;
           51   58     7         postCount  I
           52   58     8         postIndex  I
           53   57     9                 i  I
    MethodParameters:
          Name  Flags
      argsNode  final

  protected void receiveBlockArg(org.jruby.ast.ArgsNode);
    descriptor: (Lorg/jruby/ast/ArgsNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsNode argsNode
         0: .line 2270
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getBlock:()Lorg/jruby/ast/BlockArgNode;
            astore 2 /* blockArg */
        start local 2 // org.jruby.ast.BlockArgNode blockArg
         1: .line 2271
            aload 2 /* blockArg */
            ifnull 8
         2: .line 2272
            aload 2 /* blockArg */
            invokevirtual org.jruby.ast.BlockArgNode.getName:()Lorg/jruby/RubySymbol;
            astore 3 /* argName */
        start local 3 // org.jruby.RubySymbol argName
         3: .line 2273
            aload 0 /* this */
            aload 3 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.argumentResult:(Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* blockVar */
        start local 4 // org.jruby.ir.operands.Variable blockVar
         4: .line 2274
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 5
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.block:Lorg/jruby/runtime/ArgumentType;
            aload 3 /* argName */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
         5: .line 2275
      StackMap locals: org.jruby.ast.BlockArgNode org.jruby.RubySymbol org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* tmp */
        start local 5 // org.jruby.ir.operands.Variable tmp
         6: .line 2276
            aload 0 /* this */
            new org.jruby.ir.instructions.LoadImplicitClosureInstr
            dup
            aload 5 /* tmp */
            invokespecial org.jruby.ir.instructions.LoadImplicitClosureInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 2277
            aload 0 /* this */
            new org.jruby.ir.instructions.ReifyClosureInstr
            dup
            aload 4 /* blockVar */
            aload 5 /* tmp */
            invokespecial org.jruby.ir.instructions.ReifyClosureInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 5 // org.jruby.ir.operands.Variable tmp
        end local 4 // org.jruby.ir.operands.Variable blockVar
        end local 3 // org.jruby.RubySymbol argName
         8: .line 2279
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.ast.BlockArgNode blockArg
        end local 1 // org.jruby.ast.ArgsNode argsNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/jruby/ir/IRBuilder;
            0    9     1  argsNode  Lorg/jruby/ast/ArgsNode;
            1    9     2  blockArg  Lorg/jruby/ast/BlockArgNode;
            3    8     3   argName  Lorg/jruby/RubySymbol;
            4    8     4  blockVar  Lorg/jruby/ir/operands/Variable;
            6    8     5       tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
          Name  Flags
      argsNode  final

  private void prepareImplicitState();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 2287
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getReceiveSelfInstr:()Lorg/jruby/ir/instructions/ReceiveSelfInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 2290
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifne 2
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMetaClassBody
            ifeq 4
         2: .line 2291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LoadImplicitClosureInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            invokespecial org.jruby.ir.instructions.LoadImplicitClosureInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 2292
            goto 5
         4: .line 2293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LoadFrameClosureInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            invokespecial org.jruby.ir.instructions.LoadFrameClosureInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2295
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/jruby/ir/IRBuilder;

  public void receiveArgs(org.jruby.ast.ArgsNode);
    descriptor: (Lorg/jruby/ast/ArgsNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsNode argsNode
         0: .line 2307
            aload 0 /* this */
            aload 1 /* argsNode */
            invokevirtual org.jruby.ir.IRBuilder.receiveNonBlockArgs:(Lorg/jruby/ast/ArgsNode;)V
         1: .line 2310
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getArgs:()[Lorg/jruby/ast/Node;
            astore 2 /* args */
        start local 2 // org.jruby.ast.Node[] args
         2: .line 2311
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getRequiredArgsCount:()I
            istore 3 /* required */
        start local 3 // int required
         3: .line 2312
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.hasKwargs:()Z
            ifeq 24
         4: .line 2313
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getKeywordsIndex:()I
            istore 4 /* keywordIndex */
        start local 4 // int keywordIndex
         5: .line 2314
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getKeywordCount:()I
            istore 5 /* keywordsCount */
        start local 5 // int keywordsCount
         6: .line 2315
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 23
         8: .line 2316
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.ast.Node[] int int int int
      StackMap stack:
            aload 2 /* args */
            iload 4 /* keywordIndex */
            iload 6 /* i */
            iadd
            aaload
            checkcast org.jruby.ast.KeywordArgNode
            astore 7 /* kwarg */
        start local 7 // org.jruby.ast.KeywordArgNode kwarg
         9: .line 2317
            aload 7 /* kwarg */
            invokevirtual org.jruby.ast.KeywordArgNode.getAssignable:()Lorg/jruby/ast/AssignableNode;
            astore 8 /* kasgn */
        start local 8 // org.jruby.ast.AssignableNode kasgn
        10: .line 2318
            aload 8 /* kasgn */
            checkcast org.jruby.ast.types.INameNode
            invokeinterface org.jruby.ast.types.INameNode.getName:()Lorg/jruby/RubySymbol;
            astore 9 /* key */
        start local 9 // org.jruby.RubySymbol key
        11: .line 2319
            aload 0 /* this */
            aload 9 /* key */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 10 /* av */
        start local 10 // org.jruby.ir.operands.Variable av
        12: .line 2320
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 11 /* l */
        start local 11 // org.jruby.ir.operands.Label l
        13: .line 2321
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 14
            aload 0 /* this */
            aload 8 /* kasgn */
            aload 9 /* key */
            invokevirtual org.jruby.ir.IRBuilder.addKeyArgDesc:(Lorg/jruby/ast/AssignableNode;Lorg/jruby/RubySymbol;)V
        14: .line 2322
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.ast.Node[] int int int int org.jruby.ast.KeywordArgNode org.jruby.ast.AssignableNode org.jruby.RubySymbol org.jruby.ir.operands.Variable org.jruby.ir.operands.Label
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveKeywordArgInstr
            dup
            aload 10 /* av */
            aload 9 /* key */
            iload 3 /* required */
            invokespecial org.jruby.ir.instructions.ReceiveKeywordArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 2323
            aload 0 /* this */
            aload 11 /* l */
            aload 10 /* av */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            invokestatic org.jruby.ir.instructions.BNEInstr.create:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/BranchInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 2326
            aload 0 /* this */
            aload 8 /* kasgn */
            invokevirtual org.jruby.ir.IRBuilder.isRequiredKeywordArgumentValue:(Lorg/jruby/ast/AssignableNode;)Z
            ifne 20
        17: .line 2327
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 10 /* av */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildNil:()Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 2328
            aload 0 /* this */
            aload 8 /* kasgn */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
        19: .line 2329
            goto 21
        20: .line 2330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.RaiseRequiredKeywordArgumentError
            dup
            aload 9 /* key */
            invokespecial org.jruby.ir.instructions.RaiseRequiredKeywordArgumentError.<init>:(Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 2332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 11 /* l */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 11 // org.jruby.ir.operands.Label l
        end local 10 // org.jruby.ir.operands.Variable av
        end local 9 // org.jruby.RubySymbol key
        end local 8 // org.jruby.ast.AssignableNode kasgn
        end local 7 // org.jruby.ast.KeywordArgNode kwarg
        22: .line 2315
            iinc 6 /* i */ 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ArgsNode org.jruby.ast.Node[] int int int int
      StackMap stack:
        23: iload 6 /* i */
            iload 5 /* keywordsCount */
            if_icmplt 8
        end local 6 // int i
        end local 5 // int keywordsCount
        end local 4 // int keywordIndex
        24: .line 2337
      StackMap locals:
      StackMap stack:
            aload 1 /* argsNode */
            invokevirtual org.jruby.ast.ArgsNode.getKeyRest:()Lorg/jruby/ast/KeywordRestArgNode;
            astore 4 /* keyRest */
        start local 4 // org.jruby.ast.KeywordRestArgNode keyRest
        25: .line 2338
            aload 4 /* keyRest */
            ifnull 33
        26: .line 2339
            aload 4 /* keyRest */
            invokevirtual org.jruby.ast.KeywordRestArgNode.getName:()Lorg/jruby/RubySymbol;
            astore 5 /* key */
        start local 5 // org.jruby.RubySymbol key
        27: .line 2340
            getstatic org.jruby.runtime.ArgumentType.keyrest:Lorg/jruby/runtime/ArgumentType;
            astore 6 /* type */
        start local 6 // org.jruby.runtime.ArgumentType type
        28: .line 2343
            aload 5 /* key */
            ifnull 29
            aload 5 /* key */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.realSize:()I
            ifne 30
      StackMap locals: org.jruby.ast.KeywordRestArgNode org.jruby.RubySymbol org.jruby.runtime.ArgumentType
      StackMap stack:
        29: getstatic org.jruby.runtime.ArgumentType.anonkeyrest:Lorg/jruby/runtime/ArgumentType;
            astore 6 /* type */
        30: .line 2345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* key */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 7 /* av */
        start local 7 // org.jruby.ir.operands.Variable av
        31: .line 2346
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 32
            aload 0 /* this */
            aload 6 /* type */
            aload 5 /* key */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
        32: .line 2347
      StackMap locals: org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveKeywordRestArgInstr
            dup
            aload 7 /* av */
            iload 3 /* required */
            invokespecial org.jruby.ir.instructions.ReceiveKeywordRestArgInstr.<init>:(Lorg/jruby/ir/operands/Variable;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 7 // org.jruby.ir.operands.Variable av
        end local 6 // org.jruby.runtime.ArgumentType type
        end local 5 // org.jruby.RubySymbol key
        33: .line 2351
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* argsNode */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArg:(Lorg/jruby/ast/ArgsNode;)V
        34: .line 2352
            return
        end local 4 // org.jruby.ast.KeywordRestArgNode keyRest
        end local 3 // int required
        end local 2 // org.jruby.ast.Node[] args
        end local 1 // org.jruby.ast.ArgsNode argsNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   35     0           this  Lorg/jruby/ir/IRBuilder;
            0   35     1       argsNode  Lorg/jruby/ast/ArgsNode;
            2   35     2           args  [Lorg/jruby/ast/Node;
            3   35     3       required  I
            5   24     4   keywordIndex  I
            6   24     5  keywordsCount  I
            7   24     6              i  I
            9   22     7          kwarg  Lorg/jruby/ast/KeywordArgNode;
           10   22     8          kasgn  Lorg/jruby/ast/AssignableNode;
           11   22     9            key  Lorg/jruby/RubySymbol;
           12   22    10             av  Lorg/jruby/ir/operands/Variable;
           13   22    11              l  Lorg/jruby/ir/operands/Label;
           25   35     4        keyRest  Lorg/jruby/ast/KeywordRestArgNode;
           27   33     5            key  Lorg/jruby/RubySymbol;
           28   33     6           type  Lorg/jruby/runtime/ArgumentType;
           31   33     7             av  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
          Name  Flags
      argsNode  final

  private void addKeyArgDesc(org.jruby.ast.AssignableNode, org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/ast/AssignableNode;Lorg/jruby/RubySymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.AssignableNode kasgn
        start local 2 // org.jruby.RubySymbol key
         0: .line 2355
            aload 0 /* this */
            aload 1 /* kasgn */
            invokevirtual org.jruby.ir.IRBuilder.isRequiredKeywordArgumentValue:(Lorg/jruby/ast/AssignableNode;)Z
            ifeq 3
         1: .line 2356
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.keyreq:Lorg/jruby/runtime/ArgumentType;
            aload 2 /* key */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
         2: .line 2357
            goto 4
         3: .line 2358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.jruby.runtime.ArgumentType.key:Lorg/jruby/runtime/ArgumentType;
            aload 2 /* key */
            invokevirtual org.jruby.ir.IRBuilder.addArgumentDescription:(Lorg/jruby/runtime/ArgumentType;Lorg/jruby/RubySymbol;)V
         4: .line 2360
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.RubySymbol key
        end local 1 // org.jruby.ast.AssignableNode kasgn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/jruby/ir/IRBuilder;
            0    5     1  kasgn  Lorg/jruby/ast/AssignableNode;
            0    5     2    key  Lorg/jruby/RubySymbol;
    MethodParameters:
       Name  Flags
      kasgn  
      key    

  private boolean isRequiredKeywordArgumentValue(org.jruby.ast.AssignableNode);
    descriptor: (Lorg/jruby/ast/AssignableNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.AssignableNode kasgn
         0: .line 2363
            aload 1 /* kasgn */
            invokevirtual org.jruby.ast.AssignableNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            getstatic org.jruby.ast.NodeType.REQUIRED_KEYWORD_ARGUMENT_VALUE:Lorg/jruby/ast/NodeType;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.jruby.ast.AssignableNode kasgn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRBuilder;
            0    2     1  kasgn  Lorg/jruby/ast/AssignableNode;
    MethodParameters:
       Name  Flags
      kasgn  

  public void buildArgsMasgn(org.jruby.ast.Node, org.jruby.ir.operands.Operand, boolean, int, int, int, boolean);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;ZIIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=11, args_size=8
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
        start local 2 // org.jruby.ir.operands.Operand argsArray
        start local 3 // boolean isMasgnRoot
        start local 4 // int preArgsCount
        start local 5 // int postArgsCount
        start local 6 // int index
        start local 7 // boolean isSplat
         0: .line 2369
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 3
                   26: 1
                   53: 6
                  105: 11
              default: 21
          }
         1: .line 2371
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.DAsgnNode
            astore 9 /* dynamicAsgn */
        start local 9 // org.jruby.ast.DAsgnNode dynamicAsgn
         2: .line 2372
            aload 0 /* this */
            aload 9 /* dynamicAsgn */
            invokevirtual org.jruby.ast.DAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 9 /* dynamicAsgn */
            invokevirtual org.jruby.ast.DAsgnNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getArgVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 8 /* v */
        start local 8 // org.jruby.ir.operands.Variable v
         3: .line 2373
            iload 7 /* isSplat */
            ifeq 4
            aload 0 /* this */
            new org.jruby.ir.instructions.RestArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.RestArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
            goto 22
         4: .line 2374
      StackMap locals: org.jruby.ir.operands.Variable org.jruby.ast.DAsgnNode
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2375
            goto 22
        end local 9 // org.jruby.ast.DAsgnNode dynamicAsgn
        end local 8 // org.jruby.ir.operands.Variable v
         6: .line 2378
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.LocalAsgnNode
            astore 9 /* localVariable */
        start local 9 // org.jruby.ast.LocalAsgnNode localVariable
         7: .line 2379
            aload 0 /* this */
            aload 9 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 9 /* localVariable */
            invokevirtual org.jruby.ast.LocalAsgnNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getArgVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 8 /* v */
        start local 8 // org.jruby.ir.operands.Variable v
         8: .line 2380
            iload 7 /* isSplat */
            ifeq 9
            aload 0 /* this */
            new org.jruby.ir.instructions.RestArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.RestArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
            goto 22
         9: .line 2381
      StackMap locals: org.jruby.ir.operands.Variable org.jruby.ast.LocalAsgnNode
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 2382
            goto 22
        end local 9 // org.jruby.ast.LocalAsgnNode localVariable
        end local 8 // org.jruby.ir.operands.Variable v
        11: .line 2385
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.MultipleAsgnNode
            astore 9 /* childNode */
        start local 9 // org.jruby.ast.MultipleAsgnNode childNode
        12: .line 2386
            iload 3 /* isMasgnRoot */
            ifne 19
        13: .line 2387
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 8 /* v */
        start local 8 // org.jruby.ir.operands.Variable v
        14: .line 2388
            iload 7 /* isSplat */
            ifeq 15
            aload 0 /* this */
            new org.jruby.ir.instructions.RestArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.RestArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
            goto 16
        15: .line 2389
      StackMap locals: org.jruby.ir.operands.Variable org.jruby.ast.MultipleAsgnNode
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 8 /* v */
            aload 2 /* argsArray */
            iload 4 /* preArgsCount */
            iload 5 /* postArgsCount */
            iload 6 /* index */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 2390
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 10 /* tmp */
        start local 10 // org.jruby.ir.operands.Variable tmp
        17: .line 2391
            aload 0 /* this */
            new org.jruby.ir.instructions.ToAryInstr
            dup
            aload 10 /* tmp */
            aload 8 /* v */
            invokespecial org.jruby.ir.instructions.ToAryInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 2392
            aload 10 /* tmp */
            astore 2 /* argsArray */
        end local 10 // org.jruby.ir.operands.Variable tmp
        end local 8 // org.jruby.ir.operands.Variable v
        19: .line 2395
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ir.operands.Operand int int int int int top org.jruby.ast.MultipleAsgnNode
      StackMap stack:
            aload 0 /* this */
            aload 9 /* childNode */
            aload 2 /* argsArray */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.buildMultipleAsgn19Assignment:(Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
        20: .line 2396
            goto 22
        end local 9 // org.jruby.ast.MultipleAsgnNode childNode
        21: .line 2399
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ir.operands.Operand int int int int int
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Shouldn't get here: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 2401
      StackMap locals:
      StackMap stack:
            return
        end local 7 // boolean isSplat
        end local 6 // int index
        end local 5 // int postArgsCount
        end local 4 // int preArgsCount
        end local 3 // boolean isMasgnRoot
        end local 2 // org.jruby.ir.operands.Operand argsArray
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lorg/jruby/ir/IRBuilder;
            0   23     1           node  Lorg/jruby/ast/Node;
            0   23     2      argsArray  Lorg/jruby/ir/operands/Operand;
            0   23     3    isMasgnRoot  Z
            0   23     4   preArgsCount  I
            0   23     5  postArgsCount  I
            0   23     6          index  I
            0   23     7        isSplat  Z
            3    6     8              v  Lorg/jruby/ir/operands/Variable;
            8   11     8              v  Lorg/jruby/ir/operands/Variable;
           14   19     8              v  Lorg/jruby/ir/operands/Variable;
            2    6     9    dynamicAsgn  Lorg/jruby/ast/DAsgnNode;
            7   11     9  localVariable  Lorg/jruby/ast/LocalAsgnNode;
           12   21     9      childNode  Lorg/jruby/ast/MultipleAsgnNode;
           17   19    10            tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
               Name  Flags
      node           
      argsArray      
      isMasgnRoot    
      preArgsCount   
      postArgsCount  
      index          
      isSplat        

  public void buildMultipleAsgn19Assignment(org.jruby.ast.MultipleAsgnNode, org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ast/MultipleAsgnNode;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=16, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.MultipleAsgnNode multipleAsgnNode
        start local 2 // org.jruby.ir.operands.Operand argsArray
        start local 3 // org.jruby.ir.operands.Operand values
         0: .line 2408
            aload 1 /* multipleAsgnNode */
            invokevirtual org.jruby.ast.MultipleAsgnNode.getPre:()Lorg/jruby/ast/ListNode;
            astore 4 /* masgnPre */
        start local 4 // org.jruby.ast.ListNode masgnPre
         1: .line 2409
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* assigns */
        start local 5 // java.util.List assigns
         2: .line 2412
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: .line 2413
            aload 4 /* masgnPre */
            ifnull 15
         4: .line 2414
            aload 4 /* masgnPre */
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 14
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int top int int org.jruby.ast.Node[]
      StackMap stack:
         5: aload 10
            iload 8
            aaload
            astore 7 /* an */
        start local 7 // org.jruby.ast.Node an
         6: .line 2415
            aload 3 /* values */
            ifnonnull 9
         7: .line 2416
            aload 0 /* this */
            aload 7 /* an */
            aload 2 /* argsArray */
            iconst_0
            iconst_m1
            iconst_m1
            iload 6 /* i */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildArgsMasgn:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;ZIIIZ)V
         8: .line 2417
            goto 12
         9: .line 2418
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int int org.jruby.ast.Node[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 11 /* rhsVal */
        start local 11 // org.jruby.ir.operands.Variable rhsVal
        10: .line 2419
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 11 /* rhsVal */
            aload 3 /* values */
            iload 6 /* i */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 2420
            aload 5 /* assigns */
            new org.jruby.ir.Tuple
            dup
            aload 7 /* an */
            aload 11 /* rhsVal */
            invokespecial org.jruby.ir.Tuple.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // org.jruby.ir.operands.Variable rhsVal
        12: .line 2422
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
        end local 7 // org.jruby.ast.Node an
        13: .line 2414
            iinc 8 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int top int int org.jruby.ast.Node[]
      StackMap stack:
        14: iload 8
            iload 9
            if_icmplt 5
        15: .line 2427
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int
      StackMap stack:
            aload 1 /* multipleAsgnNode */
            invokevirtual org.jruby.ast.MultipleAsgnNode.getRest:()Lorg/jruby/ast/Node;
            astore 7 /* restNode */
        start local 7 // org.jruby.ast.Node restNode
        16: .line 2428
            aload 1 /* multipleAsgnNode */
            invokevirtual org.jruby.ast.MultipleAsgnNode.getPostCount:()I
            istore 8 /* postArgsCount */
        start local 8 // int postArgsCount
        17: .line 2429
            aload 7 /* restNode */
            ifnull 24
            aload 7 /* restNode */
            instanceof org.jruby.ast.StarNode
            ifne 24
        18: .line 2430
            aload 3 /* values */
            ifnonnull 21
        19: .line 2431
            aload 0 /* this */
            aload 7 /* restNode */
            aload 2 /* argsArray */
            iconst_0
            iload 6 /* i */
            iload 8 /* postArgsCount */
            iconst_0
            iconst_1
            invokevirtual org.jruby.ir.IRBuilder.buildArgsMasgn:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;ZIIIZ)V
        20: .line 2432
            goto 24
        21: .line 2433
      StackMap locals: org.jruby.ast.Node int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 9 /* rhsVal */
        start local 9 // org.jruby.ir.operands.Variable rhsVal
        22: .line 2434
            aload 0 /* this */
            new org.jruby.ir.instructions.RestArgMultipleAsgnInstr
            dup
            aload 9 /* rhsVal */
            aload 3 /* values */
            iload 6 /* i */
            iload 8 /* postArgsCount */
            iconst_0
            invokespecial org.jruby.ir.instructions.RestArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 2435
            aload 5 /* assigns */
            new org.jruby.ir.Tuple
            dup
            aload 7 /* restNode */
            aload 9 /* rhsVal */
            invokespecial org.jruby.ir.Tuple.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // org.jruby.ir.operands.Variable rhsVal
        24: .line 2440
      StackMap locals:
      StackMap stack:
            aload 1 /* multipleAsgnNode */
            invokevirtual org.jruby.ast.MultipleAsgnNode.getPost:()Lorg/jruby/ast/ListNode;
            astore 9 /* masgnPost */
        start local 9 // org.jruby.ast.ListNode masgnPost
        25: .line 2441
            aload 9 /* masgnPost */
            ifnull 38
        26: .line 2442
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        27: .line 2443
            aload 9 /* masgnPost */
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            dup
            astore 14
            arraylength
            istore 13
            iconst_0
            istore 12
            goto 37
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int org.jruby.ast.ListNode int top int int org.jruby.ast.Node[]
      StackMap stack:
        28: aload 14
            iload 12
            aaload
            astore 11 /* an */
        start local 11 // org.jruby.ast.Node an
        29: .line 2444
            aload 3 /* values */
            ifnonnull 32
        30: .line 2445
            aload 0 /* this */
            aload 11 /* an */
            aload 2 /* argsArray */
            iconst_0
            iload 6 /* i */
            iload 8 /* postArgsCount */
            iload 10 /* j */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildArgsMasgn:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;ZIIIZ)V
        31: .line 2446
            goto 35
        32: .line 2447
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int org.jruby.ast.ListNode int org.jruby.ast.Node int int org.jruby.ast.Node[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 15 /* rhsVal */
        start local 15 // org.jruby.ir.operands.Variable rhsVal
        33: .line 2448
            aload 0 /* this */
            new org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr
            dup
            aload 15 /* rhsVal */
            aload 3 /* values */
            iload 6 /* i */
            iload 8 /* postArgsCount */
            iload 10 /* j */
            invokespecial org.jruby.ir.instructions.ReqdArgMultipleAsgnInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;III)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        34: .line 2449
            aload 5 /* assigns */
            new org.jruby.ir.Tuple
            dup
            aload 11 /* an */
            aload 15 /* rhsVal */
            invokespecial org.jruby.ir.Tuple.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 15 // org.jruby.ir.operands.Variable rhsVal
        35: .line 2451
      StackMap locals:
      StackMap stack:
            iinc 10 /* j */ 1
        end local 11 // org.jruby.ast.Node an
        36: .line 2443
            iinc 12 1
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int org.jruby.ast.ListNode int top int int org.jruby.ast.Node[]
      StackMap stack:
        37: iload 12
            iload 13
            if_icmplt 28
        end local 10 // int j
        38: .line 2455
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int org.jruby.ast.ListNode
      StackMap stack:
            aload 5 /* assigns */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 41
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.MultipleAsgnNode org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.ListNode java.util.List int org.jruby.ast.Node int org.jruby.ast.ListNode top java.util.Iterator
      StackMap stack:
        39: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.Tuple
            astore 10 /* assign */
        start local 10 // org.jruby.ir.Tuple assign
        40: .line 2456
            aload 0 /* this */
            aload 10 /* assign */
            getfield org.jruby.ir.Tuple.a:Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            aload 10 /* assign */
            getfield org.jruby.ir.Tuple.b:Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Variable
            invokevirtual org.jruby.ir.IRBuilder.buildAssignment:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;)V
        end local 10 // org.jruby.ir.Tuple assign
        41: .line 2455
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 39
        42: .line 2458
            return
        end local 9 // org.jruby.ast.ListNode masgnPost
        end local 8 // int postArgsCount
        end local 7 // org.jruby.ast.Node restNode
        end local 6 // int i
        end local 5 // java.util.List assigns
        end local 4 // org.jruby.ast.ListNode masgnPre
        end local 3 // org.jruby.ir.operands.Operand values
        end local 2 // org.jruby.ir.operands.Operand argsArray
        end local 1 // org.jruby.ast.MultipleAsgnNode multipleAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   43     0              this  Lorg/jruby/ir/IRBuilder;
            0   43     1  multipleAsgnNode  Lorg/jruby/ast/MultipleAsgnNode;
            0   43     2         argsArray  Lorg/jruby/ir/operands/Operand;
            0   43     3            values  Lorg/jruby/ir/operands/Operand;
            1   43     4          masgnPre  Lorg/jruby/ast/ListNode;
            2   43     5           assigns  Ljava/util/List<Lorg/jruby/ir/Tuple<Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;>;>;
            3   43     6                 i  I
            6   13     7                an  Lorg/jruby/ast/Node;
           10   12    11            rhsVal  Lorg/jruby/ir/operands/Variable;
           16   43     7          restNode  Lorg/jruby/ast/Node;
           17   43     8     postArgsCount  I
           22   24     9            rhsVal  Lorg/jruby/ir/operands/Variable;
           25   43     9         masgnPost  Lorg/jruby/ast/ListNode;
           27   38    10                 j  I
           29   36    11                an  Lorg/jruby/ast/Node;
           33   35    15            rhsVal  Lorg/jruby/ir/operands/Variable;
           40   41    10            assign  Lorg/jruby/ir/Tuple<Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;>;
    MethodParameters:
                  Name  Flags
      multipleAsgnNode  final
      argsArray         
      values            

  private void handleBreakAndReturnsInLambdas();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=5, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 2461
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 1 /* rEndLabel */
        start local 1 // org.jruby.ir.operands.Label rEndLabel
         1: .line 2462
            invokestatic org.jruby.ir.operands.Label.getGlobalEnsureBlockLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* rescueLabel */
        start local 2 // org.jruby.ir.operands.Label rescueLabel
         2: .line 2465
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 2 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstrAtBeginning:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 2466
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 2469
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 2470
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* exc */
        start local 3 // org.jruby.ir.operands.Variable exc
         6: .line 2471
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveJRubyExceptionInstr
            dup
            aload 3 /* exc */
            invokespecial org.jruby.ir.instructions.ReceiveJRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 2475
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* ret */
        start local 4 // org.jruby.ir.operands.Variable ret
         8: .line 2476
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 4 /* ret */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.HANDLE_BREAK_AND_RETURNS_IN_LAMBDA:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 3 /* exc */
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 2477
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnOrRethrowSavedExcInstr
            dup
            aload 4 /* ret */
            invokespecial org.jruby.ir.instructions.ReturnOrRethrowSavedExcInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 2480
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 1 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 2481
            return
        end local 4 // org.jruby.ir.operands.Variable ret
        end local 3 // org.jruby.ir.operands.Variable exc
        end local 2 // org.jruby.ir.operands.Label rescueLabel
        end local 1 // org.jruby.ir.operands.Label rEndLabel
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/jruby/ir/IRBuilder;
            1   12     1    rEndLabel  Lorg/jruby/ir/operands/Label;
            2   12     2  rescueLabel  Lorg/jruby/ir/operands/Label;
            6   12     3          exc  Lorg/jruby/ir/operands/Variable;
            8   12     4          ret  Lorg/jruby/ir/operands/Variable;

  public void receiveMethodArgs(org.jruby.ast.ArgsNode);
    descriptor: (Lorg/jruby/ast/ArgsNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ArgsNode argsNode
         0: .line 2484
            aload 0 /* this */
            aload 1 /* argsNode */
            invokevirtual org.jruby.ir.IRBuilder.receiveArgs:(Lorg/jruby/ast/ArgsNode;)V
         1: .line 2485
            return
        end local 1 // org.jruby.ast.ArgsNode argsNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ir/IRBuilder;
            0    2     1  argsNode  Lorg/jruby/ast/ArgsNode;
    MethodParameters:
          Name  Flags
      argsNode  final

  public void receiveBlockArgs(org.jruby.ast.IterNode);
    descriptor: (Lorg/jruby/ast/IterNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.IterNode node
         0: .line 2488
            aload 1 /* node */
            invokevirtual org.jruby.ast.IterNode.getVarNode:()Lorg/jruby/ast/Node;
            astore 2 /* args */
        start local 2 // org.jruby.ast.Node args
         1: .line 2489
            aload 2 /* args */
            instanceof org.jruby.ast.ArgsNode
            ifeq 5
         2: .line 2490
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            checkcast org.jruby.ir.IRClosure
            aload 2 /* args */
            checkcast org.jruby.ast.ArgsNode
            invokestatic org.jruby.runtime.Helpers.argsNodeToArgumentDescriptors:(Lorg/jruby/ast/ArgsNode;)[Lorg/jruby/runtime/ArgumentDescriptor;
            invokevirtual org.jruby.ir.IRClosure.setArgumentDescriptors:([Lorg/jruby/runtime/ArgumentDescriptor;)V
         3: .line 2491
            aload 0 /* this */
            aload 2 /* args */
            checkcast org.jruby.ast.ArgsNode
            invokevirtual org.jruby.ir.IRBuilder.receiveArgs:(Lorg/jruby/ast/ArgsNode;)V
         4: .line 2492
            goto 6
         5: .line 2494
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
            aload 2 /* args */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildBlockArgsAssignment:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Operand;IZ)V
         6: .line 2496
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.ast.Node args
        end local 1 // org.jruby.ast.IterNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/jruby/ir/IRBuilder;
            0    7     1  node  Lorg/jruby/ast/IterNode;
            1    7     2  args  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      node  final

  public org.jruby.ir.operands.Operand buildDot(org.jruby.ast.DotNode);
    descriptor: (Lorg/jruby/ast/DotNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.DotNode dotNode
         0: .line 2499
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildRangeInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            aload 1 /* dotNode */
            invokevirtual org.jruby.ast.DotNode.getBeginNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
         1: .line 2500
            aload 0 /* this */
            aload 1 /* dotNode */
            invokevirtual org.jruby.ast.DotNode.getEndNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 1 /* dotNode */
            invokevirtual org.jruby.ast.DotNode.isExclusive:()Z
            invokespecial org.jruby.ir.instructions.BuildRangeInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
         2: .line 2499
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.DotNode dotNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ir/IRBuilder;
            0    3     1  dotNode  Lorg/jruby/ast/DotNode;
    MethodParameters:
         Name  Flags
      dotNode  final

  private org.jruby.ir.operands.Operand dynamicPiece(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node pieceNode
         0: .line 2504
            aload 1 /* pieceNode */
            instanceof org.jruby.ast.StrNode
            ifeq 1
            aload 0 /* this */
            aload 1 /* pieceNode */
            checkcast org.jruby.ast.StrNode
            invokevirtual org.jruby.ir.IRBuilder.buildStrRaw:(Lorg/jruby/ast/StrNode;)Lorg/jruby/ir/operands/Operand;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            aload 1 /* pieceNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         2: astore 2 /* piece */
        start local 2 // org.jruby.ir.operands.Operand piece
         3: .line 2506
            aload 2 /* piece */
            instanceof org.jruby.ir.operands.StringLiteral
            ifeq 5
         4: .line 2507
            aload 2 /* piece */
            checkcast org.jruby.ir.operands.StringLiteral
            getfield org.jruby.ir.operands.StringLiteral.frozenString:Lorg/jruby/ir/operands/FrozenString;
            astore 2 /* piece */
         5: .line 2510
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 2 /* piece */
            ifnonnull 6
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            goto 7
      StackMap locals:
      StackMap stack:
         6: aload 2 /* piece */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         7: areturn
        end local 2 // org.jruby.ir.operands.Operand piece
        end local 1 // org.jruby.ast.Node pieceNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jruby/ir/IRBuilder;
            0    8     1  pieceNode  Lorg/jruby/ast/Node;
            3    8     2      piece  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      pieceNode  

  public org.jruby.ir.operands.Operand buildDRegexp(org.jruby.ir.operands.Variable, org.jruby.ast.DRegexpNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DRegexpNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.DRegexpNode node
         0: .line 2514
            aload 2 /* node */
            invokevirtual org.jruby.ast.DRegexpNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* nodePieces */
        start local 3 // org.jruby.ast.Node[] nodePieces
         1: .line 2515
            aload 3 /* nodePieces */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* pieces */
        start local 4 // org.jruby.ir.operands.Operand[] pieces
         2: .line 2516
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 2517
      StackMap locals: org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int
      StackMap stack:
            aload 4 /* pieces */
            iload 5 /* i */
            aload 0 /* this */
            aload 3 /* nodePieces */
            iload 5 /* i */
            aaload
            invokevirtual org.jruby.ir.IRBuilder.dynamicPiece:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aastore
         5: .line 2516
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 4 /* pieces */
            arraylength
            if_icmplt 4
        end local 5 // int i
         7: .line 2520
            aload 1 /* result */
            ifnonnull 8
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         8: .line 2521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildDynRegExpInstr
            dup
            aload 1 /* result */
            aload 4 /* pieces */
            aload 2 /* node */
            invokevirtual org.jruby.ast.DRegexpNode.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokespecial org.jruby.ir.instructions.BuildDynRegExpInstr.<init>:(Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/util/RegexpOptions;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 2522
            aload 1 /* result */
            areturn
        end local 4 // org.jruby.ir.operands.Operand[] pieces
        end local 3 // org.jruby.ast.Node[] nodePieces
        end local 2 // org.jruby.ast.DRegexpNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/ir/IRBuilder;
            0   10     1      result  Lorg/jruby/ir/operands/Variable;
            0   10     2        node  Lorg/jruby/ast/DRegexpNode;
            1   10     3  nodePieces  [Lorg/jruby/ast/Node;
            2   10     4      pieces  [Lorg/jruby/ir/operands/Operand;
            3    7     5           i  I
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildDStr(org.jruby.ir.operands.Variable, org.jruby.ast.DStrNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DStrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=6, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.DStrNode node
         0: .line 2526
            aload 2 /* node */
            invokevirtual org.jruby.ast.DStrNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* nodePieces */
        start local 3 // org.jruby.ast.Node[] nodePieces
         1: .line 2527
            aload 3 /* nodePieces */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* pieces */
        start local 4 // org.jruby.ir.operands.Operand[] pieces
         2: .line 2528
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 2529
      StackMap locals: org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int
      StackMap stack:
            aload 4 /* pieces */
            iload 5 /* i */
            aload 0 /* this */
            aload 3 /* nodePieces */
            iload 5 /* i */
            aaload
            invokevirtual org.jruby.ir.IRBuilder.dynamicPiece:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aastore
         5: .line 2528
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 4 /* pieces */
            arraylength
            if_icmplt 4
        end local 5 // int i
         7: .line 2532
            aload 1 /* result */
            ifnonnull 8
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         8: .line 2533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isDebuggingFrozenStringLiteral:()Z
            istore 5 /* debuggingFrozenStringLiteral */
        start local 5 // boolean debuggingFrozenStringLiteral
         9: .line 2534
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundStringInstr
            dup
            aload 1 /* result */
            aload 4 /* pieces */
            aload 2 /* node */
            invokevirtual org.jruby.ast.DStrNode.getEncoding:()Lorg/jcodings/Encoding;
            aload 2 /* node */
            invokevirtual org.jruby.ast.DStrNode.isFrozen:()Z
            iload 5 /* debuggingFrozenStringLiteral */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 2 /* node */
            invokevirtual org.jruby.ast.DStrNode.getLine:()I
            invokespecial org.jruby.ir.instructions.BuildCompoundStringInstr.<init>:(Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;Lorg/jcodings/Encoding;ZZLjava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 2535
            aload 1 /* result */
            areturn
        end local 5 // boolean debuggingFrozenStringLiteral
        end local 4 // org.jruby.ir.operands.Operand[] pieces
        end local 3 // org.jruby.ast.Node[] nodePieces
        end local 2 // org.jruby.ast.DStrNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   11     0                          this  Lorg/jruby/ir/IRBuilder;
            0   11     1                        result  Lorg/jruby/ir/operands/Variable;
            0   11     2                          node  Lorg/jruby/ast/DStrNode;
            1   11     3                    nodePieces  [Lorg/jruby/ast/Node;
            2   11     4                        pieces  [Lorg/jruby/ir/operands/Operand;
            3    7     5                             i  I
            9   11     5  debuggingFrozenStringLiteral  Z
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildDSymbol(org.jruby.ir.operands.Variable, org.jruby.ast.DSymbolNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DSymbolNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=6, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.DSymbolNode node
         0: .line 2539
            aload 2 /* node */
            invokevirtual org.jruby.ast.DSymbolNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* nodePieces */
        start local 3 // org.jruby.ast.Node[] nodePieces
         1: .line 2540
            aload 3 /* nodePieces */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* pieces */
        start local 4 // org.jruby.ir.operands.Operand[] pieces
         2: .line 2541
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 2542
      StackMap locals: org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int
      StackMap stack:
            aload 4 /* pieces */
            iload 5 /* i */
            aload 0 /* this */
            aload 3 /* nodePieces */
            iload 5 /* i */
            aaload
            invokevirtual org.jruby.ir.IRBuilder.dynamicPiece:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aastore
         5: .line 2541
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 4 /* pieces */
            arraylength
            if_icmplt 4
        end local 5 // int i
         7: .line 2545
            aload 1 /* result */
            ifnonnull 8
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         8: .line 2546
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isDebuggingFrozenStringLiteral:()Z
            istore 5 /* debuggingFrozenStringLiteral */
        start local 5 // boolean debuggingFrozenStringLiteral
         9: .line 2547
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundStringInstr
            dup
            aload 1 /* result */
            aload 4 /* pieces */
            aload 2 /* node */
            invokevirtual org.jruby.ast.DSymbolNode.getEncoding:()Lorg/jcodings/Encoding;
            iconst_0
            iload 5 /* debuggingFrozenStringLiteral */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 2 /* node */
            invokevirtual org.jruby.ast.DSymbolNode.getLine:()I
            invokespecial org.jruby.ir.instructions.BuildCompoundStringInstr.<init>:(Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;Lorg/jcodings/Encoding;ZZLjava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 2548
            aload 0 /* this */
            new org.jruby.ir.operands.DynamicSymbol
            dup
            aload 1 /* result */
            invokespecial org.jruby.ir.operands.DynamicSymbol.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 5 // boolean debuggingFrozenStringLiteral
        end local 4 // org.jruby.ir.operands.Operand[] pieces
        end local 3 // org.jruby.ast.Node[] nodePieces
        end local 2 // org.jruby.ast.DSymbolNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   11     0                          this  Lorg/jruby/ir/IRBuilder;
            0   11     1                        result  Lorg/jruby/ir/operands/Variable;
            0   11     2                          node  Lorg/jruby/ast/DSymbolNode;
            1   11     3                    nodePieces  [Lorg/jruby/ast/Node;
            2   11     4                        pieces  [Lorg/jruby/ir/operands/Operand;
            3    7     5                             i  I
            9   11     5  debuggingFrozenStringLiteral  Z
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildDVar(org.jruby.ast.DVarNode);
    descriptor: (Lorg/jruby/ast/DVarNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.DVarNode node
         0: .line 2552
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.DVarNode.getName:()Lorg/jruby/RubySymbol;
            aload 1 /* node */
            invokevirtual org.jruby.ast.DVarNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 1 // org.jruby.ast.DVarNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/DVarNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildDXStr(org.jruby.ir.operands.Variable, org.jruby.ast.DXStrNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/DXStrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=7, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.DXStrNode node
         0: .line 2556
            aload 2 /* node */
            invokevirtual org.jruby.ast.DXStrNode.children:()[Lorg/jruby/ast/Node;
            astore 3 /* nodePieces */
        start local 3 // org.jruby.ast.Node[] nodePieces
         1: .line 2557
            aload 3 /* nodePieces */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* pieces */
        start local 4 // org.jruby.ir.operands.Operand[] pieces
         2: .line 2558
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 2559
      StackMap locals: org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] int
      StackMap stack:
            aload 4 /* pieces */
            iload 5 /* i */
            aload 0 /* this */
            aload 3 /* nodePieces */
            iload 5 /* i */
            aaload
            invokevirtual org.jruby.ir.IRBuilder.dynamicPiece:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aastore
         5: .line 2558
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 4 /* pieces */
            arraylength
            if_icmplt 4
        end local 5 // int i
         7: .line 2562
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 5 /* stringResult */
        start local 5 // org.jruby.ir.operands.Variable stringResult
         8: .line 2563
            aload 1 /* result */
            ifnonnull 9
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         9: .line 2564
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.DXStrNode org.jruby.ast.Node[] org.jruby.ir.operands.Operand[] org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isDebuggingFrozenStringLiteral:()Z
            istore 6 /* debuggingFrozenStringLiteral */
        start local 6 // boolean debuggingFrozenStringLiteral
        10: .line 2565
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildCompoundStringInstr
            dup
            aload 5 /* stringResult */
            aload 4 /* pieces */
            aload 2 /* node */
            invokevirtual org.jruby.ast.DXStrNode.getEncoding:()Lorg/jcodings/Encoding;
            iconst_0
            iload 6 /* debuggingFrozenStringLiteral */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 2 /* node */
            invokevirtual org.jruby.ast.DXStrNode.getLine:()I
            invokespecial org.jruby.ir.instructions.BuildCompoundStringInstr.<init>:(Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;Lorg/jcodings/Encoding;ZZLjava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 2566
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            aload 1 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            ldc "`"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            getstatic org.jruby.ir.operands.Self.SELF:Lorg/jruby/ir/operands/Self;
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 5 /* stringResult */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 6 // boolean debuggingFrozenStringLiteral
        end local 5 // org.jruby.ir.operands.Variable stringResult
        end local 4 // org.jruby.ir.operands.Operand[] pieces
        end local 3 // org.jruby.ast.Node[] nodePieces
        end local 2 // org.jruby.ast.DXStrNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   12     0                          this  Lorg/jruby/ir/IRBuilder;
            0   12     1                        result  Lorg/jruby/ir/operands/Variable;
            0   12     2                          node  Lorg/jruby/ast/DXStrNode;
            1   12     3                    nodePieces  [Lorg/jruby/ast/Node;
            2   12     4                        pieces  [Lorg/jruby/ir/operands/Operand;
            3    7     5                             i  I
            8   12     5                  stringResult  Lorg/jruby/ir/operands/Variable;
           10   12     6  debuggingFrozenStringLiteral  Z
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildEnsureNode(org.jruby.ast.EnsureNode);
    descriptor: (Lorg/jruby/ast/EnsureNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.EnsureNode ensureNode
         0: .line 2607
            aload 0 /* this */
            aload 1 /* ensureNode */
            invokevirtual org.jruby.ast.EnsureNode.getBodyNode:()Lorg/jruby/ast/Node;
            aload 1 /* ensureNode */
            invokevirtual org.jruby.ast.EnsureNode.getEnsureNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.buildEnsureInternal:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.EnsureNode ensureNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ir/IRBuilder;
            0    1     1  ensureNode  Lorg/jruby/ast/EnsureNode;
    MethodParameters:
            Name  Flags
      ensureNode  final

  public org.jruby.ir.operands.Operand buildEnsureInternal(org.jruby.ast.Node, org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node ensureBodyNode
        start local 2 // org.jruby.ast.Node ensurerNode
         0: .line 2612
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* savedGlobalException */
        start local 3 // org.jruby.ir.operands.Variable savedGlobalException
         1: .line 2613
            aload 0 /* this */
            new org.jruby.ir.instructions.GetGlobalVariableInstr
            dup
            aload 3 /* savedGlobalException */
            aload 0 /* this */
            ldc "$!"
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.GetGlobalVariableInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 2622
            new org.jruby.ir.IRBuilder$EnsureBlockInfo
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
         3: .line 2623
            aload 1 /* ensureBodyNode */
            instanceof org.jruby.ast.RescueNode
            ifeq 4
            aload 1 /* ensureBodyNode */
            checkcast org.jruby.ast.RescueNode
            goto 5
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node org.jruby.ir.operands.Variable
      StackMap stack: new 2 new 2 org.jruby.ir.IRScope
         4: aconst_null
         5: .line 2624
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node org.jruby.ir.operands.Variable
      StackMap stack: new 2 new 2 org.jruby.ir.IRScope org.jruby.ast.RescueNode
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
         6: .line 2625
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Label
         7: .line 2622
            invokespecial org.jruby.ir.IRBuilder$EnsureBlockInfo.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ast/RescueNode;Lorg/jruby/ir/IRBuilder$IRLoop;Lorg/jruby/ir/operands/Label;)V
            astore 4 /* ebi */
        start local 4 // org.jruby.ir.IRBuilder$EnsureBlockInfo ebi
         8: .line 2629
            aload 1 /* ensureBodyNode */
            ifnull 10
            aload 1 /* ensureBodyNode */
            instanceof org.jruby.ast.RescueNode
            ifeq 10
         9: .line 2630
            aload 4 /* ebi */
            aload 3 /* savedGlobalException */
            putfield org.jruby.ir.IRBuilder$EnsureBlockInfo.savedGlobalException:Lorg/jruby/ir/operands/Variable;
        10: .line 2633
      StackMap locals: org.jruby.ir.IRBuilder$EnsureBlockInfo
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            aload 4 /* ebi */
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 2634
            aload 2 /* ensurerNode */
            ifnonnull 12
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            aload 2 /* ensurerNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        13: astore 5 /* ensureRetVal */
        start local 5 // org.jruby.ir.operands.Operand ensureRetVal
        14: .line 2635
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.ensureBodyBuildStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        15: .line 2638
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            aload 4 /* ebi */
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 2641
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.regionStart:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 2642
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.dummyRescueBlockLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 2643
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.dummyRescueBlockLabel:Lorg/jruby/ir/operands/Label;
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 2646
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 6 /* ensureExprValue */
        start local 6 // org.jruby.ir.operands.Variable ensureExprValue
        20: .line 2647
            aload 1 /* ensureBodyNode */
            instanceof org.jruby.ast.RescueNode
            ifeq 21
            aload 0 /* this */
            aload 1 /* ensureBodyNode */
            checkcast org.jruby.ast.RescueNode
            aload 4 /* ebi */
            invokevirtual org.jruby.ir.IRBuilder.buildRescueInternal:(Lorg/jruby/ast/RescueNode;Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;)Lorg/jruby/ir/operands/Operand;
            goto 22
      StackMap locals: org.jruby.ir.operands.Operand org.jruby.ir.operands.Variable
      StackMap stack:
        21: aload 0 /* this */
            aload 1 /* ensureBodyNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        22: astore 7 /* rv */
        start local 7 // org.jruby.ir.operands.Operand rv
        23: .line 2650
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 2651
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        25: .line 2655
            aload 2 /* ensurerNode */
            ifnull 26
            aload 7 /* rv */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 26
            aload 1 /* ensureBodyNode */
            instanceof org.jruby.ast.RescueNode
            ifne 26
            iconst_1
            goto 27
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
        26: iconst_0
      StackMap locals:
      StackMap stack: int
        27: istore 8 /* isEnsureExpr */
        start local 8 // boolean isEnsureExpr
        28: .line 2658
            iload 8 /* isEnsureExpr */
            ifeq 32
        29: .line 2659
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 6 /* ensureExprValue */
            aload 7 /* rv */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        30: .line 2660
            aload 4 /* ebi */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.cloneIntoHostScope:(Lorg/jruby/ir/IRBuilder;)V
        31: .line 2661
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.end:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        32: .line 2665
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        33: .line 2670
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 9 /* exc */
        start local 9 // org.jruby.ir.operands.Variable exc
        34: .line 2671
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.dummyRescueBlockLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        35: .line 2672
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveJRubyExceptionInstr
            dup
            aload 9 /* exc */
            invokespecial org.jruby.ir.instructions.ReceiveJRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        36: .line 2675
            aload 2 /* ensurerNode */
            ifnull 38
        37: .line 2676
            aload 4 /* ebi */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.emitBody:(Lorg/jruby/ir/IRBuilder;)V
        38: .line 2682
      StackMap locals: org.jruby.ir.operands.Variable
      StackMap stack:
            aload 5 /* ensureRetVal */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpne 39
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            astore 7 /* rv */
        39: .line 2686
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            aload 9 /* exc */
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        40: .line 2689
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* ebi */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.end:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        41: .line 2691
            iload 8 /* isEnsureExpr */
            ifeq 42
            aload 6 /* ensureExprValue */
            goto 43
      StackMap locals:
      StackMap stack:
        42: aload 7 /* rv */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        43: areturn
        end local 9 // org.jruby.ir.operands.Variable exc
        end local 8 // boolean isEnsureExpr
        end local 7 // org.jruby.ir.operands.Operand rv
        end local 6 // org.jruby.ir.operands.Variable ensureExprValue
        end local 5 // org.jruby.ir.operands.Operand ensureRetVal
        end local 4 // org.jruby.ir.IRBuilder$EnsureBlockInfo ebi
        end local 3 // org.jruby.ir.operands.Variable savedGlobalException
        end local 2 // org.jruby.ast.Node ensurerNode
        end local 1 // org.jruby.ast.Node ensureBodyNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   44     0                  this  Lorg/jruby/ir/IRBuilder;
            0   44     1        ensureBodyNode  Lorg/jruby/ast/Node;
            0   44     2           ensurerNode  Lorg/jruby/ast/Node;
            1   44     3  savedGlobalException  Lorg/jruby/ir/operands/Variable;
            8   44     4                   ebi  Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;
           14   44     5          ensureRetVal  Lorg/jruby/ir/operands/Operand;
           20   44     6       ensureExprValue  Lorg/jruby/ir/operands/Variable;
           23   44     7                    rv  Lorg/jruby/ir/operands/Operand;
           28   44     8          isEnsureExpr  Z
           34   44     9                   exc  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
                Name  Flags
      ensureBodyNode  
      ensurerNode     

  public org.jruby.ir.operands.Operand buildEvStr(org.jruby.ast.EvStrNode);
    descriptor: (Lorg/jruby/ast/EvStrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.EvStrNode node
         0: .line 2695
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* result */
        start local 2 // org.jruby.ir.operands.TemporaryVariable result
         1: .line 2697
            aload 0 /* this */
            new org.jruby.ir.instructions.AsStringInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 2 /* result */
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.EvStrNode.getBody:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.AsStringInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 2699
            aload 2 /* result */
            areturn
        end local 2 // org.jruby.ir.operands.TemporaryVariable result
        end local 1 // org.jruby.ast.EvStrNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ir/IRBuilder;
            0    3     1    node  Lorg/jruby/ast/EvStrNode;
            1    3     2  result  Lorg/jruby/ir/operands/TemporaryVariable;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildFalse();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 2703
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand buildFCall(org.jruby.ir.operands.Variable, org.jruby.ast.FCallNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/FCallNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=9, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.FCallNode fcallNode
         0: .line 2707
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getArgsNode:()Lorg/jruby/ast/Node;
            astore 3 /* callArgsNode */
        start local 3 // org.jruby.ast.Node callArgsNode
         1: .line 2709
            aload 1 /* result */
            ifnonnull 2
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         2: .line 2711
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.getPossibleKeywordArgument:(Lorg/jruby/ast/Node;)Lorg/jruby/ast/HashNode;
            astore 4 /* keywordArgs */
        start local 4 // org.jruby.ast.HashNode keywordArgs
         3: .line 2715
            aload 4 /* keywordArgs */
            ifnull 9
         4: .line 2716
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getArgsNode:()Lorg/jruby/ast/Node;
            aload 4 /* keywordArgs */
            invokevirtual org.jruby.ir.IRBuilder.buildCallArgsExcept:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 7 /* args */
        start local 7 // org.jruby.ir.operands.Operand[] args
         5: .line 2717
            aload 0 /* this */
            aload 4 /* keywordArgs */
            invokevirtual org.jruby.ir.IRBuilder.buildKeywordArguments:(Lorg/jruby/ast/HashNode;)Ljava/util/List;
            astore 8 /* kwargs */
        start local 8 // java.util.List kwargs
         6: .line 2718
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 6 /* block */
        start local 6 // org.jruby.ir.operands.Operand block
         7: .line 2719
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            aload 1 /* result */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 7 /* args */
            aload 6 /* block */
            aload 8 /* kwargs */
            invokestatic org.jruby.ir.instructions.CallInstr.createWithKwargs:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Ljava/util/List;)Lorg/jruby/ir/instructions/CallInstr;
            astore 5 /* callInstr */
        end local 8 // java.util.List kwargs
        end local 7 // org.jruby.ir.operands.Operand[] args
        start local 5 // org.jruby.ir.instructions.CallInstr callInstr
         8: .line 2720
            goto 18
        end local 6 // org.jruby.ir.operands.Operand block
        end local 5 // org.jruby.ir.instructions.CallInstr callInstr
         9: .line 2721
      StackMap locals: org.jruby.ast.HashNode
      StackMap stack:
            aload 0 /* this */
            aload 3 /* callArgsNode */
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 7 /* args */
        start local 7 // org.jruby.ir.operands.Operand[] args
        10: .line 2722
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getName:()Lorg/jruby/RubySymbol;
            aload 7 /* args */
            invokevirtual org.jruby.ir.IRBuilder.determineIfMaybeRefined:(Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;)V
        11: .line 2723
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 6 /* block */
        start local 6 // org.jruby.ir.operands.Operand block
        12: .line 2727
            getstatic org.jruby.util.CommonByteLists.DEFINE_METHOD_METHOD:Lorg/jruby/util/ByteList;
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
            ifeq 17
            aload 6 /* block */
            instanceof org.jruby.ir.operands.WrappedIRClosure
            ifeq 17
        13: .line 2728
            aload 6 /* block */
            checkcast org.jruby.ir.operands.WrappedIRClosure
            invokevirtual org.jruby.ir.operands.WrappedIRClosure.getClosure:()Lorg/jruby/ir/IRClosure;
            astore 8 /* closure */
        start local 8 // org.jruby.ir.IRClosure closure
        14: .line 2731
            aload 8 /* closure */
            invokevirtual org.jruby.ir.IRClosure.getFlags:()Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.ACCESS_PARENTS_LOCAL_VARIABLES:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifne 17
        15: .line 2732
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getIterNode:()Lorg/jruby/ast/Node;
            instanceof org.jruby.ast.IterNode
            ifeq 17
        16: .line 2733
            aload 8 /* closure */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getIterNode:()Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.IterNode
            invokevirtual org.jruby.ir.IRClosure.setSource:(Lorg/jruby/ast/IterNode;)V
        end local 8 // org.jruby.ir.IRClosure closure
        17: .line 2737
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.FCallNode org.jruby.ast.Node org.jruby.ast.HashNode top org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand[]
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            aload 1 /* result */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ast.FCallNode.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 7 /* args */
            aload 6 /* block */
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            astore 5 /* callInstr */
        end local 7 // org.jruby.ir.operands.Operand[] args
        start local 5 // org.jruby.ir.instructions.CallInstr callInstr
        18: .line 2740
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.FCallNode org.jruby.ast.Node org.jruby.ast.HashNode org.jruby.ir.instructions.CallInstr org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            aload 2 /* fcallNode */
            invokevirtual org.jruby.ir.IRBuilder.determineIfWeNeedLineNumber:(Lorg/jruby/ast/Node;)V
        19: .line 2741
            aload 0 /* this */
            aload 6 /* block */
            aload 5 /* callInstr */
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/instructions/CallInstr;)V
        20: .line 2743
            aload 1 /* result */
            areturn
        end local 6 // org.jruby.ir.operands.Operand block
        end local 5 // org.jruby.ir.instructions.CallInstr callInstr
        end local 4 // org.jruby.ast.HashNode keywordArgs
        end local 3 // org.jruby.ast.Node callArgsNode
        end local 2 // org.jruby.ast.FCallNode fcallNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   21     0          this  Lorg/jruby/ir/IRBuilder;
            0   21     1        result  Lorg/jruby/ir/operands/Variable;
            0   21     2     fcallNode  Lorg/jruby/ast/FCallNode;
            1   21     3  callArgsNode  Lorg/jruby/ast/Node;
            3   21     4   keywordArgs  Lorg/jruby/ast/HashNode;
            8    9     5     callInstr  Lorg/jruby/ir/instructions/CallInstr;
           18   21     5     callInstr  Lorg/jruby/ir/instructions/CallInstr;
            7    9     6         block  Lorg/jruby/ir/operands/Operand;
           12   21     6         block  Lorg/jruby/ir/operands/Operand;
            5    8     7          args  [Lorg/jruby/ir/operands/Operand;
            6    8     8        kwargs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
           10   18     7          args  [Lorg/jruby/ir/operands/Operand;
           14   17     8       closure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
           Name  Flags
      result     
      fcallNode  

  private org.jruby.ir.operands.Operand setupCallClosure(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 2747
            aload 1 /* node */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 2749
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:()[I
            aload 1 /* node */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iaload
            lookupswitch { // 2
                   14: 3
                   51: 2
              default: 8
          }
         2: .line 2751
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
         3: .line 2753
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.jruby.ast.BlockPassNode
            invokevirtual org.jruby.ast.BlockPassNode.getBodyNode:()Lorg/jruby/ast/Node;
            astore 2 /* bodyNode */
        start local 2 // org.jruby.ast.Node bodyNode
         4: .line 2754
            aload 2 /* bodyNode */
            instanceof org.jruby.ast.SymbolNode
            ifeq 6
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            ifne 6
         5: .line 2755
            new org.jruby.ir.operands.SymbolProc
            dup
            aload 2 /* bodyNode */
            checkcast org.jruby.ast.SymbolNode
            invokevirtual org.jruby.ast.SymbolNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.SymbolProc.<init>:(Lorg/jruby/RubySymbol;)V
            goto 7
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
         6: aload 0 /* this */
            aload 2 /* bodyNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
         7: .line 2754
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
            areturn
        end local 2 // org.jruby.ast.Node bodyNode
         8: .line 2757
      StackMap locals:
      StackMap stack:
            new org.jruby.compiler.NotCompilableException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ERROR: Encountered a method with a non-block, non-blockpass iter node at: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.compiler.NotCompilableException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/jruby/ir/IRBuilder;
            0    9     1      node  Lorg/jruby/ast/Node;
            4    8     2  bodyNode  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      node  

  private void determineIfMaybeRefined(org.jruby.RubySymbol, org.jruby.ir.operands.Operand[]);
    descriptor: (Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol methodName
        start local 2 // org.jruby.ir.operands.Operand[] args
         0: .line 2763
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestTopLocalVariableScope:()Lorg/jruby/ir/IRScope;
            astore 3 /* outerScope */
        start local 3 // org.jruby.ir.IRScope outerScope
         1: .line 2766
            aload 3 /* outerScope */
            instanceof org.jruby.ir.IRMethod
            ifne 5
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 5
         2: .line 2768
            getstatic org.jruby.util.CommonByteLists.USING_METHOD:Lorg/jruby/util/ByteList;
            aload 1 /* methodName */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 2770
            getstatic org.jruby.util.CommonByteLists.REFINE_METHOD:Lorg/jruby/util/ByteList;
            aload 1 /* methodName */
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 2772
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.setIsMaybeUsingRefinements:()V
         5: .line 2774
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.ir.IRScope outerScope
        end local 2 // org.jruby.ir.operands.Operand[] args
        end local 1 // org.jruby.RubySymbol methodName
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/jruby/ir/IRBuilder;
            0    6     1  methodName  Lorg/jruby/RubySymbol;
            0    6     2        args  [Lorg/jruby/ir/operands/Operand;
            1    6     3  outerScope  Lorg/jruby/ir/IRScope;
    MethodParameters:
            Name  Flags
      methodName  
      args        

  public org.jruby.ir.operands.Operand buildFixnum(org.jruby.ast.FixnumNode);
    descriptor: (Lorg/jruby/ast/FixnumNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.FixnumNode node
         0: .line 2777
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 1 /* node */
            invokevirtual org.jruby.ast.FixnumNode.getValue:()J
            invokevirtual org.jruby.ir.IRManager.newFixnum:(J)Lorg/jruby/ir/operands/Fixnum;
            areturn
        end local 1 // org.jruby.ast.FixnumNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/FixnumNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildFlip(org.jruby.ast.FlipNode);
    descriptor: (Lorg/jruby/ast/FlipNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.FlipNode flipNode
         0: .line 2781
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 2782
            aload 0 /* this */
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
            aload 2 /* runtime */
            ldc "NotImplementedError"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.ir.IRBuilder.searchModuleForConst:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* exceptionClass */
        start local 3 // org.jruby.ir.operands.Operand exceptionClass
         2: .line 2783
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 2 /* runtime */
            ldc "new"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 3 /* exceptionClass */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            new org.jruby.ir.operands.StringLiteral
            dup
            ldc "flip-flop is no longer supported in JRuby"
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Ljava/lang/String;)V
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* exception */
        start local 4 // org.jruby.ir.operands.Operand exception
         3: .line 2785
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            aload 4 /* exception */
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 2787
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 4 // org.jruby.ir.operands.Operand exception
        end local 3 // org.jruby.ir.operands.Operand exceptionClass
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.ast.FlipNode flipNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/jruby/ir/IRBuilder;
            0    5     1        flipNode  Lorg/jruby/ast/FlipNode;
            1    5     2         runtime  Lorg/jruby/Ruby;
            2    5     3  exceptionClass  Lorg/jruby/ir/operands/Operand;
            3    5     4       exception  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      flipNode  

  public org.jruby.ir.operands.Operand buildFloat(org.jruby.ast.FloatNode);
    descriptor: (Lorg/jruby/ast/FloatNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.FloatNode node
         0: .line 2793
            new org.jruby.ir.operands.Float
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.FloatNode.getValue:()D
            invokespecial org.jruby.ir.operands.Float.<init>:(D)V
            areturn
        end local 1 // org.jruby.ast.FloatNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/FloatNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildFor(org.jruby.ast.ForNode);
    descriptor: (Lorg/jruby/ast/ForNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ForNode forNode
         0: .line 2797
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* result */
        start local 2 // org.jruby.ir.operands.Variable result
         1: .line 2798
            aload 0 /* this */
            aload 1 /* forNode */
            invokevirtual org.jruby.ast.ForNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* receiver */
        start local 3 // org.jruby.ir.operands.Operand receiver
         2: .line 2799
            aload 0 /* this */
            aload 1 /* forNode */
            invokevirtual org.jruby.ir.IRBuilder.buildForIter:(Lorg/jruby/ast/ForNode;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* forBlock */
        start local 4 // org.jruby.ir.operands.Operand forBlock
         3: .line 2800
            new org.jruby.ir.instructions.CallInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.NORMAL:Lorg/jruby/runtime/CallType;
            aload 2 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            getfield org.jruby.ir.IRManager.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.util.CommonByteLists.EACH:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            aload 3 /* receiver */
            getstatic org.jruby.ir.instructions.Instr.EMPTY_OPERANDS:[Lorg/jruby/ir/operands/Operand;
         4: .line 2801
            aload 4 /* forBlock */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
         5: .line 2800
            invokespecial org.jruby.ir.instructions.CallInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            astore 5 /* callInstr */
        start local 5 // org.jruby.ir.instructions.CallInstr callInstr
         6: .line 2802
            aload 0 /* this */
            aload 4 /* forBlock */
            aload 5 /* callInstr */
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/instructions/CallInstr;)V
         7: .line 2804
            aload 2 /* result */
            areturn
        end local 5 // org.jruby.ir.instructions.CallInstr callInstr
        end local 4 // org.jruby.ir.operands.Operand forBlock
        end local 3 // org.jruby.ir.operands.Operand receiver
        end local 2 // org.jruby.ir.operands.Variable result
        end local 1 // org.jruby.ast.ForNode forNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jruby/ir/IRBuilder;
            0    8     1    forNode  Lorg/jruby/ast/ForNode;
            1    8     2     result  Lorg/jruby/ir/operands/Variable;
            2    8     3   receiver  Lorg/jruby/ir/operands/Operand;
            3    8     4   forBlock  Lorg/jruby/ir/operands/Operand;
            6    8     5  callInstr  Lorg/jruby/ir/instructions/CallInstr;
    MethodParameters:
         Name  Flags
      forNode  

  public org.jruby.ir.operands.Operand buildForIter(org.jruby.ast.ForNode);
    descriptor: (Lorg/jruby/ast/ForNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ForNode forNode
         0: .line 2809
            new org.jruby.ir.IRFor
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* forNode */
            invokevirtual org.jruby.ast.ForNode.getLine:()I
            aload 1 /* forNode */
            invokevirtual org.jruby.ast.ForNode.getScope:()Lorg/jruby/parser/StaticScope;
            aload 1 /* forNode */
            invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/ast/ForNode;)Lorg/jruby/runtime/Signature;
            invokespecial org.jruby.ir.IRFor.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;ILorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;)V
            astore 2 /* closure */
        start local 2 // org.jruby.ir.IRClosure closure
         1: .line 2812
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 2 /* closure */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* forNode */
            invokevirtual org.jruby.ir.IRBuilder.buildIterInner:(Lorg/jruby/ast/IterNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         2: .line 2814
            new org.jruby.ir.operands.WrappedIRClosure
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 2 /* closure */
            invokespecial org.jruby.ir.operands.WrappedIRClosure.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRClosure;)V
            areturn
        end local 2 // org.jruby.ir.IRClosure closure
        end local 1 // org.jruby.ast.ForNode forNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ir/IRBuilder;
            0    3     1  forNode  Lorg/jruby/ast/ForNode;
            1    3     2  closure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
         Name  Flags
      forNode  final

  public org.jruby.ir.operands.Operand buildGlobalAsgn(org.jruby.ast.GlobalAsgnNode);
    descriptor: (Lorg/jruby/ast/GlobalAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.GlobalAsgnNode globalAsgnNode
         0: .line 2818
            aload 0 /* this */
            aload 1 /* globalAsgnNode */
            invokevirtual org.jruby.ast.GlobalAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* value */
        start local 2 // org.jruby.ir.operands.Operand value
         1: .line 2819
            aload 0 /* this */
            new org.jruby.ir.instructions.PutGlobalVarInstr
            dup
            aload 1 /* globalAsgnNode */
            invokevirtual org.jruby.ast.GlobalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* value */
            invokespecial org.jruby.ir.instructions.PutGlobalVarInstr.<init>:(Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 2820
            aload 2 /* value */
            areturn
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ast.GlobalAsgnNode globalAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/jruby/ir/IRBuilder;
            0    3     1  globalAsgnNode  Lorg/jruby/ast/GlobalAsgnNode;
            1    3     2           value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                Name  Flags
      globalAsgnNode  

  public org.jruby.ir.operands.Operand buildGlobalVar(org.jruby.ir.operands.Variable, org.jruby.ast.GlobalVarNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/GlobalVarNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.GlobalVarNode node
         0: .line 2824
            aload 1 /* result */
            ifnonnull 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         1: .line 2826
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.GetGlobalVariableInstr
            dup
            aload 1 /* result */
            aload 2 /* node */
            invokevirtual org.jruby.ast.GlobalVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.GetGlobalVariableInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.ast.GlobalVarNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/ir/IRBuilder;
            0    2     1  result  Lorg/jruby/ir/operands/Variable;
            0    2     2    node  Lorg/jruby/ast/GlobalVarNode;
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildHash(org.jruby.ast.HashNode);
    descriptor: (Lorg/jruby/ast/HashNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=10, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.HashNode hashNode
         0: .line 2830
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* args */
        start local 2 // java.util.List args
         1: .line 2831
            aload 1 /* hashNode */
            invokevirtual org.jruby.ast.HashNode.containsVariableAssignment:()Z
            istore 3 /* hasAssignments */
        start local 3 // boolean hasAssignments
         2: .line 2832
            aconst_null
            astore 4 /* hash */
        start local 4 // org.jruby.ir.operands.Variable hash
         3: .line 2834
            aload 1 /* hashNode */
            invokevirtual org.jruby.ast.HashNode.getPairs:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 19
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.HashNode java.util.List int org.jruby.ir.operands.Variable top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.util.KeyValuePair
            astore 5 /* pair */
        start local 5 // org.jruby.util.KeyValuePair pair
         5: .line 2835
            aload 5 /* pair */
            invokevirtual org.jruby.util.KeyValuePair.getKey:()Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            astore 7 /* key */
        start local 7 // org.jruby.ast.Node key
         6: .line 2838
            aload 7 /* key */
            ifnonnull 17
         7: .line 2839
            aload 4 /* hash */
            ifnonnull 11
         8: .line 2840
            aload 0 /* this */
            new org.jruby.ir.operands.Hash
            dup
            aload 2 /* args */
            invokespecial org.jruby.ir.operands.Hash.<init>:(Ljava/util/List;)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* hash */
         9: .line 2841
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* args */
        10: .line 2842
            goto 14
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.HashNode java.util.List int org.jruby.ir.operands.Variable org.jruby.util.KeyValuePair java.util.Iterator org.jruby.ast.Node
      StackMap stack:
        11: aload 2 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 14
        12: .line 2843
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 4 /* hash */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.MERGE_KWARGS:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 4 /* hash */
            aastore
            dup
            iconst_1
            new org.jruby.ir.operands.Hash
            dup
            aload 2 /* args */
            invokespecial org.jruby.ir.operands.Hash.<init>:(Ljava/util/List;)V
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 2844
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* args */
        14: .line 2846
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* pair */
            invokevirtual org.jruby.util.KeyValuePair.getValue:()Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            iload 3 /* hasAssignments */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 9 /* splat */
        start local 9 // org.jruby.ir.operands.Operand splat
        15: .line 2847
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 4 /* hash */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.MERGE_KWARGS:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 4 /* hash */
            aastore
            dup
            iconst_1
            aload 9 /* splat */
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 2848
            goto 19
        end local 9 // org.jruby.ir.operands.Operand splat
        17: .line 2850
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* key */
            iload 3 /* hasAssignments */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 8 /* keyOperand */
        start local 8 // org.jruby.ir.operands.Operand keyOperand
        18: .line 2853
            aload 2 /* args */
            new org.jruby.util.KeyValuePair
            dup
            aload 8 /* keyOperand */
            aload 0 /* this */
            aload 5 /* pair */
            invokevirtual org.jruby.util.KeyValuePair.getValue:()Ljava/lang/Object;
            checkcast org.jruby.ast.Node
            iload 3 /* hasAssignments */
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.util.KeyValuePair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.jruby.ir.operands.Operand keyOperand
        end local 7 // org.jruby.ast.Node key
        end local 5 // org.jruby.util.KeyValuePair pair
        19: .line 2834
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.HashNode java.util.List int org.jruby.ir.operands.Variable top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        20: .line 2856
            aload 4 /* hash */
            ifnonnull 23
        21: .line 2857
            aload 0 /* this */
            new org.jruby.ir.operands.Hash
            dup
            aload 2 /* args */
            invokespecial org.jruby.ir.operands.Hash.<init>:(Ljava/util/List;)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* hash */
        22: .line 2858
            goto 25
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.HashNode java.util.List int org.jruby.ir.operands.Variable
      StackMap stack:
        23: aload 2 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 25
        24: .line 2859
            aload 0 /* this */
            new org.jruby.ir.instructions.RuntimeHelperCall
            dup
            aload 4 /* hash */
            getstatic org.jruby.ir.instructions.RuntimeHelperCall$Methods.MERGE_KWARGS:Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;
            iconst_2
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 4 /* hash */
            aastore
            dup
            iconst_1
            new org.jruby.ir.operands.Hash
            dup
            aload 2 /* args */
            invokespecial org.jruby.ir.operands.Hash.<init>:(Ljava/util/List;)V
            aastore
            invokespecial org.jruby.ir.instructions.RuntimeHelperCall.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/instructions/RuntimeHelperCall$Methods;[Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        25: .line 2862
      StackMap locals:
      StackMap stack:
            aload 4 /* hash */
            areturn
        end local 4 // org.jruby.ir.operands.Variable hash
        end local 3 // boolean hasAssignments
        end local 2 // java.util.List args
        end local 1 // org.jruby.ast.HashNode hashNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   26     0            this  Lorg/jruby/ir/IRBuilder;
            0   26     1        hashNode  Lorg/jruby/ast/HashNode;
            1   26     2            args  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
            2   26     3  hasAssignments  Z
            3   26     4            hash  Lorg/jruby/ir/operands/Variable;
            5   19     5            pair  Lorg/jruby/util/KeyValuePair<Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;>;
            6   19     7             key  Lorg/jruby/ast/Node;
           18   19     8      keyOperand  Lorg/jruby/ir/operands/Operand;
           15   17     9           splat  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      hashNode  

  public org.jruby.ir.operands.Operand buildIf(org.jruby.ir.operands.Variable, org.jruby.ast.IfNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/IfNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.IfNode ifNode
         0: .line 2877
            aload 2 /* ifNode */
            invokevirtual org.jruby.ast.IfNode.getCondition:()Lorg/jruby/ast/Node;
            astore 3 /* actualCondition */
        start local 3 // org.jruby.ast.Node actualCondition
         1: .line 2879
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* falseLabel */
        start local 4 // org.jruby.ir.operands.Label falseLabel
         2: .line 2880
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 5 /* doneLabel */
        start local 5 // org.jruby.ir.operands.Label doneLabel
         3: .line 2882
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* actualCondition */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aload 4 /* falseLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 2884
            iconst_0
            istore 7 /* thenNull */
        start local 7 // boolean thenNull
         5: .line 2885
            iconst_0
            istore 8 /* elseNull */
        start local 8 // boolean elseNull
         6: .line 2886
            iconst_0
            istore 9 /* thenUnil */
        start local 9 // boolean thenUnil
         7: .line 2887
            iconst_0
            istore 10 /* elseUnil */
        start local 10 // boolean elseUnil
         8: .line 2890
            aload 2 /* ifNode */
            invokevirtual org.jruby.ast.IfNode.getThenBody:()Lorg/jruby/ast/Node;
            ifnull 17
         9: .line 2891
            aload 0 /* this */
            aload 1 /* result */
            aload 2 /* ifNode */
            invokevirtual org.jruby.ast.IfNode.getThenBody:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 6 /* thenResult */
        start local 6 // org.jruby.ir.operands.Operand thenResult
        10: .line 2892
            aload 6 /* thenResult */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 14
        11: .line 2895
            aload 0 /* this */
            aload 6 /* thenResult */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 1 /* result */
        12: .line 2896
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 5 /* doneLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 2897
            goto 21
        14: .line 2898
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.IfNode org.jruby.ast.Node org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Operand int int int int
      StackMap stack:
            aload 1 /* result */
            ifnonnull 15
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
        15: .line 2899
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 9 /* thenUnil */
        16: .line 2901
            goto 21
        end local 6 // org.jruby.ir.operands.Operand thenResult
        17: .line 2902
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.IfNode org.jruby.ast.Node org.jruby.ir.operands.Label org.jruby.ir.operands.Label top int int int int
      StackMap stack:
            iconst_1
            istore 7 /* thenNull */
        18: .line 2903
            aload 1 /* result */
            ifnonnull 19
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
        19: .line 2904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 2905
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 5 /* doneLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 2909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* falseLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        22: .line 2910
            aload 2 /* ifNode */
            invokevirtual org.jruby.ast.IfNode.getElseBody:()Lorg/jruby/ast/Node;
            ifnull 29
        23: .line 2911
            aload 0 /* this */
            aload 2 /* ifNode */
            invokevirtual org.jruby.ast.IfNode.getElseBody:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 11 /* elseResult */
        start local 11 // org.jruby.ir.operands.Operand elseResult
        24: .line 2913
            aload 11 /* elseResult */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 27
        25: .line 2914
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 11 /* elseResult */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        26: .line 2915
            goto 31
        27: .line 2916
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            iconst_1
            istore 10 /* elseUnil */
        end local 11 // org.jruby.ir.operands.Operand elseResult
        28: .line 2918
            goto 31
        29: .line 2919
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 8 /* elseNull */
        30: .line 2920
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        31: .line 2923
      StackMap locals:
      StackMap stack:
            iload 7 /* thenNull */
            ifeq 34
            iload 8 /* elseNull */
            ifeq 34
        32: .line 2924
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* doneLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        33: .line 2925
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        34: .line 2926
      StackMap locals:
      StackMap stack:
            iload 9 /* thenUnil */
            ifeq 36
            iload 10 /* elseUnil */
            ifeq 36
        35: .line 2927
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            areturn
        36: .line 2929
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* doneLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        37: .line 2930
            aload 1 /* result */
            areturn
        end local 10 // boolean elseUnil
        end local 9 // boolean thenUnil
        end local 8 // boolean elseNull
        end local 7 // boolean thenNull
        end local 5 // org.jruby.ir.operands.Label doneLabel
        end local 4 // org.jruby.ir.operands.Label falseLabel
        end local 3 // org.jruby.ast.Node actualCondition
        end local 2 // org.jruby.ast.IfNode ifNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   38     0             this  Lorg/jruby/ir/IRBuilder;
            0   38     1           result  Lorg/jruby/ir/operands/Variable;
            0   38     2           ifNode  Lorg/jruby/ast/IfNode;
            1   38     3  actualCondition  Lorg/jruby/ast/Node;
            2   38     4       falseLabel  Lorg/jruby/ir/operands/Label;
            3   38     5        doneLabel  Lorg/jruby/ir/operands/Label;
           10   17     6       thenResult  Lorg/jruby/ir/operands/Operand;
            5   38     7         thenNull  Z
            6   38     8         elseNull  Z
            7   38     9         thenUnil  Z
            8   38    10         elseUnil  Z
           24   28    11       elseResult  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      result  
      ifNode  final

  public org.jruby.ir.operands.Operand buildInstAsgn(org.jruby.ast.InstAsgnNode);
    descriptor: (Lorg/jruby/ast/InstAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.InstAsgnNode instAsgnNode
         0: .line 2935
            aload 0 /* this */
            aload 1 /* instAsgnNode */
            invokevirtual org.jruby.ast.InstAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* val */
        start local 2 // org.jruby.ir.operands.Operand val
         1: .line 2937
            aload 0 /* this */
            new org.jruby.ir.instructions.PutFieldInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 1 /* instAsgnNode */
            invokevirtual org.jruby.ast.InstAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* val */
            invokespecial org.jruby.ir.instructions.PutFieldInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 2938
            aload 2 /* val */
            areturn
        end local 2 // org.jruby.ir.operands.Operand val
        end local 1 // org.jruby.ast.InstAsgnNode instAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/jruby/ir/IRBuilder;
            0    3     1  instAsgnNode  Lorg/jruby/ast/InstAsgnNode;
            1    3     2           val  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
              Name  Flags
      instAsgnNode  final

  public org.jruby.ir.operands.Operand buildInstVar(org.jruby.ast.InstVarNode);
    descriptor: (Lorg/jruby/ast/InstVarNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.InstVarNode node
         0: .line 2942
            aload 0 /* this */
            new org.jruby.ir.instructions.GetFieldInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 1 /* node */
            invokevirtual org.jruby.ast.InstVarNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.GetFieldInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.InstVarNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/InstVarNode;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.interpreter.InterpreterContext buildIterInner(org.jruby.ast.IterNode);
    descriptor: (Lorg/jruby/ast/IterNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.IterNode iterNode
         0: .line 2946
            aload 1 /* iterNode */
            instanceof org.jruby.ast.ForNode
            istore 2 /* forNode */
        start local 2 // boolean forNode
         1: .line 2947
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         2: .line 2949
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 4
         3: .line 2950
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.B_CALL:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 2953
      StackMap locals: int
      StackMap stack:
            iload 2 /* forNode */
            ifne 5
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         5: .line 2954
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* iterNode */
            invokevirtual org.jruby.ir.IRBuilder.receiveBlockArgs:(Lorg/jruby/ast/IterNode;)V
         6: .line 2957
            iload 2 /* forNode */
            ifeq 7
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         7: .line 2960
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            putfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
         8: .line 2963
            aload 1 /* iterNode */
            invokevirtual org.jruby.ast.IterNode.getBodyNode:()Lorg/jruby/ast/Node;
            ifnonnull 9
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
            aload 1 /* iterNode */
            invokevirtual org.jruby.ast.IterNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        10: astore 3 /* closureRetVal */
        start local 3 // org.jruby.ir.operands.Operand closureRetVal
        11: .line 2965
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 13
        12: .line 2966
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.B_RETURN:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 1 /* iterNode */
            invokevirtual org.jruby.ast.IterNode.getEndLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 2970
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 3 /* closureRetVal */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 14
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 3 /* closureRetVal */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 2974
      StackMap locals:
      StackMap stack:
            iload 2 /* forNode */
            ifne 15
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.handleBreakAndReturnsInLambdas:()V
        15: .line 2976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 3 // org.jruby.ir.operands.Operand closureRetVal
        end local 2 // boolean forNode
        end local 1 // org.jruby.ast.IterNode iterNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lorg/jruby/ir/IRBuilder;
            0   16     1       iterNode  Lorg/jruby/ast/IterNode;
            1   16     2        forNode  Z
           11   16     3  closureRetVal  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      iterNode  

  public org.jruby.ir.operands.Operand buildIter(org.jruby.ast.IterNode);
    descriptor: (Lorg/jruby/ast/IterNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.IterNode iterNode
         0: .line 2980
            new org.jruby.ir.IRClosure
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* iterNode */
            invokevirtual org.jruby.ast.IterNode.getLine:()I
            aload 1 /* iterNode */
            invokevirtual org.jruby.ast.IterNode.getScope:()Lorg/jruby/parser/StaticScope;
            aload 1 /* iterNode */
            invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/ast/IterNode;)Lorg/jruby/runtime/Signature;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
            invokespecial org.jruby.ir.IRClosure.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;ILorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;Z)V
            astore 2 /* closure */
        start local 2 // org.jruby.ir.IRClosure closure
         1: .line 2983
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 2 /* closure */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* iterNode */
            invokevirtual org.jruby.ir.IRBuilder.buildIterInner:(Lorg/jruby/ast/IterNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         2: .line 2985
            new org.jruby.ir.operands.WrappedIRClosure
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 2 /* closure */
            invokespecial org.jruby.ir.operands.WrappedIRClosure.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRClosure;)V
            areturn
        end local 2 // org.jruby.ir.IRClosure closure
        end local 1 // org.jruby.ast.IterNode iterNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/jruby/ir/IRBuilder;
            0    3     1  iterNode  Lorg/jruby/ast/IterNode;
            1    3     2   closure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
          Name  Flags
      iterNode  final

  public org.jruby.ir.operands.Operand buildLiteral(org.jruby.ast.LiteralNode);
    descriptor: (Lorg/jruby/ast/LiteralNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.LiteralNode literalNode
         0: .line 2989
            new org.jruby.ir.operands.StringLiteral
            dup
            aload 1 /* literalNode */
            invokevirtual org.jruby.ast.LiteralNode.getSymbolName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Lorg/jruby/RubySymbol;)V
            areturn
        end local 1 // org.jruby.ast.LiteralNode literalNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/jruby/ir/IRBuilder;
            0    1     1  literalNode  Lorg/jruby/ast/LiteralNode;
    MethodParameters:
             Name  Flags
      literalNode  

  public org.jruby.ir.operands.Operand buildLocalAsgn(org.jruby.ast.LocalAsgnNode);
    descriptor: (Lorg/jruby/ast/LocalAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.LocalAsgnNode localAsgnNode
         0: .line 2993
            aload 0 /* this */
            aload 1 /* localAsgnNode */
            invokevirtual org.jruby.ast.LocalAsgnNode.getName:()Lorg/jruby/RubySymbol;
            aload 1 /* localAsgnNode */
            invokevirtual org.jruby.ast.LocalAsgnNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 2 /* variable */
        start local 2 // org.jruby.ir.operands.Variable variable
         1: .line 2994
            aload 0 /* this */
            aload 2 /* variable */
            aload 1 /* localAsgnNode */
            invokevirtual org.jruby.ast.LocalAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* value */
        start local 3 // org.jruby.ir.operands.Operand value
         2: .line 2997
            aload 2 /* variable */
            aload 3 /* value */
            if_acmpne 3
            aload 3 /* value */
            areturn
         3: .line 2999
      StackMap locals: org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 2 /* variable */
            aload 3 /* value */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3001
            aload 3 /* value */
            areturn
        end local 3 // org.jruby.ir.operands.Operand value
        end local 2 // org.jruby.ir.operands.Variable variable
        end local 1 // org.jruby.ast.LocalAsgnNode localAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/jruby/ir/IRBuilder;
            0    5     1  localAsgnNode  Lorg/jruby/ast/LocalAsgnNode;
            1    5     2       variable  Lorg/jruby/ir/operands/Variable;
            2    5     3          value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
               Name  Flags
      localAsgnNode  

  public org.jruby.ir.operands.Operand buildLocalVar(org.jruby.ast.LocalVarNode);
    descriptor: (Lorg/jruby/ast/LocalVarNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.LocalVarNode node
         0: .line 3027
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.LocalVarNode.getName:()Lorg/jruby/RubySymbol;
            aload 1 /* node */
            invokevirtual org.jruby.ast.LocalVarNode.getDepth:()I
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 1 // org.jruby.ast.LocalVarNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/LocalVarNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildMatch(org.jruby.ir.operands.Variable, org.jruby.ast.MatchNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/MatchNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.MatchNode matchNode
         0: .line 3031
            aload 0 /* this */
            aload 2 /* matchNode */
            invokevirtual org.jruby.ast.MatchNode.getRegexpNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* regexp */
        start local 3 // org.jruby.ir.operands.Operand regexp
         1: .line 3033
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* tempLastLine */
        start local 4 // org.jruby.ir.operands.Variable tempLastLine
         2: .line 3034
            aload 0 /* this */
            new org.jruby.ir.instructions.GetGlobalVariableInstr
            dup
            aload 4 /* tempLastLine */
            aload 0 /* this */
            ldc "$_"
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.instructions.GetGlobalVariableInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            pop
         3: .line 3036
            aload 1 /* result */
            ifnonnull 4
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         4: .line 3037
      StackMap locals: org.jruby.ir.operands.Operand org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.MatchInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* result */
            aload 3 /* regexp */
            aload 4 /* tempLastLine */
            invokespecial org.jruby.ir.instructions.MatchInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 4 // org.jruby.ir.operands.Variable tempLastLine
        end local 3 // org.jruby.ir.operands.Operand regexp
        end local 2 // org.jruby.ast.MatchNode matchNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/jruby/ir/IRBuilder;
            0    5     1        result  Lorg/jruby/ir/operands/Variable;
            0    5     2     matchNode  Lorg/jruby/ast/MatchNode;
            1    5     3        regexp  Lorg/jruby/ir/operands/Operand;
            2    5     4  tempLastLine  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
           Name  Flags
      result     
      matchNode  

  public org.jruby.ir.operands.Operand buildMatch2(org.jruby.ir.operands.Variable, org.jruby.ast.Match2Node);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Match2Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=13, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.Match2Node matchNode
         0: .line 3041
            aload 0 /* this */
            aload 2 /* matchNode */
            invokevirtual org.jruby.ast.Match2Node.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* receiver */
        start local 3 // org.jruby.ir.operands.Operand receiver
         1: .line 3042
            aload 0 /* this */
            aload 2 /* matchNode */
            invokevirtual org.jruby.ast.Match2Node.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* value */
        start local 4 // org.jruby.ir.operands.Operand value
         2: .line 3044
            aload 1 /* result */
            ifnonnull 3
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         3: .line 3046
      StackMap locals: org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.MatchInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* result */
            aload 3 /* receiver */
            aload 4 /* value */
            invokespecial org.jruby.ir.instructions.MatchInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3048
            aload 2 /* matchNode */
            instanceof org.jruby.ast.Match2CaptureNode
            ifeq 14
         5: .line 3049
            aload 2 /* matchNode */
            checkcast org.jruby.ast.Match2CaptureNode
            astore 5 /* m2c */
        start local 5 // org.jruby.ast.Match2CaptureNode m2c
         6: .line 3050
            aload 5 /* m2c */
            invokevirtual org.jruby.ast.Match2CaptureNode.getScopeOffsets:()[I
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 13
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.Match2Node org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand org.jruby.ast.Match2CaptureNode top int int int[]
      StackMap stack:
         7: aload 9
            iload 7
            iaload
            istore 6 /* slot */
        start local 6 // int slot
         8: .line 3052
            iload 6 /* slot */
            bipush 16
            ishr
            istore 10 /* depth */
        start local 10 // int depth
         9: .line 3053
            iload 6 /* slot */
            ldc 65535
            iand
            istore 11 /* offset */
        start local 11 // int offset
        10: .line 3056
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            getfield org.jruby.ir.IRManager.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            iload 10 /* depth */
            iload 11 /* offset */
            invokevirtual org.jruby.ir.IRBuilder.getVarNameFromScopeTree:(Lorg/jruby/ir/IRScope;II)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            astore 12 /* var */
        start local 12 // org.jruby.RubySymbol var
        11: .line 3057
            aload 0 /* this */
            new org.jruby.ir.instructions.SetCapturedVarInstr
            dup
            aload 0 /* this */
            aload 12 /* var */
            iload 10 /* depth */
            invokevirtual org.jruby.ir.IRBuilder.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            aload 1 /* result */
            aload 12 /* var */
            invokespecial org.jruby.ir.instructions.SetCapturedVarInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 12 // org.jruby.RubySymbol var
        end local 11 // int offset
        end local 10 // int depth
        end local 6 // int slot
        12: .line 3050
            iinc 7 1
      StackMap locals:
      StackMap stack:
        13: iload 7
            iload 8
            if_icmplt 7
        end local 5 // org.jruby.ast.Match2CaptureNode m2c
        14: .line 3060
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ast.Match2Node org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 4 // org.jruby.ir.operands.Operand value
        end local 3 // org.jruby.ir.operands.Operand receiver
        end local 2 // org.jruby.ast.Match2Node matchNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lorg/jruby/ir/IRBuilder;
            0   15     1     result  Lorg/jruby/ir/operands/Variable;
            0   15     2  matchNode  Lorg/jruby/ast/Match2Node;
            1   15     3   receiver  Lorg/jruby/ir/operands/Operand;
            2   15     4      value  Lorg/jruby/ir/operands/Operand;
            6   14     5        m2c  Lorg/jruby/ast/Match2CaptureNode;
            8   12     6       slot  I
            9   12    10      depth  I
           10   12    11     offset  I
           11   12    12        var  Lorg/jruby/RubySymbol;
    MethodParameters:
           Name  Flags
      result     
      matchNode  

  private java.lang.String getVarNameFromScopeTree(org.jruby.ir.IRScope, int, int);
    descriptor: (Lorg/jruby/ir/IRScope;II)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.IRScope scope
        start local 2 // int depth
        start local 3 // int offset
         0: .line 3064
            iload 2 /* depth */
            ifne 2
         1: .line 3065
            aload 1 /* scope */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getVariables:()[Ljava/lang/String;
            iload 3 /* offset */
            aaload
            areturn
         2: .line 3067
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* scope */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            iload 2 /* depth */
            iconst_1
            isub
            iload 3 /* offset */
            invokevirtual org.jruby.ir.IRBuilder.getVarNameFromScopeTree:(Lorg/jruby/ir/IRScope;II)Ljava/lang/String;
            areturn
        end local 3 // int offset
        end local 2 // int depth
        end local 1 // org.jruby.ir.IRScope scope
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ir/IRBuilder;
            0    3     1   scope  Lorg/jruby/ir/IRScope;
            0    3     2   depth  I
            0    3     3  offset  I
    MethodParameters:
        Name  Flags
      scope   
      depth   
      offset  

  public org.jruby.ir.operands.Operand buildMatch3(org.jruby.ir.operands.Variable, org.jruby.ast.Match3Node);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/Match3Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.Match3Node matchNode
         0: .line 3071
            aload 0 /* this */
            aload 2 /* matchNode */
            invokevirtual org.jruby.ast.Match3Node.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* receiver */
        start local 3 // org.jruby.ir.operands.Operand receiver
         1: .line 3072
            aload 0 /* this */
            aload 2 /* matchNode */
            invokevirtual org.jruby.ast.Match3Node.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* value */
        start local 4 // org.jruby.ir.operands.Operand value
         2: .line 3074
            aload 1 /* result */
            ifnonnull 3
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         3: .line 3076
      StackMap locals: org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.MatchInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* result */
            aload 3 /* receiver */
            aload 4 /* value */
            invokespecial org.jruby.ir.instructions.MatchInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 4 // org.jruby.ir.operands.Operand value
        end local 3 // org.jruby.ir.operands.Operand receiver
        end local 2 // org.jruby.ast.Match3Node matchNode
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/jruby/ir/IRBuilder;
            0    4     1     result  Lorg/jruby/ir/operands/Variable;
            0    4     2  matchNode  Lorg/jruby/ast/Match3Node;
            1    4     3   receiver  Lorg/jruby/ir/operands/Operand;
            2    4     4      value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      result     
      matchNode  

  private org.jruby.ir.operands.Operand getContainerFromCPath(org.jruby.ast.Colon3Node);
    descriptor: (Lorg/jruby/ast/Colon3Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Colon3Node cpath
         0: .line 3082
            aload 1 /* cpath */
            instanceof org.jruby.ast.Colon2Node
            ifeq 7
         1: .line 3083
            aload 1 /* cpath */
            checkcast org.jruby.ast.Colon2Node
            invokevirtual org.jruby.ast.Colon2Node.getLeftNode:()Lorg/jruby/ast/Node;
            astore 3 /* leftNode */
        start local 3 // org.jruby.ast.Node leftNode
         2: .line 3085
            aload 3 /* leftNode */
            ifnull 5
         3: .line 3086
            aload 0 /* this */
            aload 3 /* leftNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* container */
        start local 2 // org.jruby.ir.operands.Operand container
         4: .line 3087
            goto 8
        end local 2 // org.jruby.ir.operands.Operand container
         5: .line 3088
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Colon3Node top org.jruby.ast.Node
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.findContainerModule:()Lorg/jruby/ir/operands/Operand;
            astore 2 /* container */
        end local 3 // org.jruby.ast.Node leftNode
        start local 2 // org.jruby.ir.operands.Operand container
         6: .line 3090
            goto 8
        end local 2 // org.jruby.ir.operands.Operand container
         7: .line 3091
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Colon3Node
      StackMap stack:
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
            astore 2 /* container */
        start local 2 // org.jruby.ir.operands.Operand container
         8: .line 3094
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 2 /* container */
            areturn
        end local 2 // org.jruby.ir.operands.Operand container
        end local 1 // org.jruby.ast.Colon3Node cpath
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/jruby/ir/IRBuilder;
            0    9     1      cpath  Lorg/jruby/ast/Colon3Node;
            4    5     2  container  Lorg/jruby/ir/operands/Operand;
            6    7     2  container  Lorg/jruby/ir/operands/Operand;
            8    9     2  container  Lorg/jruby/ir/operands/Operand;
            2    6     3   leftNode  Lorg/jruby/ast/Node;
    MethodParameters:
       Name  Flags
      cpath  

  public org.jruby.ir.operands.Operand buildModule(org.jruby.ast.ModuleNode);
    descriptor: (Lorg/jruby/ast/ModuleNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ModuleNode moduleNode
         0: .line 3098
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.executesOnce:Z
            istore 2 /* executesOnce */
        start local 2 // boolean executesOnce
         1: .line 3099
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getCPath:()Lorg/jruby/ast/Colon3Node;
            astore 3 /* cpath */
        start local 3 // org.jruby.ast.Colon3Node cpath
         2: .line 3100
            aload 3 /* cpath */
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.getBytes:()Lorg/jruby/util/ByteList;
            astore 4 /* moduleName */
        start local 4 // org.jruby.util.ByteList moduleName
         3: .line 3101
            aload 0 /* this */
            aload 3 /* cpath */
            invokevirtual org.jruby.ir.IRBuilder.getContainerFromCPath:(Lorg/jruby/ast/Colon3Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* container */
        start local 5 // org.jruby.ir.operands.Operand container
         4: .line 3105
            new org.jruby.ir.IRModuleBody
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* moduleName */
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getLine:()I
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getScope:()Lorg/jruby/parser/StaticScope;
            iload 2 /* executesOnce */
            invokespecial org.jruby.ir.IRModuleBody.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/util/ByteList;ILorg/jruby/parser/StaticScope;Z)V
            astore 6 /* body */
        start local 6 // org.jruby.ir.IRModuleBody body
         5: .line 3106
            aload 0 /* this */
            new org.jruby.ir.instructions.DefineModuleInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 6 /* body */
            aload 5 /* container */
            invokespecial org.jruby.ir.instructions.DefineModuleInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRModuleBody;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 7 /* bodyResult */
        start local 7 // org.jruby.ir.operands.Variable bodyResult
         6: .line 3108
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 6 /* body */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getBodyNode:()Lorg/jruby/ast/Node;
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getLine:()I
            aload 1 /* moduleNode */
            invokevirtual org.jruby.ast.ModuleNode.getEndLine:()I
            invokevirtual org.jruby.ir.IRBuilder.buildModuleOrClassBody:(Lorg/jruby/ast/Node;II)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         7: .line 3109
            aload 7 /* bodyResult */
            areturn
        end local 7 // org.jruby.ir.operands.Variable bodyResult
        end local 6 // org.jruby.ir.IRModuleBody body
        end local 5 // org.jruby.ir.operands.Operand container
        end local 4 // org.jruby.util.ByteList moduleName
        end local 3 // org.jruby.ast.Colon3Node cpath
        end local 2 // boolean executesOnce
        end local 1 // org.jruby.ast.ModuleNode moduleNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/jruby/ir/IRBuilder;
            0    8     1    moduleNode  Lorg/jruby/ast/ModuleNode;
            1    8     2  executesOnce  Z
            2    8     3         cpath  Lorg/jruby/ast/Colon3Node;
            3    8     4    moduleName  Lorg/jruby/util/ByteList;
            4    8     5     container  Lorg/jruby/ir/operands/Operand;
            5    8     6          body  Lorg/jruby/ir/IRModuleBody;
            6    8     7    bodyResult  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
            Name  Flags
      moduleNode  

  public org.jruby.ir.operands.Operand buildNext(org.jruby.ast.NextNode);
    descriptor: (Lorg/jruby/ast/NextNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.NextNode nextNode
         0: .line 3113
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
            astore 2 /* currLoop */
        start local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
         1: .line 3115
            aload 0 /* this */
            aload 1 /* nextNode */
            invokevirtual org.jruby.ast.NextNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* rv */
        start local 3 // org.jruby.ir.operands.Operand rv
         2: .line 3118
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifne 3
            aload 0 /* this */
            aload 2 /* currLoop */
            invokevirtual org.jruby.ir.IRBuilder.emitEnsureBlocks:(Lorg/jruby/ir/IRBuilder$IRLoop;)V
         3: .line 3120
      StackMap locals: org.jruby.ir.IRBuilder$IRLoop org.jruby.ir.operands.Operand
      StackMap stack:
            aload 2 /* currLoop */
            ifnull 6
         4: .line 3122
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* currLoop */
            getfield org.jruby.ir.IRBuilder$IRLoop.iterEndLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 3123
            goto 14
         6: .line 3124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ThreadPollInstr
            dup
            iconst_1
            invokespecial org.jruby.ir.instructions.ThreadPollInstr.<init>:(Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 3126
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClosure
            ifeq 13
         8: .line 3127
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IREvalScript
            ifeq 11
         9: .line 3128
            aload 0 /* this */
            aload 1 /* nextNode */
            ldc "Can't escape from eval with next"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
        10: .line 3129
            goto 14
        11: .line 3130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 3 /* rv */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        12: .line 3132
            goto 14
        13: .line 3133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* nextNode */
            ldc "Invalid next"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
        14: .line 3138
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            areturn
        end local 3 // org.jruby.ir.operands.Operand rv
        end local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
        end local 1 // org.jruby.ast.NextNode nextNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/jruby/ir/IRBuilder;
            0   15     1  nextNode  Lorg/jruby/ast/NextNode;
            1   15     2  currLoop  Lorg/jruby/ir/IRBuilder$IRLoop;
            2   15     3        rv  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      nextNode  final

  public org.jruby.ir.operands.Operand buildNthRef(org.jruby.ast.NthRefNode);
    descriptor: (Lorg/jruby/ast/NthRefNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.NthRefNode nthRefNode
         0: .line 3142
            aload 0 /* this */
            new org.jruby.ir.operands.NthRef
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* nthRefNode */
            invokevirtual org.jruby.ast.NthRefNode.getMatchNumber:()I
            invokespecial org.jruby.ir.operands.NthRef.<init>:(Lorg/jruby/ir/IRScope;I)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.NthRefNode nthRefNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ir/IRBuilder;
            0    1     1  nthRefNode  Lorg/jruby/ast/NthRefNode;
    MethodParameters:
            Name  Flags
      nthRefNode  

  public org.jruby.ir.operands.Operand buildNil();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3146
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand buildOpAsgn(org.jruby.ast.OpAsgnNode);
    descriptor: (Lorg/jruby/ast/OpAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=14, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpAsgnNode opAsgnNode
         0: .line 3152
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* readerValue */
        start local 3 // org.jruby.ir.operands.Variable readerValue
         1: .line 3153
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* writerValue */
        start local 4 // org.jruby.ir.operands.Variable writerValue
         2: .line 3154
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getReceiverNode:()Lorg/jruby/ast/Node;
            astore 5 /* receiver */
        start local 5 // org.jruby.ast.Node receiver
         3: .line 3155
            aload 5 /* receiver */
            instanceof org.jruby.ast.SelfNode
            ifeq 4
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            goto 5
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnNode top org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ast.Node
      StackMap stack:
         4: getstatic org.jruby.runtime.CallType.NORMAL:Lorg/jruby/runtime/CallType;
      StackMap locals:
      StackMap stack: org.jruby.runtime.CallType
         5: astore 6 /* callType */
        start local 6 // org.jruby.runtime.CallType callType
         6: .line 3158
            aload 0 /* this */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getReceiverNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* v1 */
        start local 7 // org.jruby.ir.operands.Operand v1
         7: .line 3160
            aconst_null
            astore 8 /* lazyLabel */
        start local 8 // org.jruby.ir.operands.Label lazyLabel
         8: .line 3161
            aconst_null
            astore 9 /* endLabel */
        start local 9 // org.jruby.ir.operands.Label endLabel
         9: .line 3162
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 10 /* result */
        start local 10 // org.jruby.ir.operands.Variable result
        10: .line 3163
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.isLazy:()Z
            ifeq 14
        11: .line 3164
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 8 /* lazyLabel */
        12: .line 3165
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 9 /* endLabel */
        13: .line 3166
            aload 0 /* this */
            new org.jruby.ir.instructions.BNilInstr
            dup
            aload 8 /* lazyLabel */
            aload 7 /* v1 */
            invokespecial org.jruby.ir.instructions.BNilInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 3169
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnNode top org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ast.Node org.jruby.runtime.CallType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 6 /* callType */
            aload 3 /* readerValue */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getVariableSymbolName:()Lorg/jruby/RubySymbol;
            aload 7 /* v1 */
            getstatic org.jruby.ir.instructions.Instr.EMPTY_OPERANDS:[Lorg/jruby/ir/operands/Operand;
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 3173
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.isOr:()Z
            istore 11 /* isOrOr */
        start local 11 // boolean isOrOr
        16: .line 3174
            iload 11 /* isOrOr */
            ifne 17
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.isAnd:()Z
            ifeq 28
        17: .line 3175
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* l */
        start local 2 // org.jruby.ir.operands.Label l
        18: .line 3176
            aload 0 /* this */
            aload 3 /* readerValue */
            iload 11 /* isOrOr */
            ifeq 19
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            goto 20
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnNode org.jruby.ir.operands.Label org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ast.Node org.jruby.runtime.CallType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable int
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable
        19: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnNode org.jruby.ir.operands.Label org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ast.Node org.jruby.runtime.CallType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable int
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ir.operands.Boolean
        20: aload 2 /* l */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 3179
            aload 0 /* this */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 12 /* v2 */
        start local 12 // org.jruby.ir.operands.Operand v2
        22: .line 3180
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 6 /* callType */
            aload 4 /* writerValue */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getVariableSymbolNameAsgn:()Lorg/jruby/RubySymbol;
            aload 7 /* v1 */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 12 /* v2 */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 3184
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 3 /* readerValue */
            aload 12 /* v2 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 3185
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* l */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        25: .line 3187
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.isLazy:()Z
            ifne 26
            aload 3 /* readerValue */
            areturn
        26: .line 3189
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 10 /* result */
            aload 3 /* readerValue */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 12 // org.jruby.ir.operands.Operand v2
        27: .line 3190
            goto 34
        end local 2 // org.jruby.ir.operands.Label l
        28: .line 3192
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnNode top org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ast.Node org.jruby.runtime.CallType org.jruby.ir.operands.Operand org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 12 /* v2 */
        start local 12 // org.jruby.ir.operands.Operand v2
        29: .line 3193
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 13 /* setValue */
        start local 13 // org.jruby.ir.operands.Variable setValue
        30: .line 3194
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 13 /* setValue */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getOperatorSymbolName:()Lorg/jruby/RubySymbol;
            aload 3 /* readerValue */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 12 /* v2 */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        31: .line 3197
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 6 /* callType */
            aload 4 /* writerValue */
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.getVariableSymbolNameAsgn:()Lorg/jruby/RubySymbol;
            aload 7 /* v1 */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 13 /* setValue */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        32: .line 3200
            aload 1 /* opAsgnNode */
            invokevirtual org.jruby.ast.OpAsgnNode.isLazy:()Z
            ifne 33
            aload 13 /* setValue */
            areturn
        33: .line 3202
      StackMap locals: org.jruby.ir.operands.Operand org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 10 /* result */
            aload 13 /* setValue */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 13 // org.jruby.ir.operands.Variable setValue
        end local 12 // org.jruby.ir.operands.Operand v2
        34: .line 3205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 9 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        35: .line 3206
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 8 /* lazyLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        36: .line 3207
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 10 /* result */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        37: .line 3208
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 9 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        38: .line 3210
            aload 10 /* result */
            areturn
        end local 11 // boolean isOrOr
        end local 10 // org.jruby.ir.operands.Variable result
        end local 9 // org.jruby.ir.operands.Label endLabel
        end local 8 // org.jruby.ir.operands.Label lazyLabel
        end local 7 // org.jruby.ir.operands.Operand v1
        end local 6 // org.jruby.runtime.CallType callType
        end local 5 // org.jruby.ast.Node receiver
        end local 4 // org.jruby.ir.operands.Variable writerValue
        end local 3 // org.jruby.ir.operands.Variable readerValue
        end local 1 // org.jruby.ast.OpAsgnNode opAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   39     0         this  Lorg/jruby/ir/IRBuilder;
            0   39     1   opAsgnNode  Lorg/jruby/ast/OpAsgnNode;
           18   28     2            l  Lorg/jruby/ir/operands/Label;
            1   39     3  readerValue  Lorg/jruby/ir/operands/Variable;
            2   39     4  writerValue  Lorg/jruby/ir/operands/Variable;
            3   39     5     receiver  Lorg/jruby/ast/Node;
            6   39     6     callType  Lorg/jruby/runtime/CallType;
            7   39     7           v1  Lorg/jruby/ir/operands/Operand;
            8   39     8    lazyLabel  Lorg/jruby/ir/operands/Label;
            9   39     9     endLabel  Lorg/jruby/ir/operands/Label;
           10   39    10       result  Lorg/jruby/ir/operands/Variable;
           16   39    11       isOrOr  Z
           22   27    12           v2  Lorg/jruby/ir/operands/Operand;
           29   34    12           v2  Lorg/jruby/ir/operands/Operand;
           30   34    13     setValue  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
            Name  Flags
      opAsgnNode  

  private org.jruby.ir.operands.Operand buildColon2ForConstAsgnDeclNode(org.jruby.ast.Node, org.jruby.ir.operands.Variable, boolean);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;Z)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=8, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node lhs
        start local 2 // org.jruby.ir.operands.Variable valueResult
        start local 3 // boolean constMissing
         0: .line 3214
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* leftModule */
        start local 4 // org.jruby.ir.operands.Variable leftModule
         1: .line 3217
            aload 1 /* lhs */
            instanceof org.jruby.ast.Colon2Node
            ifeq 7
         2: .line 3218
            aload 1 /* lhs */
            checkcast org.jruby.ast.Colon2Node
            astore 6 /* colon2Node */
        start local 6 // org.jruby.ast.Colon2Node colon2Node
         3: .line 3219
            aload 6 /* colon2Node */
            invokevirtual org.jruby.ast.Colon2Node.getName:()Lorg/jruby/RubySymbol;
            astore 5 /* name */
        start local 5 // org.jruby.RubySymbol name
         4: .line 3220
            aload 0 /* this */
            aload 6 /* colon2Node */
            invokevirtual org.jruby.ast.Colon2Node.getLeftNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* leftValue */
        start local 7 // org.jruby.ir.operands.Operand leftValue
         5: .line 3221
            aload 0 /* this */
            aload 4 /* leftModule */
            aload 7 /* leftValue */
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
        end local 7 // org.jruby.ir.operands.Operand leftValue
        end local 6 // org.jruby.ast.Colon2Node colon2Node
         6: .line 3222
            goto 9
        end local 5 // org.jruby.RubySymbol name
         7: .line 3223
      StackMap locals: org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            aload 4 /* leftModule */
            new org.jruby.ir.operands.ObjectClass
            dup
            invokespecial org.jruby.ir.operands.ObjectClass.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
         8: .line 3224
            aload 1 /* lhs */
            checkcast org.jruby.ast.Colon3Node
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            astore 5 /* name */
        start local 5 // org.jruby.RubySymbol name
         9: .line 3227
      StackMap locals: org.jruby.RubySymbol
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.SearchModuleForConstInstr
            dup
            aload 2 /* valueResult */
            aload 4 /* leftModule */
            aload 5 /* name */
            iconst_0
            iload 3 /* constMissing */
            invokespecial org.jruby.ir.instructions.SearchModuleForConstInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;ZZ)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3229
            aload 4 /* leftModule */
            areturn
        end local 5 // org.jruby.RubySymbol name
        end local 4 // org.jruby.ir.operands.Variable leftModule
        end local 3 // boolean constMissing
        end local 2 // org.jruby.ir.operands.Variable valueResult
        end local 1 // org.jruby.ast.Node lhs
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/jruby/ir/IRBuilder;
            0   11     1           lhs  Lorg/jruby/ast/Node;
            0   11     2   valueResult  Lorg/jruby/ir/operands/Variable;
            0   11     3  constMissing  Z
            1   11     4    leftModule  Lorg/jruby/ir/operands/Variable;
            4    7     5          name  Lorg/jruby/RubySymbol;
            9   11     5          name  Lorg/jruby/RubySymbol;
            3    6     6    colon2Node  Lorg/jruby/ast/Colon2Node;
            5    6     7     leftValue  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
              Name  Flags
      lhs           
      valueResult   
      constMissing  

  public org.jruby.ir.operands.Operand buildOpAsgnConstDeclNode(org.jruby.ast.OpAsgnConstDeclNode);
    descriptor: (Lorg/jruby/ast/OpAsgnConstDeclNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpAsgnConstDeclNode node
         0: .line 3233
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.isOr:()Z
            ifeq 10
         1: .line 3234
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* result */
        start local 2 // org.jruby.ir.operands.Variable result
         2: .line 3235
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* done */
        start local 3 // org.jruby.ir.operands.Label done
         3: .line 3236
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            aload 2 /* result */
            iconst_0
            invokevirtual org.jruby.ir.IRBuilder.buildColon2ForConstAsgnDeclNode:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;Z)Lorg/jruby/ir/operands/Operand;
            astore 4 /* module */
        start local 4 // org.jruby.ir.operands.Operand module
         4: .line 3237
            aload 0 /* this */
            aload 3 /* done */
            aload 2 /* result */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            invokestatic org.jruby.ir.instructions.BNEInstr.create:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/BranchInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 3238
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* rhsValue */
        start local 5 // org.jruby.ir.operands.Operand rhsValue
         6: .line 3239
            aload 0 /* this */
            aload 2 /* result */
            aload 5 /* rhsValue */
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
         7: .line 3240
            aload 0 /* this */
            new org.jruby.ir.instructions.PutConstInstr
            dup
            aload 4 /* module */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.Colon3Node
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* rhsValue */
            invokespecial org.jruby.ir.instructions.PutConstInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3241
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* done */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 3242
            aload 2 /* result */
            areturn
        end local 5 // org.jruby.ir.operands.Operand rhsValue
        end local 4 // org.jruby.ir.operands.Operand module
        end local 3 // org.jruby.ir.operands.Label done
        end local 2 // org.jruby.ir.operands.Variable result
        10: .line 3243
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.isAnd:()Z
            ifeq 20
        11: .line 3244
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* result */
        start local 2 // org.jruby.ir.operands.Variable result
        12: .line 3245
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* done */
        start local 3 // org.jruby.ir.operands.Label done
        13: .line 3246
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            aload 2 /* result */
            iconst_1
            invokevirtual org.jruby.ir.IRBuilder.buildColon2ForConstAsgnDeclNode:(Lorg/jruby/ast/Node;Lorg/jruby/ir/operands/Variable;Z)Lorg/jruby/ir/operands/Operand;
            astore 4 /* module */
        start local 4 // org.jruby.ir.operands.Operand module
        14: .line 3247
            aload 0 /* this */
            new org.jruby.ir.instructions.BFalseInstr
            dup
            aload 3 /* done */
            aload 2 /* result */
            invokespecial org.jruby.ir.instructions.BFalseInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 3248
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* rhsValue */
        start local 5 // org.jruby.ir.operands.Operand rhsValue
        16: .line 3249
            aload 0 /* this */
            aload 2 /* result */
            aload 5 /* rhsValue */
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            pop
        17: .line 3250
            aload 0 /* this */
            new org.jruby.ir.instructions.PutConstInstr
            dup
            aload 4 /* module */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            checkcast org.jruby.ast.Colon3Node
            invokevirtual org.jruby.ast.Colon3Node.getName:()Lorg/jruby/RubySymbol;
            aload 5 /* rhsValue */
            invokespecial org.jruby.ir.instructions.PutConstInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 3251
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* done */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        19: .line 3252
            aload 2 /* result */
            areturn
        end local 5 // org.jruby.ir.operands.Operand rhsValue
        end local 4 // org.jruby.ir.operands.Operand module
        end local 3 // org.jruby.ir.operands.Label done
        end local 2 // org.jruby.ir.operands.Variable result
        20: .line 3255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* result */
        start local 2 // org.jruby.ir.operands.Variable result
        21: .line 3256
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* lhs */
        start local 3 // org.jruby.ir.operands.Operand lhs
        22: .line 3257
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* rhs */
        start local 4 // org.jruby.ir.operands.Operand rhs
        23: .line 3258
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 2 /* result */
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpAsgnConstDeclNode.getSymbolOperator:()Lorg/jruby/RubySymbol;
            aload 3 /* lhs */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 4 /* rhs */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 3259
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            aload 1 /* node */
            aload 2 /* result */
            invokevirtual org.jruby.ir.IRBuilder.putConstantAssignment:(Lorg/jruby/ast/OpAsgnConstDeclNode;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 4 // org.jruby.ir.operands.Operand rhs
        end local 3 // org.jruby.ir.operands.Operand lhs
        end local 2 // org.jruby.ir.operands.Variable result
        end local 1 // org.jruby.ast.OpAsgnConstDeclNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0      this  Lorg/jruby/ir/IRBuilder;
            0   25     1      node  Lorg/jruby/ast/OpAsgnConstDeclNode;
            2   10     2    result  Lorg/jruby/ir/operands/Variable;
            3   10     3      done  Lorg/jruby/ir/operands/Label;
            4   10     4    module  Lorg/jruby/ir/operands/Operand;
            6   10     5  rhsValue  Lorg/jruby/ir/operands/Operand;
           12   20     2    result  Lorg/jruby/ir/operands/Variable;
           13   20     3      done  Lorg/jruby/ir/operands/Label;
           14   20     4    module  Lorg/jruby/ir/operands/Operand;
           16   20     5  rhsValue  Lorg/jruby/ir/operands/Operand;
           21   25     2    result  Lorg/jruby/ir/operands/Variable;
           22   25     3       lhs  Lorg/jruby/ir/operands/Operand;
           23   25     4       rhs  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildOpAsgnAnd(org.jruby.ast.OpAsgnAndNode);
    descriptor: (Lorg/jruby/ast/OpAsgnAndNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpAsgnAndNode andNode
         0: .line 3271
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* l */
        start local 2 // org.jruby.ir.operands.Label l
         1: .line 3272
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.OpAsgnAndNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* v1 */
        start local 3 // org.jruby.ir.operands.Operand v1
         2: .line 3273
            aload 0 /* this */
            aload 3 /* v1 */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* result */
        start local 4 // org.jruby.ir.operands.Variable result
         3: .line 3274
            aload 0 /* this */
            aload 3 /* v1 */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            aload 2 /* l */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3275
            aload 0 /* this */
            aload 1 /* andNode */
            invokevirtual org.jruby.ast.OpAsgnAndNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* v2 */
        start local 5 // org.jruby.ir.operands.Operand v2
         5: .line 3276
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* result */
            aload 5 /* v2 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 3277
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* l */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 3278
            aload 4 /* result */
            areturn
        end local 5 // org.jruby.ir.operands.Operand v2
        end local 4 // org.jruby.ir.operands.Variable result
        end local 3 // org.jruby.ir.operands.Operand v1
        end local 2 // org.jruby.ir.operands.Label l
        end local 1 // org.jruby.ast.OpAsgnAndNode andNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ir/IRBuilder;
            0    8     1  andNode  Lorg/jruby/ast/OpAsgnAndNode;
            1    8     2        l  Lorg/jruby/ir/operands/Label;
            2    8     3       v1  Lorg/jruby/ir/operands/Operand;
            3    8     4   result  Lorg/jruby/ir/operands/Variable;
            5    8     5       v2  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
         Name  Flags
      andNode  

  public org.jruby.ir.operands.Operand buildOpAsgnOr(org.jruby.ast.OpAsgnOrNode);
    descriptor: (Lorg/jruby/ast/OpAsgnOrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpAsgnOrNode orNode
         0: .line 3290
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* l1 */
        start local 2 // org.jruby.ir.operands.Label l1
         1: .line 3291
            aconst_null
            astore 3 /* l2 */
        start local 3 // org.jruby.ir.operands.Label l2
         2: .line 3292
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* flag */
        start local 4 // org.jruby.ir.operands.Variable flag
         3: .line 3294
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OpAsgnOrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.needsDefinitionCheck:()Z
            istore 6 /* needsDefnCheck */
        start local 6 // boolean needsDefnCheck
         4: .line 3295
            iload 6 /* needsDefnCheck */
            ifeq 9
         5: .line 3296
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 3 /* l2 */
         6: .line 3297
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OpAsgnOrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.buildGetDefinition:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* v1 */
        start local 5 // org.jruby.ir.operands.Operand v1
         7: .line 3298
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* flag */
            aload 5 /* v1 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3299
            aload 0 /* this */
            aload 4 /* flag */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            aload 3 /* l2 */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 5 // org.jruby.ir.operands.Operand v1
         9: .line 3301
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnOrNode org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable top int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OpAsgnOrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* v1 */
        start local 5 // org.jruby.ir.operands.Operand v1
        10: .line 3302
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* flag */
            aload 5 /* v1 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 3303
            aload 0 /* this */
            aload 5 /* v1 */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 7 /* result */
        start local 7 // org.jruby.ir.operands.Variable result
        12: .line 3304
            iload 6 /* needsDefnCheck */
            ifeq 14
        13: .line 3305
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* l2 */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 3307
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.OpAsgnOrNode org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand int org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            aload 4 /* flag */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            aload 2 /* l1 */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 3308
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OpAsgnOrNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 8 /* v2 */
        start local 8 // org.jruby.ir.operands.Operand v2
        16: .line 3309
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 7 /* result */
            aload 8 /* v2 */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 3310
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* l1 */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        18: .line 3313
            aload 7 /* result */
            areturn
        end local 8 // org.jruby.ir.operands.Operand v2
        end local 7 // org.jruby.ir.operands.Variable result
        end local 6 // boolean needsDefnCheck
        end local 5 // org.jruby.ir.operands.Operand v1
        end local 4 // org.jruby.ir.operands.Variable flag
        end local 3 // org.jruby.ir.operands.Label l2
        end local 2 // org.jruby.ir.operands.Label l1
        end local 1 // org.jruby.ast.OpAsgnOrNode orNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   19     0            this  Lorg/jruby/ir/IRBuilder;
            0   19     1          orNode  Lorg/jruby/ast/OpAsgnOrNode;
            1   19     2              l1  Lorg/jruby/ir/operands/Label;
            2   19     3              l2  Lorg/jruby/ir/operands/Label;
            3   19     4            flag  Lorg/jruby/ir/operands/Variable;
            7    9     5              v1  Lorg/jruby/ir/operands/Operand;
           10   19     5              v1  Lorg/jruby/ir/operands/Operand;
            4   19     6  needsDefnCheck  Z
           12   19     7          result  Lorg/jruby/ir/operands/Variable;
           16   19     8              v2  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      orNode  final

  public org.jruby.ir.operands.Operand buildOpElementAsgn(org.jruby.ast.OpElementAsgnNode);
    descriptor: (Lorg/jruby/ast/OpElementAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpElementAsgnNode node
         0: .line 3318
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpElementAsgnNode.isOr:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* node */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            invokevirtual org.jruby.ir.IRBuilder.buildOpElementAsgnWith:(Lorg/jruby/ast/OpElementAsgnNode;Lorg/jruby/ir/operands/Boolean;)Lorg/jruby/ir/operands/Operand;
            areturn
         1: .line 3321
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.jruby.ast.OpElementAsgnNode.isAnd:()Z
            ifeq 2
            aload 0 /* this */
            aload 1 /* node */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            invokevirtual org.jruby.ir.IRBuilder.buildOpElementAsgnWith:(Lorg/jruby/ast/OpElementAsgnNode;Lorg/jruby/ir/operands/Boolean;)Lorg/jruby/ir/operands/Operand;
            areturn
         2: .line 3324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ir.IRBuilder.buildOpElementAsgnWithMethod:(Lorg/jruby/ast/OpElementAsgnNode;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.OpElementAsgnNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;
            0    3     1  node  Lorg/jruby/ast/OpElementAsgnNode;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Operand buildOpElementAsgnWith(org.jruby.ast.OpElementAsgnNode, org.jruby.ir.operands.Boolean);
    descriptor: (Lorg/jruby/ast/OpElementAsgnNode;Lorg/jruby/ir/operands/Boolean;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=10, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpElementAsgnNode opElementAsgnNode
        start local 2 // org.jruby.ir.operands.Boolean truthy
         0: .line 3328
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getReceiverNode:()Lorg/jruby/ast/Node;
            astore 3 /* receiver */
        start local 3 // org.jruby.ast.Node receiver
         1: .line 3329
            aload 3 /* receiver */
            instanceof org.jruby.ast.SelfNode
            ifeq 2
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            goto 3
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
         2: getstatic org.jruby.runtime.CallType.NORMAL:Lorg/jruby/runtime/CallType;
      StackMap locals:
      StackMap stack: org.jruby.runtime.CallType
         3: astore 4 /* callType */
        start local 4 // org.jruby.runtime.CallType callType
         4: .line 3330
            aload 0 /* this */
            aload 3 /* receiver */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.containsVariableAssignment:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 5 /* array */
        start local 5 // org.jruby.ir.operands.Operand array
         5: .line 3331
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* endLabel */
        start local 6 // org.jruby.ir.operands.Label endLabel
         6: .line 3332
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 7 /* elt */
        start local 7 // org.jruby.ir.operands.Variable elt
         7: .line 3333
            aload 0 /* this */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 8 /* argList */
        start local 8 // org.jruby.ir.operands.Operand[] argList
         8: .line 3334
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* callType */
            aload 7 /* elt */
            aload 0 /* this */
            getstatic org.jruby.ir.instructions.ArrayDerefInstr.AREF:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            aload 5 /* array */
            aload 8 /* argList */
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 3335
            aload 0 /* this */
            aload 7 /* elt */
            aload 2 /* truthy */
            aload 6 /* endLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3336
            aload 0 /* this */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 9 /* value */
        start local 9 // org.jruby.ir.operands.Operand value
        11: .line 3338
            aload 8 /* argList */
            aload 9 /* value */
            invokestatic org.jruby.ir.IRBuilder.addArg:([Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)[Lorg/jruby/ir/operands/Operand;
            astore 8 /* argList */
        12: .line 3339
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* callType */
            aload 7 /* elt */
            aload 0 /* this */
            getstatic org.jruby.ir.instructions.ArrayDerefInstr.ASET:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            aload 5 /* array */
            aload 8 /* argList */
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 3340
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 7 /* elt */
            aload 9 /* value */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 3342
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* endLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        15: .line 3343
            aload 7 /* elt */
            areturn
        end local 9 // org.jruby.ir.operands.Operand value
        end local 8 // org.jruby.ir.operands.Operand[] argList
        end local 7 // org.jruby.ir.operands.Variable elt
        end local 6 // org.jruby.ir.operands.Label endLabel
        end local 5 // org.jruby.ir.operands.Operand array
        end local 4 // org.jruby.runtime.CallType callType
        end local 3 // org.jruby.ast.Node receiver
        end local 2 // org.jruby.ir.operands.Boolean truthy
        end local 1 // org.jruby.ast.OpElementAsgnNode opElementAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Lorg/jruby/ir/IRBuilder;
            0   16     1  opElementAsgnNode  Lorg/jruby/ast/OpElementAsgnNode;
            0   16     2             truthy  Lorg/jruby/ir/operands/Boolean;
            1   16     3           receiver  Lorg/jruby/ast/Node;
            4   16     4           callType  Lorg/jruby/runtime/CallType;
            5   16     5              array  Lorg/jruby/ir/operands/Operand;
            6   16     6           endLabel  Lorg/jruby/ir/operands/Label;
            7   16     7                elt  Lorg/jruby/ir/operands/Variable;
            8   16     8            argList  [Lorg/jruby/ir/operands/Operand;
           11   16     9              value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                   Name  Flags
      opElementAsgnNode  
      truthy             

  public org.jruby.ir.operands.Operand buildOpElementAsgnWithMethod(org.jruby.ast.OpElementAsgnNode);
    descriptor: (Lorg/jruby/ast/OpElementAsgnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=10, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OpElementAsgnNode opElementAsgnNode
         0: .line 3348
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getReceiverNode:()Lorg/jruby/ast/Node;
            astore 2 /* receiver */
        start local 2 // org.jruby.ast.Node receiver
         1: .line 3349
            aload 2 /* receiver */
            instanceof org.jruby.ast.SelfNode
            ifeq 2
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            goto 3
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
         2: getstatic org.jruby.runtime.CallType.NORMAL:Lorg/jruby/runtime/CallType;
      StackMap locals:
      StackMap stack: org.jruby.runtime.CallType
         3: astore 3 /* callType */
        start local 3 // org.jruby.runtime.CallType callType
         4: .line 3350
            aload 0 /* this */
            aload 2 /* receiver */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.containsVariableAssignment:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildWithOrder:(Lorg/jruby/ast/Node;Z)Lorg/jruby/ir/operands/Operand;
            astore 4 /* array */
        start local 4 // org.jruby.ir.operands.Operand array
         5: .line 3351
            aload 0 /* this */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 5 /* argList */
        start local 5 // org.jruby.ir.operands.Operand[] argList
         6: .line 3352
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 6 /* elt */
        start local 6 // org.jruby.ir.operands.Variable elt
         7: .line 3353
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 3 /* callType */
            aload 6 /* elt */
            aload 0 /* this */
            getstatic org.jruby.ir.instructions.ArrayDerefInstr.AREF:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            aload 4 /* array */
            aload 5 /* argList */
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3354
            aload 0 /* this */
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* value */
        start local 7 // org.jruby.ir.operands.Operand value
         9: .line 3355
            aload 1 /* opElementAsgnNode */
            invokevirtual org.jruby.ast.OpElementAsgnNode.getOperatorSymbolName:()Lorg/jruby/RubySymbol;
            astore 8 /* operation */
        start local 8 // org.jruby.RubySymbol operation
        10: .line 3356
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 3 /* callType */
            aload 6 /* elt */
            aload 8 /* operation */
            aload 6 /* elt */
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            aload 7 /* value */
            aastore
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 3359
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 9 /* tmp */
        start local 9 // org.jruby.ir.operands.Variable tmp
        12: .line 3360
            aload 5 /* argList */
            aload 6 /* elt */
            invokestatic org.jruby.ir.IRBuilder.addArg:([Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)[Lorg/jruby/ir/operands/Operand;
            astore 5 /* argList */
        13: .line 3361
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 3 /* callType */
            aload 9 /* tmp */
            aload 0 /* this */
            getstatic org.jruby.ir.instructions.ArrayDerefInstr.ASET:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            aload 4 /* array */
            aload 5 /* argList */
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        14: .line 3362
            aload 6 /* elt */
            areturn
        end local 9 // org.jruby.ir.operands.Variable tmp
        end local 8 // org.jruby.RubySymbol operation
        end local 7 // org.jruby.ir.operands.Operand value
        end local 6 // org.jruby.ir.operands.Variable elt
        end local 5 // org.jruby.ir.operands.Operand[] argList
        end local 4 // org.jruby.ir.operands.Operand array
        end local 3 // org.jruby.runtime.CallType callType
        end local 2 // org.jruby.ast.Node receiver
        end local 1 // org.jruby.ast.OpElementAsgnNode opElementAsgnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   15     0               this  Lorg/jruby/ir/IRBuilder;
            0   15     1  opElementAsgnNode  Lorg/jruby/ast/OpElementAsgnNode;
            1   15     2           receiver  Lorg/jruby/ast/Node;
            4   15     3           callType  Lorg/jruby/runtime/CallType;
            5   15     4              array  Lorg/jruby/ir/operands/Operand;
            6   15     5            argList  [Lorg/jruby/ir/operands/Operand;
            7   15     6                elt  Lorg/jruby/ir/operands/Variable;
            9   15     7              value  Lorg/jruby/ir/operands/Operand;
           10   15     8          operation  Lorg/jruby/RubySymbol;
           12   15     9                tmp  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
                   Name  Flags
      opElementAsgnNode  

  public org.jruby.ir.operands.Operand buildOr(org.jruby.ast.OrNode);
    descriptor: (Lorg/jruby/ast/OrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.OrNode orNode
         0: .line 3378
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysTrue:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
         1: .line 3381
      StackMap locals:
      StackMap stack:
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysFalse:()Z
            ifeq 4
         2: .line 3382
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
         3: .line 3383
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
         4: .line 3386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 2 /* endOfExprLabel */
        start local 2 // org.jruby.ir.operands.Label endOfExprLabel
         5: .line 3387
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getFirstNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* left */
        start local 3 // org.jruby.ir.operands.Operand left
         6: .line 3388
            aload 0 /* this */
            aload 3 /* left */
            invokevirtual org.jruby.ir.IRBuilder.getValueInTemporaryVariable:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* result */
        start local 4 // org.jruby.ir.operands.Variable result
         7: .line 3389
            aload 0 /* this */
            aload 3 /* left */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            aload 2 /* endOfExprLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3390
            aload 0 /* this */
            aload 1 /* orNode */
            invokevirtual org.jruby.ast.OrNode.getSecondNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 5 /* right */
        start local 5 // org.jruby.ir.operands.Operand right
         9: .line 3391
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 4 /* result */
            aload 5 /* right */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3392
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 2 /* endOfExprLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 3394
            aload 4 /* result */
            areturn
        end local 5 // org.jruby.ir.operands.Operand right
        end local 4 // org.jruby.ir.operands.Variable result
        end local 3 // org.jruby.ir.operands.Operand left
        end local 2 // org.jruby.ir.operands.Label endOfExprLabel
        end local 1 // org.jruby.ast.OrNode orNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lorg/jruby/ir/IRBuilder;
            0   12     1          orNode  Lorg/jruby/ast/OrNode;
            5   12     2  endOfExprLabel  Lorg/jruby/ir/operands/Label;
            6   12     3            left  Lorg/jruby/ir/operands/Operand;
            7   12     4          result  Lorg/jruby/ir/operands/Variable;
            9   12     5           right  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      orNode  final

  private org.jruby.ir.interpreter.InterpreterContext buildPrePostExeInner(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node body
         0: .line 3399
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.operands.CurrentScope.INSTANCE:Lorg/jruby/ir/operands/CurrentScope;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 3400
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.operands.ScopeModule.SCOPE_MODULE:[Lorg/jruby/ir/operands/ScopeModule;
            iconst_0
            aaload
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 3401
            aload 0 /* this */
            aload 1 /* body */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
         3: .line 3404
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            new org.jruby.ir.operands.Nil
            dup
            invokespecial org.jruby.ir.operands.Nil.<init>:()V
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3406
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 1 // org.jruby.ast.Node body
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ir/IRBuilder;
            0    5     1  body  Lorg/jruby/ast/Node;
    MethodParameters:
      Name  Flags
      body  

  private java.util.List<org.jruby.ir.instructions.Instr> buildPreExeInner(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node body
         0: .line 3410
            aload 0 /* this */
            aload 1 /* body */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
         1: .line 3412
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            areturn
        end local 1 // org.jruby.ast.Node body
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRBuilder;
            0    2     1  body  Lorg/jruby/ast/Node;
    Signature: (Lorg/jruby/ast/Node;)Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;
    MethodParameters:
      Name  Flags
      body  

  public org.jruby.ir.operands.Operand buildPostExe(org.jruby.ast.PostExeNode);
    descriptor: (Lorg/jruby/ast/PostExeNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.PostExeNode postExeNode
         0: .line 3416
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getRootLexicalScope:()Lorg/jruby/ir/IRScope;
            astore 2 /* topLevel */
        start local 2 // org.jruby.ir.IRScope topLevel
         1: .line 3417
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestTopLocalVariableScope:()Lorg/jruby/ir/IRScope;
            astore 3 /* nearestLVarScope */
        start local 3 // org.jruby.ir.IRScope nearestLVarScope
         2: .line 3419
            new org.jruby.ir.IRClosure
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* postExeNode */
            invokevirtual org.jruby.ast.PostExeNode.getLine:()I
            aload 3 /* nearestLVarScope */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
         3: .line 3420
            aload 1 /* postExeNode */
            invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/ast/PostExeNode;)Lorg/jruby/runtime/Signature;
            getstatic org.jruby.util.CommonByteLists._END_:Lorg/jruby/util/ByteList;
            iconst_1
         4: .line 3419
            invokespecial org.jruby.ir.IRClosure.<init>:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;ILorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;Lorg/jruby/util/ByteList;Z)V
            astore 4 /* endClosure */
        start local 4 // org.jruby.ir.IRClosure endClosure
         5: .line 3421
            aload 4 /* endClosure */
            invokevirtual org.jruby.ir.IRClosure.setIsEND:()V
         6: .line 3423
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 4 /* endClosure */
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* postExeNode */
            invokevirtual org.jruby.ast.PostExeNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.buildPrePostExeInner:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/interpreter/InterpreterContext;
            pop
         7: .line 3429
            aload 0 /* this */
            new org.jruby.ir.instructions.RecordEndBlockInstr
            dup
            aload 2 /* topLevel */
            new org.jruby.ir.operands.WrappedIRClosure
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 4 /* endClosure */
            invokespecial org.jruby.ir.operands.WrappedIRClosure.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/IRClosure;)V
            invokespecial org.jruby.ir.instructions.RecordEndBlockInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/WrappedIRClosure;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3430
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 4 // org.jruby.ir.IRClosure endClosure
        end local 3 // org.jruby.ir.IRScope nearestLVarScope
        end local 2 // org.jruby.ir.IRScope topLevel
        end local 1 // org.jruby.ast.PostExeNode postExeNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lorg/jruby/ir/IRBuilder;
            0    9     1       postExeNode  Lorg/jruby/ast/PostExeNode;
            1    9     2          topLevel  Lorg/jruby/ir/IRScope;
            2    9     3  nearestLVarScope  Lorg/jruby/ir/IRScope;
            5    9     4        endClosure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
             Name  Flags
      postExeNode  

  public org.jruby.ir.operands.Operand buildPreExe(org.jruby.ast.PreExeNode);
    descriptor: (Lorg/jruby/ast/PreExeNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.PreExeNode preExeNode
         0: .line 3434
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRBuilder.newIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            astore 2 /* builder */
        start local 2 // org.jruby.ir.IRBuilder builder
         1: .line 3436
            aload 2 /* builder */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.currentScopeVariable:Lorg/jruby/ir/operands/Variable;
            putfield org.jruby.ir.IRBuilder.currentScopeVariable:Lorg/jruby/ir/operands/Variable;
         2: .line 3438
            aload 2 /* builder */
            aload 1 /* preExeNode */
            invokevirtual org.jruby.ast.PreExeNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.buildPreExeInner:(Lorg/jruby/ast/Node;)Ljava/util/List;
            astore 3 /* beginInstrs */
        start local 3 // java.util.List beginInstrs
         3: .line 3440
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
            aload 3 /* beginInstrs */
            invokeinterface java.util.List.addAll:(ILjava/util/Collection;)Z
            pop
         4: .line 3442
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
            aload 3 /* beginInstrs */
            invokeinterface java.util.List.size:()I
            iadd
            putfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
         5: .line 3444
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 3 // java.util.List beginInstrs
        end local 2 // org.jruby.ir.IRBuilder builder
        end local 1 // org.jruby.ast.PreExeNode preExeNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/jruby/ir/IRBuilder;
            0    6     1   preExeNode  Lorg/jruby/ast/PreExeNode;
            1    6     2      builder  Lorg/jruby/ir/IRBuilder;
            3    6     3  beginInstrs  Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;
    MethodParameters:
            Name  Flags
      preExeNode  

  public org.jruby.ir.operands.Operand buildRational(org.jruby.ast.RationalNode);
    descriptor: (Lorg/jruby/ast/RationalNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RationalNode rationalNode
         0: .line 3449
            new org.jruby.ir.operands.Rational
            dup
            aload 0 /* this */
            aload 1 /* rationalNode */
            invokevirtual org.jruby.ast.RationalNode.getNumerator:()Lorg/jruby/ast/NumericNode;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            checkcast org.jruby.ir.operands.ImmutableLiteral
         1: .line 3450
            aload 0 /* this */
            aload 1 /* rationalNode */
            invokevirtual org.jruby.ast.RationalNode.getDenominator:()Lorg/jruby/ast/NumericNode;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            checkcast org.jruby.ir.operands.ImmutableLiteral
         2: .line 3449
            invokespecial org.jruby.ir.operands.Rational.<init>:(Lorg/jruby/ir/operands/ImmutableLiteral;Lorg/jruby/ir/operands/ImmutableLiteral;)V
            areturn
        end local 1 // org.jruby.ast.RationalNode rationalNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/jruby/ir/IRBuilder;
            0    3     1  rationalNode  Lorg/jruby/ast/RationalNode;
    MethodParameters:
              Name  Flags
      rationalNode  

  public org.jruby.ir.operands.Operand buildRedo(org.jruby.ast.RedoNode);
    descriptor: (Lorg/jruby/ast/RedoNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RedoNode redoNode
         0: .line 3455
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifne 2
         1: .line 3456
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
            invokevirtual org.jruby.ir.IRBuilder.emitEnsureBlocks:(Lorg/jruby/ir/IRBuilder$IRLoop;)V
         2: .line 3462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
            astore 2 /* currLoop */
        start local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
         3: .line 3463
            aload 2 /* currLoop */
            ifnull 6
         4: .line 3464
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* currLoop */
            getfield org.jruby.ir.IRBuilder$IRLoop.iterStartLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 3465
            goto 16
         6: .line 3466
      StackMap locals: org.jruby.ir.IRBuilder$IRLoop
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClosure
            ifeq 15
         7: .line 3467
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IREvalScript
            ifeq 10
         8: .line 3468
            aload 0 /* this */
            aload 1 /* redoNode */
            ldc "Can't escape from eval with redo"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
         9: .line 3469
            goto 16
        10: .line 3470
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ThreadPollInstr
            dup
            iconst_1
            invokespecial org.jruby.ir.instructions.ThreadPollInstr.<init>:(Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 3471
            new org.jruby.ir.operands.Label
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_START"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            invokespecial org.jruby.ir.operands.Label.<init>:(Ljava/lang/String;I)V
            astore 3 /* startLabel */
        start local 3 // org.jruby.ir.operands.Label startLabel
        12: .line 3472
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 3 /* startLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        13: .line 3473
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 3 /* startLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 3 // org.jruby.ir.operands.Label startLabel
        14: .line 3475
            goto 16
        15: .line 3476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* redoNode */
            ldc "Invalid redo"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
        16: .line 3479
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 2 // org.jruby.ir.IRBuilder$IRLoop currLoop
        end local 1 // org.jruby.ast.RedoNode redoNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Lorg/jruby/ir/IRBuilder;
            0   17     1    redoNode  Lorg/jruby/ast/RedoNode;
            3   17     2    currLoop  Lorg/jruby/ir/IRBuilder$IRLoop;
           12   14     3  startLabel  Lorg/jruby/ir/operands/Label;
    MethodParameters:
          Name  Flags
      redoNode  

  public org.jruby.ir.operands.Operand buildRegexp(org.jruby.ast.RegexpNode);
    descriptor: (Lorg/jruby/ast/RegexpNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RegexpNode reNode
         0: .line 3485
            aload 0 /* this */
            new org.jruby.ir.operands.Regexp
            dup
            aload 1 /* reNode */
            invokevirtual org.jruby.ast.RegexpNode.getValue:()Lorg/jruby/util/ByteList;
            aload 1 /* reNode */
            invokevirtual org.jruby.ast.RegexpNode.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokespecial org.jruby.ir.operands.Regexp.<init>:(Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.RegexpNode reNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jruby/ir/IRBuilder;
            0    1     1  reNode  Lorg/jruby/ast/RegexpNode;
    MethodParameters:
        Name  Flags
      reNode  

  public org.jruby.ir.operands.Operand buildRescue(org.jruby.ast.RescueNode);
    descriptor: (Lorg/jruby/ast/RescueNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RescueNode node
         0: .line 3489
            aload 0 /* this */
            aload 1 /* node */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.buildEnsureInternal:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.RescueNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/RescueNode;
    MethodParameters:
      Name  Flags
      node  

  private boolean canBacktraceBeRemoved(org.jruby.ast.RescueNode);
    descriptor: (Lorg/jruby/ast/RescueNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RescueNode rescueNode
         0: .line 3493
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifne 2
            aload 1 /* rescueNode */
            instanceof org.jruby.ast.RescueModNode
            ifne 3
         1: .line 3494
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getElseNode:()Lorg/jruby/ast/Node;
            ifnull 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 3496
      StackMap locals:
      StackMap stack:
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getRescueNode:()Lorg/jruby/ast/RescueBodyNode;
            astore 2 /* rescueClause */
        start local 2 // org.jruby.ast.RescueBodyNode rescueClause
         4: .line 3498
            aload 2 /* rescueClause */
            invokevirtual org.jruby.ast.RescueBodyNode.getOptRescueNode:()Lorg/jruby/ast/RescueBodyNode;
            ifnull 5
            iconst_0
            ireturn
         5: .line 3499
      StackMap locals: org.jruby.ast.RescueBodyNode
      StackMap stack:
            aload 2 /* rescueClause */
            invokevirtual org.jruby.ast.RescueBodyNode.getExceptionNodes:()Lorg/jruby/ast/Node;
            ifnull 6
            iconst_0
            ireturn
         6: .line 3501
      StackMap locals:
      StackMap stack:
            aload 2 /* rescueClause */
            invokevirtual org.jruby.ast.RescueBodyNode.getBodyNode:()Lorg/jruby/ast/Node;
            astore 3 /* body */
        start local 3 // org.jruby.ast.Node body
         7: .line 3505
            aload 3 /* body */
            instanceof org.jruby.ast.GlobalVarNode
            ifeq 8
            aload 3 /* body */
            checkcast org.jruby.ast.GlobalVarNode
            invokevirtual org.jruby.ast.GlobalVarNode.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            ldc "$!"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
            iconst_0
            ireturn
         8: .line 3510
      StackMap locals: org.jruby.ast.Node
      StackMap stack:
            aload 3 /* body */
            instanceof org.jruby.ast.SideEffectFree
            ireturn
        end local 3 // org.jruby.ast.Node body
        end local 2 // org.jruby.ast.RescueBodyNode rescueClause
        end local 1 // org.jruby.ast.RescueNode rescueNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/jruby/ir/IRBuilder;
            0    9     1    rescueNode  Lorg/jruby/ast/RescueNode;
            4    9     2  rescueClause  Lorg/jruby/ast/RescueBodyNode;
            7    9     3          body  Lorg/jruby/ast/Node;
    MethodParameters:
            Name  Flags
      rescueNode  

  private org.jruby.ir.operands.Operand buildRescueInternal(org.jruby.ast.RescueNode, org.jruby.ir.IRBuilder$EnsureBlockInfo);
    descriptor: (Lorg/jruby/ast/RescueNode;Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RescueNode rescueNode
        start local 2 // org.jruby.ir.IRBuilder$EnsureBlockInfo ensure
         0: .line 3514
            aload 0 /* this */
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ir.IRBuilder.canBacktraceBeRemoved:(Lorg/jruby/ast/RescueNode;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: istore 3 /* needsBacktrace */
        start local 3 // boolean needsBacktrace
         3: .line 3517
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 4 /* rBeginLabel */
        start local 4 // org.jruby.ir.operands.Label rBeginLabel
         4: .line 3518
            aload 2 /* ensure */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.end:Lorg/jruby/ir/operands/Label;
            astore 5 /* rEndLabel */
        start local 5 // org.jruby.ir.operands.Label rEndLabel
         5: .line 3519
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* rescueLabel */
        start local 6 // org.jruby.ir.operands.Label rescueLabel
         6: .line 3520
            aload 2 /* ensure */
            iload 3 /* needsBacktrace */
            putfield org.jruby.ir.IRBuilder$EnsureBlockInfo.needsBacktrace:Z
         7: .line 3522
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 4 /* rBeginLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         8: .line 3525
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr
            dup
            aload 6 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.ExceptionRegionStartMarkerInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         9: .line 3526
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            aload 6 /* rescueLabel */
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 3527
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            iload 3 /* needsBacktrace */
            invokevirtual org.jruby.ir.IRManager.needsBacktrace:(Z)Lorg/jruby/ir/instructions/ToggleBacktraceInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        11: .line 3530
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            astore 7 /* tmp */
        start local 7 // org.jruby.ir.operands.Operand tmp
        12: .line 3531
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 8 /* rv */
        start local 8 // org.jruby.ir.operands.Variable rv
        13: .line 3532
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getBodyNode:()Lorg/jruby/ast/Node;
            ifnull 14
            aload 0 /* this */
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* tmp */
        14: .line 3550
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.RescueNode org.jruby.ir.IRBuilder$EnsureBlockInfo int org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ir.operands.Operand org.jruby.ir.operands.Variable
      StackMap stack:
            new org.jruby.ir.IRBuilder$RescueBlockInfo
            dup
            aload 4 /* rBeginLabel */
            aload 2 /* ensure */
            getfield org.jruby.ir.IRBuilder$EnsureBlockInfo.savedGlobalException:Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.ir.IRBuilder$RescueBlockInfo.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Variable;)V
            astore 9 /* rbi */
        start local 9 // org.jruby.ir.IRBuilder$RescueBlockInfo rbi
        15: .line 3551
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescueBlockStack:Ljava/util/Stack;
            aload 9 /* rbi */
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 3555
            aload 0 /* this */
            new org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr
            dup
            invokespecial org.jruby.ir.instructions.ExceptionRegionEndMarkerInstr.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 3556
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescuers:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        18: .line 3559
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getElseNode:()Lorg/jruby/ast/Node;
            ifnull 21
        19: .line 3560
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 3561
            aload 0 /* this */
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getElseNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 7 /* tmp */
        21: .line 3564
      StackMap locals: org.jruby.ir.IRBuilder$RescueBlockInfo
      StackMap stack:
            aload 7 /* tmp */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 25
        22: .line 3565
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 8 /* rv */
            aload 7 /* tmp */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 3570
            aload 2 /* ensure */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.cloneIntoHostScope:(Lorg/jruby/ir/IRBuilder;)V
        24: .line 3571
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 5 /* rEndLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        25: .line 3583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* rescueLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        26: .line 3587
            iload 3 /* needsBacktrace */
            ifne 27
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            iconst_1
            invokevirtual org.jruby.ir.IRManager.needsBacktrace:(Z)Lorg/jruby/ir/instructions/ToggleBacktraceInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        27: .line 3590
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReceiveRubyExceptionInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            invokespecial org.jruby.ir.instructions.ReceiveRubyExceptionInstr.<init>:(Lorg/jruby/ir/operands/Variable;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 10 /* exc */
        start local 10 // org.jruby.ir.operands.Variable exc
        28: .line 3593
            aload 0 /* this */
            aload 1 /* rescueNode */
            invokevirtual org.jruby.ast.RescueNode.getRescueNode:()Lorg/jruby/ast/RescueBodyNode;
            aload 8 /* rv */
            aload 10 /* exc */
            aload 5 /* rEndLabel */
            invokevirtual org.jruby.ir.IRBuilder.buildRescueBodyInternal:(Lorg/jruby/ast/RescueBodyNode;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Label;)V
        29: .line 3595
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescueBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        30: .line 3596
            aload 8 /* rv */
            areturn
        end local 10 // org.jruby.ir.operands.Variable exc
        end local 9 // org.jruby.ir.IRBuilder$RescueBlockInfo rbi
        end local 8 // org.jruby.ir.operands.Variable rv
        end local 7 // org.jruby.ir.operands.Operand tmp
        end local 6 // org.jruby.ir.operands.Label rescueLabel
        end local 5 // org.jruby.ir.operands.Label rEndLabel
        end local 4 // org.jruby.ir.operands.Label rBeginLabel
        end local 3 // boolean needsBacktrace
        end local 2 // org.jruby.ir.IRBuilder$EnsureBlockInfo ensure
        end local 1 // org.jruby.ast.RescueNode rescueNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   31     0            this  Lorg/jruby/ir/IRBuilder;
            0   31     1      rescueNode  Lorg/jruby/ast/RescueNode;
            0   31     2          ensure  Lorg/jruby/ir/IRBuilder$EnsureBlockInfo;
            3   31     3  needsBacktrace  Z
            4   31     4     rBeginLabel  Lorg/jruby/ir/operands/Label;
            5   31     5       rEndLabel  Lorg/jruby/ir/operands/Label;
            6   31     6     rescueLabel  Lorg/jruby/ir/operands/Label;
           12   31     7             tmp  Lorg/jruby/ir/operands/Operand;
           13   31     8              rv  Lorg/jruby/ir/operands/Variable;
           15   31     9             rbi  Lorg/jruby/ir/IRBuilder$RescueBlockInfo;
           28   31    10             exc  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
            Name  Flags
      rescueNode  
      ensure      

  private void outputExceptionCheck(org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand, org.jruby.ir.operands.Label);
    descriptor: (Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand excType
        start local 2 // org.jruby.ir.operands.Operand excObj
        start local 3 // org.jruby.ir.operands.Label caughtLabel
         0: .line 3600
            aload 0 /* this */
            new org.jruby.ir.instructions.RescueEQQInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 1 /* excType */
            aload 2 /* excObj */
            invokespecial org.jruby.ir.instructions.RescueEQQInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 4 /* eqqResult */
        start local 4 // org.jruby.ir.operands.Variable eqqResult
         1: .line 3601
            aload 0 /* this */
            aload 4 /* eqqResult */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            aload 3 /* caughtLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 3602
            return
        end local 4 // org.jruby.ir.operands.Variable eqqResult
        end local 3 // org.jruby.ir.operands.Label caughtLabel
        end local 2 // org.jruby.ir.operands.Operand excObj
        end local 1 // org.jruby.ir.operands.Operand excType
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/jruby/ir/IRBuilder;
            0    3     1      excType  Lorg/jruby/ir/operands/Operand;
            0    3     2       excObj  Lorg/jruby/ir/operands/Operand;
            0    3     3  caughtLabel  Lorg/jruby/ir/operands/Label;
            1    3     4    eqqResult  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
             Name  Flags
      excType      
      excObj       
      caughtLabel  

  private void buildRescueBodyInternal(org.jruby.ast.RescueBodyNode, org.jruby.ir.operands.Variable, org.jruby.ir.operands.Variable, org.jruby.ir.operands.Label);
    descriptor: (Lorg/jruby/ast/RescueBodyNode;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RescueBodyNode rescueBodyNode
        start local 2 // org.jruby.ir.operands.Variable rv
        start local 3 // org.jruby.ir.operands.Variable exc
        start local 4 // org.jruby.ir.operands.Label endLabel
         0: .line 3605
            aload 1 /* rescueBodyNode */
            invokevirtual org.jruby.ast.RescueBodyNode.getExceptionNodes:()Lorg/jruby/ast/Node;
            astore 5 /* exceptionList */
        start local 5 // org.jruby.ast.Node exceptionList
         1: .line 3608
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 6 /* uncaughtLabel */
        start local 6 // org.jruby.ir.operands.Label uncaughtLabel
         2: .line 3609
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 7 /* caughtLabel */
        start local 7 // org.jruby.ir.operands.Label caughtLabel
         3: .line 3610
            aload 5 /* exceptionList */
            ifnull 17
         4: .line 3611
            aload 5 /* exceptionList */
            instanceof org.jruby.ast.ListNode
            ifeq 12
         5: .line 3612
            aload 5 /* exceptionList */
            checkcast org.jruby.ast.ListNode
            invokevirtual org.jruby.ast.ListNode.children:()[Lorg/jruby/ast/Node;
            astore 8 /* exceptionNodes */
        start local 8 // org.jruby.ast.Node[] exceptionNodes
         6: .line 3613
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         7: goto 10
         8: .line 3614
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.RescueBodyNode org.jruby.ir.operands.Variable org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ast.Node org.jruby.ir.operands.Label org.jruby.ir.operands.Label org.jruby.ast.Node[] int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* exceptionNodes */
            iload 9 /* i */
            aaload
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 3 /* exc */
            aload 7 /* caughtLabel */
            invokevirtual org.jruby.ir.IRBuilder.outputExceptionCheck:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
         9: .line 3613
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 9 /* i */
            aload 8 /* exceptionNodes */
            arraylength
            if_icmplt 8
        end local 9 // int i
        end local 8 // org.jruby.ast.Node[] exceptionNodes
        11: .line 3616
            goto 18
      StackMap locals:
      StackMap stack:
        12: aload 5 /* exceptionList */
            instanceof org.jruby.ast.SplatNode
            ifeq 15
        13: .line 3617
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* exceptionList */
            checkcast org.jruby.ast.SplatNode
            invokevirtual org.jruby.ast.SplatNode.getValue:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 3 /* exc */
            aload 7 /* caughtLabel */
            invokevirtual org.jruby.ir.IRBuilder.outputExceptionCheck:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
        14: .line 3618
            goto 18
        15: .line 3619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* exceptionList */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            aload 3 /* exc */
            aload 7 /* caughtLabel */
            invokevirtual org.jruby.ir.IRBuilder.outputExceptionCheck:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
        16: .line 3621
            goto 18
        17: .line 3622
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getStandardError:()Lorg/jruby/ir/operands/StandardError;
            aload 3 /* exc */
            aload 7 /* caughtLabel */
            invokevirtual org.jruby.ir.IRBuilder.outputExceptionCheck:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)V
        18: .line 3626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 6 /* uncaughtLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        19: .line 3627
            aload 1 /* rescueBodyNode */
            invokevirtual org.jruby.ast.RescueBodyNode.getOptRescueNode:()Lorg/jruby/ast/RescueBodyNode;
            ifnull 22
        20: .line 3628
            aload 0 /* this */
            aload 1 /* rescueBodyNode */
            invokevirtual org.jruby.ast.RescueBodyNode.getOptRescueNode:()Lorg/jruby/ast/RescueBodyNode;
            aload 2 /* rv */
            aload 3 /* exc */
            aload 4 /* endLabel */
            invokevirtual org.jruby.ir.IRBuilder.buildRescueBodyInternal:(Lorg/jruby/ast/RescueBodyNode;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Label;)V
        21: .line 3629
            goto 23
        22: .line 3630
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            aload 3 /* exc */
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        23: .line 3634
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 7 /* caughtLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        24: .line 3635
            aload 1 /* rescueBodyNode */
            invokevirtual org.jruby.ast.RescueBodyNode.getBodyNode:()Lorg/jruby/ast/Node;
            astore 8 /* realBody */
        start local 8 // org.jruby.ast.Node realBody
        25: .line 3636
            aload 0 /* this */
            aload 8 /* realBody */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 9 /* x */
        start local 9 // org.jruby.ir.operands.Operand x
        26: .line 3637
            aload 9 /* x */
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            if_acmpeq 30
        27: .line 3639
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 2 /* rv */
            aload 9 /* x */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        28: .line 3643
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$EnsureBlockInfo
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder$EnsureBlockInfo.cloneIntoHostScope:(Lorg/jruby/ir/IRBuilder;)V
        29: .line 3645
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 4 /* endLabel */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        30: .line 3647
      StackMap locals: org.jruby.ast.Node org.jruby.ir.operands.Operand
      StackMap stack:
            return
        end local 9 // org.jruby.ir.operands.Operand x
        end local 8 // org.jruby.ast.Node realBody
        end local 7 // org.jruby.ir.operands.Label caughtLabel
        end local 6 // org.jruby.ir.operands.Label uncaughtLabel
        end local 5 // org.jruby.ast.Node exceptionList
        end local 4 // org.jruby.ir.operands.Label endLabel
        end local 3 // org.jruby.ir.operands.Variable exc
        end local 2 // org.jruby.ir.operands.Variable rv
        end local 1 // org.jruby.ast.RescueBodyNode rescueBodyNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   31     0            this  Lorg/jruby/ir/IRBuilder;
            0   31     1  rescueBodyNode  Lorg/jruby/ast/RescueBodyNode;
            0   31     2              rv  Lorg/jruby/ir/operands/Variable;
            0   31     3             exc  Lorg/jruby/ir/operands/Variable;
            0   31     4        endLabel  Lorg/jruby/ir/operands/Label;
            1   31     5   exceptionList  Lorg/jruby/ast/Node;
            2   31     6   uncaughtLabel  Lorg/jruby/ir/operands/Label;
            3   31     7     caughtLabel  Lorg/jruby/ir/operands/Label;
            6   11     8  exceptionNodes  [Lorg/jruby/ast/Node;
            7   11     9               i  I
           25   31     8        realBody  Lorg/jruby/ast/Node;
           26   31     9               x  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                Name  Flags
      rescueBodyNode  
      rv              
      exc             
      endLabel        

  public org.jruby.ir.operands.Operand buildRetry();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3661
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescueBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifeq 3
         1: .line 3662
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            getstatic org.jruby.ir.operands.IRException.RETRY_LocalJumpError:Lorg/jruby/ir/operands/IRException;
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 3663
            goto 8
         3: .line 3664
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ThreadPollInstr
            dup
            iconst_1
            invokespecial org.jruby.ir.instructions.ThreadPollInstr.<init>:(Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3666
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeRescueBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.peek:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRBuilder$RescueBlockInfo
            astore 1 /* rbi */
        start local 1 // org.jruby.ir.IRBuilder$RescueBlockInfo rbi
         5: .line 3667
            aload 0 /* this */
            new org.jruby.ir.instructions.PutGlobalVarInstr
            dup
            aload 0 /* this */
            ldc "$!"
            invokevirtual org.jruby.ir.IRBuilder.symbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 1 /* rbi */
            getfield org.jruby.ir.IRBuilder$RescueBlockInfo.savedExceptionVariable:Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.ir.instructions.PutGlobalVarInstr.<init>:(Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 3668
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 1 /* rbi */
            getfield org.jruby.ir.IRBuilder$RescueBlockInfo.entryLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 3670
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.setHasLoopsFlag:()V
        end local 1 // org.jruby.ir.IRBuilder$RescueBlockInfo rbi
         8: .line 3672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/ir/IRBuilder;
            5    8     1   rbi  Lorg/jruby/ir/IRBuilder$RescueBlockInfo;

  private org.jruby.ir.operands.Operand processEnsureRescueBlocks(org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand retVal
         0: .line 3679
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.activeEnsureBlockStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.empty:()Z
            ifne 3
         1: .line 3680
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 1 /* retVal */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            astore 1 /* retVal */
         2: .line 3681
            aload 0 /* this */
            aconst_null
            invokevirtual org.jruby.ir.IRBuilder.emitEnsureBlocks:(Lorg/jruby/ir/IRBuilder$IRLoop;)V
         3: .line 3683
      StackMap locals:
      StackMap stack:
            aload 1 /* retVal */
            areturn
        end local 1 // org.jruby.ir.operands.Operand retVal
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jruby/ir/IRBuilder;
            0    4     1  retVal  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      retVal  

  public org.jruby.ir.operands.Operand buildReturn(org.jruby.ast.ReturnNode);
    descriptor: (Lorg/jruby/ast/ReturnNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ReturnNode returnNode
         0: .line 3687
            aload 0 /* this */
            aload 1 /* returnNode */
            invokevirtual org.jruby.ast.ReturnNode.getValueNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* retVal */
        start local 2 // org.jruby.ir.operands.Operand retVal
         1: .line 3689
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClosure
            ifeq 17
         2: .line 3690
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.isWithinEND:()Z
            ifeq 5
         3: .line 3692
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            getstatic org.jruby.ir.operands.IRException.RETURN_LocalJumpError:Lorg/jruby/ir/operands/IRException;
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         4: .line 3693
            goto 26
         5: .line 3699
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestMethod:()Lorg/jruby/ir/IRMethod;
            ifnull 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 3 /* definedWithinMethod */
        start local 3 // boolean definedWithinMethod
         8: .line 3700
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IREvalScript
            ifne 10
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRFor
            ifne 10
         9: .line 3701
            aload 0 /* this */
            new org.jruby.ir.instructions.CheckForLJEInstr
            dup
            iload 3 /* definedWithinMethod */
            invokespecial org.jruby.ir.instructions.CheckForLJEInstr.<init>:(Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3702
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
        11: new org.jruby.ir.instructions.NonlocalReturnInstr
            dup
            aload 2 /* retVal */
        12: .line 3703
            iload 3 /* definedWithinMethod */
            ifeq 13
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestMethod:()Lorg/jruby/ir/IRMethod;
            invokevirtual org.jruby.ir.IRMethod.getId:()Ljava/lang/String;
            goto 14
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ReturnNode org.jruby.ir.operands.Operand int
      StackMap stack: org.jruby.ir.IRBuilder new 11 new 11 org.jruby.ir.operands.Operand
        13: ldc "--none--"
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.ReturnNode org.jruby.ir.operands.Operand int
      StackMap stack: org.jruby.ir.IRBuilder new 11 new 11 org.jruby.ir.operands.Operand java.lang.String
        14: invokespecial org.jruby.ir.instructions.NonlocalReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;Ljava/lang/String;)V
        15: .line 3702
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 3 // boolean definedWithinMethod
        16: .line 3705
            goto 26
      StackMap locals:
      StackMap stack:
        17: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.isModuleBody:()Z
            ifeq 22
        18: .line 3706
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestMethod:()Lorg/jruby/ir/IRMethod;
            astore 3 /* sm */
        start local 3 // org.jruby.ir.IRMethod sm
        19: .line 3709
            aload 3 /* sm */
            ifnonnull 20
            aload 0 /* this */
            new org.jruby.ir.instructions.ThrowExceptionInstr
            dup
            getstatic org.jruby.ir.operands.IRException.RETURN_LocalJumpError:Lorg/jruby/ir/operands/IRException;
            invokespecial org.jruby.ir.instructions.ThrowExceptionInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        20: .line 3710
      StackMap locals: org.jruby.ir.IRMethod
      StackMap stack:
            aload 3 /* sm */
            ifnull 26
            aload 0 /* this */
            new org.jruby.ir.instructions.NonlocalReturnInstr
            dup
            aload 2 /* retVal */
            aload 3 /* sm */
            invokevirtual org.jruby.ir.IRMethod.getId:()Ljava/lang/String;
            invokespecial org.jruby.ir.instructions.NonlocalReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;Ljava/lang/String;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 3 // org.jruby.ir.IRMethod sm
        21: .line 3711
            goto 26
        22: .line 3712
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* retVal */
            invokevirtual org.jruby.ir.IRBuilder.processEnsureRescueBlocks:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* retVal */
        23: .line 3714
            getstatic org.jruby.RubyInstanceConfig.FULL_TRACE_ENABLED:Z
            ifeq 25
        24: .line 3715
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.RETURN:Lorg/jruby/runtime/RubyEvent;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            aload 1 /* returnNode */
            invokevirtual org.jruby.ast.ReturnNode.getLine:()I
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        25: .line 3718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 2 /* retVal */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        26: .line 3724
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRBuilder.U_NIL:Lorg/jruby/ir/operands/UnexecutableNil;
            areturn
        end local 2 // org.jruby.ir.operands.Operand retVal
        end local 1 // org.jruby.ast.ReturnNode returnNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   27     0                 this  Lorg/jruby/ir/IRBuilder;
            0   27     1           returnNode  Lorg/jruby/ast/ReturnNode;
            1   27     2               retVal  Lorg/jruby/ir/operands/Operand;
            8   16     3  definedWithinMethod  Z
           19   21     3                   sm  Lorg/jruby/ir/IRMethod;
    MethodParameters:
            Name  Flags
      returnNode  

  public org.jruby.ir.interpreter.InterpreterContext buildEvalRoot(org.jruby.ast.RootNode);
    descriptor: (Lorg/jruby/ast/RootNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RootNode rootNode
         0: .line 3728
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.executesOnce:Z
         1: .line 3729
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
         2: .line 3730
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            invokevirtual org.jruby.ir.IRManager.newLineNumber:(I)Lorg/jruby/ir/instructions/LineNumberInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         3: .line 3732
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         4: .line 3733
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         5: .line 3735
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            putfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
         6: .line 3737
            aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.getBodyNode:()Lorg/jruby/ast/Node;
            ifnonnull 7
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         8: astore 2 /* returnValue */
        start local 2 // org.jruby.ir.operands.Operand returnValue
         9: .line 3738
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 2 /* returnValue */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3740
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 2 // org.jruby.ir.operands.Operand returnValue
        end local 1 // org.jruby.ast.RootNode rootNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/jruby/ir/IRBuilder;
            0   11     1     rootNode  Lorg/jruby/ast/RootNode;
            9   11     2  returnValue  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
          Name  Flags
      rootNode  

  public static org.jruby.ir.interpreter.InterpreterContext buildRoot(org.jruby.ir.IRManager, org.jruby.ast.RootNode);
    descriptor: (Lorg/jruby/ir/IRManager;Lorg/jruby/ast/RootNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRManager manager
        start local 1 // org.jruby.ast.RootNode rootNode
         0: .line 3744
            aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.getFile:()Ljava/lang/String;
            astore 2 /* file */
        start local 2 // java.lang.String file
         1: .line 3745
            new org.jruby.ir.IRScriptBody
            dup
            aload 0 /* manager */
            aload 2 /* file */
            ifnonnull 2
            ldc "(anon)"
            goto 3
      StackMap locals: org.jruby.ir.IRManager org.jruby.ast.RootNode java.lang.String
      StackMap stack: new 1 new 1 org.jruby.ir.IRManager
         2: aload 2 /* file */
      StackMap locals: org.jruby.ir.IRManager org.jruby.ast.RootNode java.lang.String
      StackMap stack: new 1 new 1 org.jruby.ir.IRManager java.lang.String
         3: aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokespecial org.jruby.ir.IRScriptBody.<init>:(Lorg/jruby/ir/IRManager;Ljava/lang/String;Lorg/jruby/parser/StaticScope;)V
            astore 3 /* script */
        start local 3 // org.jruby.ir.IRScriptBody script
         4: .line 3747
            aload 0 /* manager */
            aload 3 /* script */
            invokestatic org.jruby.ir.IRBuilder.topIRBuilder:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;)Lorg/jruby/ir/IRBuilder;
            aload 1 /* rootNode */
            invokevirtual org.jruby.ir.IRBuilder.buildRootInner:(Lorg/jruby/ast/RootNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 3 // org.jruby.ir.IRScriptBody script
        end local 2 // java.lang.String file
        end local 1 // org.jruby.ast.RootNode rootNode
        end local 0 // org.jruby.ir.IRManager manager
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0   manager  Lorg/jruby/ir/IRManager;
            0    5     1  rootNode  Lorg/jruby/ast/RootNode;
            1    5     2      file  Ljava/lang/String;
            4    5     3    script  Lorg/jruby/ir/IRScriptBody;
    MethodParameters:
          Name  Flags
      manager   
      rootNode  

  private void addCurrentScopeAndModule();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3751
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.operands.CurrentScope.INSTANCE:Lorg/jruby/ir/operands/CurrentScope;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 3752
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.operands.ScopeModule.SCOPE_MODULE:[Lorg/jruby/ir/operands/ScopeModule;
            iconst_0
            aaload
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         2: .line 3753
            return
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;

  private org.jruby.ir.interpreter.InterpreterContext buildRootInner(org.jruby.ast.RootNode);
    descriptor: (Lorg/jruby/ast/RootNode;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.RootNode rootNode
         0: .line 3756
            aload 0 /* this */
            aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.needsCoverage:()Z
            putfield org.jruby.ir.IRBuilder.needsCodeCoverage:Z
         1: .line 3757
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         2: .line 3758
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         3: .line 3760
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            putfield org.jruby.ir.IRBuilder.afterPrologueIndex:I
         4: .line 3763
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 0 /* this */
            aload 1 /* rootNode */
            invokevirtual org.jruby.ast.RootNode.getBodyNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 3765
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.computeScopeFlagsEarly:(Ljava/util/List;)V
         6: .line 3767
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.canReceiveNonlocalReturns:()Z
            ifeq 7
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.handleNonlocalReturnInMethod:()V
         7: .line 3769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 1 // org.jruby.ast.RootNode rootNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/jruby/ir/IRBuilder;
            0    8     1  rootNode  Lorg/jruby/ast/RootNode;
    MethodParameters:
          Name  Flags
      rootNode  

  public org.jruby.ir.operands.Variable buildSelf();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3773
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getSelf:()Lorg/jruby/ir/operands/Variable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand buildSplat(org.jruby.ast.SplatNode);
    descriptor: (Lorg/jruby/ast/SplatNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.SplatNode splatNode
         0: .line 3777
            aload 0 /* this */
            new org.jruby.ir.instructions.BuildSplatInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            aload 1 /* splatNode */
            invokevirtual org.jruby.ast.SplatNode.getValue:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            iconst_1
            invokespecial org.jruby.ir.instructions.BuildSplatInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.SplatNode splatNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jruby/ir/IRBuilder;
            0    1     1  splatNode  Lorg/jruby/ast/SplatNode;
    MethodParameters:
           Name  Flags
      splatNode  

  public org.jruby.ir.operands.Operand buildStr(org.jruby.ast.StrNode);
    descriptor: (Lorg/jruby/ast/StrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.StrNode strNode
         0: .line 3781
            aload 0 /* this */
            aload 1 /* strNode */
            invokevirtual org.jruby.ir.IRBuilder.buildStrRaw:(Lorg/jruby/ast/StrNode;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* literal */
        start local 2 // org.jruby.ir.operands.Operand literal
         1: .line 3783
            aload 2 /* literal */
            instanceof org.jruby.ir.operands.FrozenString
            ifeq 2
            aload 2 /* literal */
            goto 3
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
         2: aload 0 /* this */
            aload 2 /* literal */
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
         3: areturn
        end local 2 // org.jruby.ir.operands.Operand literal
        end local 1 // org.jruby.ast.StrNode strNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ir/IRBuilder;
            0    4     1  strNode  Lorg/jruby/ast/StrNode;
            1    4     2  literal  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
         Name  Flags
      strNode  

  public org.jruby.ir.operands.Operand buildStrRaw(org.jruby.ast.StrNode);
    descriptor: (Lorg/jruby/ast/StrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.StrNode strNode
         0: .line 3787
            aload 1 /* strNode */
            instanceof org.jruby.ast.FileNode
            ifeq 1
            new org.jruby.ir.operands.Filename
            dup
            invokespecial org.jruby.ir.operands.Filename.<init>:()V
            areturn
         1: .line 3789
      StackMap locals:
      StackMap stack:
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.getLine:()I
            istore 2 /* line */
        start local 2 // int line
         2: .line 3791
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.isFrozen:()Z
            ifeq 3
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.getValue:()Lorg/jruby/util/ByteList;
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.getCodeRange:()I
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            iload 2 /* line */
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/util/ByteList;ILjava/lang/String;I)V
            areturn
         3: .line 3793
      StackMap locals: int
      StackMap stack:
            new org.jruby.ir.operands.StringLiteral
            dup
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.getValue:()Lorg/jruby/util/ByteList;
            aload 1 /* strNode */
            invokevirtual org.jruby.ast.StrNode.getCodeRange:()I
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            iload 2 /* line */
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Lorg/jruby/util/ByteList;ILjava/lang/String;I)V
            areturn
        end local 2 // int line
        end local 1 // org.jruby.ast.StrNode strNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ir/IRBuilder;
            0    4     1  strNode  Lorg/jruby/ast/StrNode;
            2    4     2     line  I
    MethodParameters:
         Name  Flags
      strNode  

  private org.jruby.ir.operands.Operand buildSuperInstr(org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand[]);
    descriptor: (Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand block
        start local 2 // org.jruby.ir.operands.Operand[] args
         0: .line 3798
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 4 /* ret */
        start local 4 // org.jruby.ir.operands.Variable ret
         1: .line 3799
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 7
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRClassBody
            ifeq 7
         2: .line 3800
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            checkcast org.jruby.ir.IRMethod
            getfield org.jruby.ir.IRMethod.isInstanceMethod:Z
            ifeq 5
         3: .line 3801
            new org.jruby.ir.instructions.InstanceSuperInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* ret */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* args */
            aload 1 /* block */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.InstanceSuperInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            astore 3 /* superInstr */
        start local 3 // org.jruby.ir.instructions.CallInstr superInstr
         4: .line 3802
            goto 8
        end local 3 // org.jruby.ir.instructions.CallInstr superInstr
         5: .line 3803
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand[] top org.jruby.ir.operands.Variable
      StackMap stack:
            new org.jruby.ir.instructions.ClassSuperInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* ret */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getName:()Lorg/jruby/RubySymbol;
            aload 2 /* args */
            aload 1 /* block */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.ClassSuperInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/RubySymbol;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            astore 3 /* superInstr */
        start local 3 // org.jruby.ir.instructions.CallInstr superInstr
         6: .line 3805
            goto 8
        end local 3 // org.jruby.ir.instructions.CallInstr superInstr
         7: .line 3810
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.instructions.UnresolvedSuperInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 4 /* ret */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            aload 2 /* args */
            aload 1 /* block */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.UnresolvedSuperInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            astore 3 /* superInstr */
        start local 3 // org.jruby.ir.instructions.CallInstr superInstr
         8: .line 3812
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand org.jruby.ir.operands.Operand[] org.jruby.ir.instructions.CallInstr org.jruby.ir.operands.Variable
      StackMap stack:
            aload 0 /* this */
            aload 1 /* block */
            aload 3 /* superInstr */
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/instructions/CallInstr;)V
         9: .line 3813
            aload 4 /* ret */
            areturn
        end local 4 // org.jruby.ir.operands.Variable ret
        end local 3 // org.jruby.ir.instructions.CallInstr superInstr
        end local 2 // org.jruby.ir.operands.Operand[] args
        end local 1 // org.jruby.ir.operands.Operand block
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/ir/IRBuilder;
            0   10     1       block  Lorg/jruby/ir/operands/Operand;
            0   10     2        args  [Lorg/jruby/ir/operands/Operand;
            4    5     3  superInstr  Lorg/jruby/ir/instructions/CallInstr;
            6    7     3  superInstr  Lorg/jruby/ir/instructions/CallInstr;
            8   10     3  superInstr  Lorg/jruby/ir/instructions/CallInstr;
            1   10     4         ret  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
       Name  Flags
      block  
      args   

  public org.jruby.ir.operands.Operand buildSuper(org.jruby.ast.SuperNode);
    descriptor: (Lorg/jruby/ast/SuperNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.SuperNode superNode
         0: .line 3817
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.isModuleBody:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSuperInScriptBody:()Lorg/jruby/ir/operands/Operand;
            areturn
         1: .line 3819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* superNode */
            invokevirtual org.jruby.ast.SuperNode.getArgsNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallArgs:(Lorg/jruby/ast/Node;)[Lorg/jruby/ir/operands/Operand;
            astore 2 /* args */
        start local 2 // org.jruby.ir.operands.Operand[] args
         2: .line 3820
            aload 0 /* this */
            aload 1 /* superNode */
            invokevirtual org.jruby.ast.SuperNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 3 /* block */
        start local 3 // org.jruby.ir.operands.Operand block
         3: .line 3821
            aload 3 /* block */
            ifnonnull 4
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 3 /* block */
         4: .line 3822
      StackMap locals: org.jruby.ir.operands.Operand[] org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            aload 3 /* block */
            aload 2 /* args */
            invokevirtual org.jruby.ir.IRBuilder.buildSuperInstr:(Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 3 // org.jruby.ir.operands.Operand block
        end local 2 // org.jruby.ir.operands.Operand[] args
        end local 1 // org.jruby.ast.SuperNode superNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/jruby/ir/IRBuilder;
            0    5     1  superNode  Lorg/jruby/ast/SuperNode;
            2    5     2       args  [Lorg/jruby/ir/operands/Operand;
            3    5     3      block  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      superNode  

  private org.jruby.ir.operands.Operand buildSuperInScriptBody();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3826
            aload 0 /* this */
            new org.jruby.ir.instructions.UnresolvedSuperInstr
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.instructions.Instr.EMPTY_OPERANDS:[Lorg/jruby/ir/operands/Operand;
            aconst_null
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            invokespecial org.jruby.ir.instructions.UnresolvedSuperInstr.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand buildSValue(org.jruby.ast.SValueNode);
    descriptor: (Lorg/jruby/ast/SValueNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.SValueNode node
         0: .line 3831
            aload 0 /* this */
            new org.jruby.ir.operands.SValue
            dup
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.jruby.ast.SValueNode.getValue:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            invokespecial org.jruby.ir.operands.SValue.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.copyAndReturnValue:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.SValueNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/SValueNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildSymbol(org.jruby.ast.SymbolNode);
    descriptor: (Lorg/jruby/ast/SymbolNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.SymbolNode node
         0: .line 3836
            new org.jruby.ir.operands.Symbol
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.SymbolNode.getName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.Symbol.<init>:(Lorg/jruby/RubySymbol;)V
            areturn
        end local 1 // org.jruby.ast.SymbolNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1  node  Lorg/jruby/ast/SymbolNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildTrue();
    descriptor: ()Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 3840
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Operand buildUndef(org.jruby.ast.Node);
    descriptor: (Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node node
         0: .line 3844
            aload 0 /* this */
            aload 1 /* node */
            checkcast org.jruby.ast.UndefNode
            invokevirtual org.jruby.ast.UndefNode.getName:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* methName */
        start local 2 // org.jruby.ir.operands.Operand methName
         1: .line 3845
            aload 0 /* this */
            new org.jruby.ir.instructions.UndefMethodInstr
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 2 /* methName */
            invokespecial org.jruby.ir.instructions.UndefMethodInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.ir.operands.Operand methName
        end local 1 // org.jruby.ast.Node node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ir/IRBuilder;
            0    2     1      node  Lorg/jruby/ast/Node;
            1    2     2  methName  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      node  

  private org.jruby.ir.operands.Operand buildConditionalLoop(org.jruby.ast.Node, org.jruby.ast.Node, boolean, boolean);
    descriptor: (Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;ZZ)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node conditionNode
        start local 2 // org.jruby.ast.Node bodyNode
        start local 3 // boolean isWhile
        start local 4 // boolean isLoopHeadCondition
         0: .line 3850
            iload 4 /* isLoopHeadCondition */
            ifeq 5
         1: .line 3851
            iload 3 /* isWhile */
            ifeq 2
            aload 1 /* conditionNode */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysFalse:()Z
            ifne 3
         2: .line 3852
      StackMap locals:
      StackMap stack:
            iload 3 /* isWhile */
            ifne 5
            aload 1 /* conditionNode */
            invokevirtual org.jruby.ast.Node.getNodeType:()Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.alwaysTrue:()Z
            ifeq 5
         3: .line 3854
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* conditionNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
         4: .line 3855
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
         5: .line 3857
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.IRBuilder$IRLoop
            dup
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getCurrentLoop:()Lorg/jruby/ir/IRBuilder$IRLoop;
            invokespecial org.jruby.ir.IRBuilder$IRLoop.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder$IRLoop;)V
            astore 5 /* loop */
        start local 5 // org.jruby.ir.IRBuilder$IRLoop loop
         6: .line 3858
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopResult:Lorg/jruby/ir/operands/Variable;
            astore 6 /* loopResult */
        start local 6 // org.jruby.ir.operands.Variable loopResult
         7: .line 3859
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getNewLabel:()Lorg/jruby/ir/operands/Label;
            astore 7 /* setupResultLabel */
        start local 7 // org.jruby.ir.operands.Label setupResultLabel
         8: .line 3862
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.loopStack:Ljava/util/Stack;
            aload 5 /* loop */
            invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 3865
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopStartLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        10: .line 3866
            iload 4 /* isLoopHeadCondition */
            ifeq 15
        11: .line 3867
            aload 0 /* this */
            aload 1 /* conditionNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 8 /* cv */
        start local 8 // org.jruby.ir.operands.Operand cv
        12: .line 3868
            aload 0 /* this */
            aload 8 /* cv */
            iload 3 /* isWhile */
            ifeq 13
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
            goto 14
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node int int org.jruby.ir.IRBuilder$IRLoop org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand
        13: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node int int org.jruby.ir.IRBuilder$IRLoop org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand org.jruby.ir.operands.Boolean
        14: aload 7 /* setupResultLabel */
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 8 // org.jruby.ir.operands.Operand cv
        15: .line 3872
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.iterStartLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        16: .line 3875
            aload 0 /* this */
            new org.jruby.ir.instructions.ThreadPollInstr
            dup
            iconst_1
            invokespecial org.jruby.ir.instructions.ThreadPollInstr.<init>:(Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        17: .line 3878
            aload 2 /* bodyNode */
            ifnull 18
            aload 0 /* this */
            aload 2 /* bodyNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            pop
        18: .line 3881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.iterEndLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        19: .line 3882
            iload 4 /* isLoopHeadCondition */
            ifeq 22
        20: .line 3883
            aload 0 /* this */
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopStartLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        21: .line 3884
            goto 26
        22: .line 3885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* conditionNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 8 /* cv */
        start local 8 // org.jruby.ir.operands.Operand cv
        23: .line 3886
            aload 0 /* this */
            aload 8 /* cv */
            iload 3 /* isWhile */
            ifeq 24
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getTrue:()Lorg/jruby/ir/operands/Boolean;
            goto 25
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node int int org.jruby.ir.IRBuilder$IRLoop org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand
        24: aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getFalse:()Lorg/jruby/ir/operands/Boolean;
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ast.Node org.jruby.ast.Node int int org.jruby.ir.IRBuilder$IRLoop org.jruby.ir.operands.Variable org.jruby.ir.operands.Label org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder org.jruby.ir.operands.Operand org.jruby.ir.operands.Boolean
        25: aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.iterStartLabel:Lorg/jruby/ir/operands/Label;
            invokestatic org.jruby.ir.IRBuilder.createBranch:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        end local 8 // org.jruby.ir.operands.Operand cv
        26: .line 3890
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 7 /* setupResultLabel */
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        27: .line 3891
            aload 0 /* this */
            new org.jruby.ir.instructions.CopyInstr
            dup
            aload 6 /* loopResult */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        28: .line 3894
            aload 0 /* this */
            new org.jruby.ir.instructions.LabelInstr
            dup
            aload 5 /* loop */
            getfield org.jruby.ir.IRBuilder$IRLoop.loopEndLabel:Lorg/jruby/ir/operands/Label;
            invokespecial org.jruby.ir.instructions.LabelInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        29: .line 3897
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.loopStack:Ljava/util/Stack;
            invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
            pop
        30: .line 3899
            aload 6 /* loopResult */
            areturn
        end local 7 // org.jruby.ir.operands.Label setupResultLabel
        end local 6 // org.jruby.ir.operands.Variable loopResult
        end local 5 // org.jruby.ir.IRBuilder$IRLoop loop
        end local 4 // boolean isLoopHeadCondition
        end local 3 // boolean isWhile
        end local 2 // org.jruby.ast.Node bodyNode
        end local 1 // org.jruby.ast.Node conditionNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   31     0                 this  Lorg/jruby/ir/IRBuilder;
            0   31     1        conditionNode  Lorg/jruby/ast/Node;
            0   31     2             bodyNode  Lorg/jruby/ast/Node;
            0   31     3              isWhile  Z
            0   31     4  isLoopHeadCondition  Z
            6   31     5                 loop  Lorg/jruby/ir/IRBuilder$IRLoop;
            7   31     6           loopResult  Lorg/jruby/ir/operands/Variable;
            8   31     7     setupResultLabel  Lorg/jruby/ir/operands/Label;
           12   15     8                   cv  Lorg/jruby/ir/operands/Operand;
           23   26     8                   cv  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
                     Name  Flags
      conditionNode        
      bodyNode             
      isWhile              
      isLoopHeadCondition  

  public org.jruby.ir.operands.Operand buildUntil(org.jruby.ast.UntilNode);
    descriptor: (Lorg/jruby/ast/UntilNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.UntilNode untilNode
         0: .line 3904
            aload 0 /* this */
            aload 1 /* untilNode */
            invokevirtual org.jruby.ast.UntilNode.getConditionNode:()Lorg/jruby/ast/Node;
            aload 1 /* untilNode */
            invokevirtual org.jruby.ast.UntilNode.getBodyNode:()Lorg/jruby/ast/Node;
            iconst_0
            aload 1 /* untilNode */
            invokevirtual org.jruby.ast.UntilNode.evaluateAtStart:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildConditionalLoop:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;ZZ)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.UntilNode untilNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jruby/ir/IRBuilder;
            0    1     1  untilNode  Lorg/jruby/ast/UntilNode;
    MethodParameters:
           Name  Flags
      untilNode  final

  public org.jruby.ir.operands.Operand buildVAlias(org.jruby.ast.VAliasNode);
    descriptor: (Lorg/jruby/ast/VAliasNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.VAliasNode valiasNode
         0: .line 3908
            aload 0 /* this */
            new org.jruby.ir.instructions.GVarAliasInstr
            dup
            new org.jruby.ir.operands.StringLiteral
            dup
            aload 1 /* valiasNode */
            invokevirtual org.jruby.ast.VAliasNode.getNewName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Lorg/jruby/RubySymbol;)V
            new org.jruby.ir.operands.StringLiteral
            dup
            aload 1 /* valiasNode */
            invokevirtual org.jruby.ast.VAliasNode.getOldName:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.StringLiteral.<init>:(Lorg/jruby/RubySymbol;)V
            invokespecial org.jruby.ir.instructions.GVarAliasInstr.<init>:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 3910
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getNil:()Lorg/jruby/ir/operands/Nil;
            areturn
        end local 1 // org.jruby.ast.VAliasNode valiasNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/jruby/ir/IRBuilder;
            0    2     1  valiasNode  Lorg/jruby/ast/VAliasNode;
    MethodParameters:
            Name  Flags
      valiasNode  

  public org.jruby.ir.operands.Operand buildVCall(org.jruby.ir.operands.Variable, org.jruby.ast.VCallNode);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ast/VCallNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ast.VCallNode node
         0: .line 3914
            aload 1 /* result */
            ifnonnull 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 1 /* result */
         1: .line 3916
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.VARIABLE:Lorg/jruby/runtime/CallType;
            aload 1 /* result */
            aload 2 /* node */
            invokevirtual org.jruby.ast.VCallNode.getName:()Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSelf:()Lorg/jruby/ir/operands/Variable;
            getstatic org.jruby.ir.instructions.Instr.EMPTY_OPERANDS:[Lorg/jruby/ir/operands/Operand;
            aconst_null
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.ast.VCallNode node
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/ir/IRBuilder;
            0    2     1  result  Lorg/jruby/ir/operands/Variable;
            0    2     2    node  Lorg/jruby/ast/VCallNode;
    MethodParameters:
        Name  Flags
      result  
      node    

  public org.jruby.ir.operands.Operand buildWhile(org.jruby.ast.WhileNode);
    descriptor: (Lorg/jruby/ast/WhileNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.WhileNode whileNode
         0: .line 3920
            aload 0 /* this */
            aload 1 /* whileNode */
            invokevirtual org.jruby.ast.WhileNode.getConditionNode:()Lorg/jruby/ast/Node;
            aload 1 /* whileNode */
            invokevirtual org.jruby.ast.WhileNode.getBodyNode:()Lorg/jruby/ast/Node;
            iconst_1
            aload 1 /* whileNode */
            invokevirtual org.jruby.ast.WhileNode.evaluateAtStart:()Z
            invokevirtual org.jruby.ir.IRBuilder.buildConditionalLoop:(Lorg/jruby/ast/Node;Lorg/jruby/ast/Node;ZZ)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ast.WhileNode whileNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jruby/ir/IRBuilder;
            0    1     1  whileNode  Lorg/jruby/ast/WhileNode;
    MethodParameters:
           Name  Flags
      whileNode  final

  public org.jruby.ir.operands.Operand buildXStr(org.jruby.ast.XStrNode);
    descriptor: (Lorg/jruby/ast/XStrNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.XStrNode node
         0: .line 3924
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            getstatic org.jruby.runtime.CallType.FUNCTIONAL:Lorg/jruby/runtime/CallType;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
         1: .line 3925
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            ldc "`"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            getstatic org.jruby.ir.operands.Self.SELF:Lorg/jruby/ir/operands/Self;
         2: .line 3926
            iconst_1
            anewarray org.jruby.ir.operands.Operand
            dup
            iconst_0
            new org.jruby.ir.operands.FrozenString
            dup
            aload 1 /* node */
            invokevirtual org.jruby.ast.XStrNode.getValue:()Lorg/jruby/util/ByteList;
            aload 1 /* node */
            invokevirtual org.jruby.ast.XStrNode.getCodeRange:()I
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            aload 1 /* node */
            invokevirtual org.jruby.ast.XStrNode.getLine:()I
            invokespecial org.jruby.ir.operands.FrozenString.<init>:(Lorg/jruby/util/ByteList;ILjava/lang/String;I)V
            aastore
            aconst_null
         3: .line 3924
            invokestatic org.jruby.ir.instructions.CallInstr.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;Lorg/jruby/ir/operands/Variable;Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/instructions/CallInstr;
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 1 // org.jruby.ast.XStrNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ir/IRBuilder;
            0    4     1  node  Lorg/jruby/ast/XStrNode;
    MethodParameters:
      Name  Flags
      node  

  public org.jruby.ir.operands.Operand buildYield(org.jruby.ast.YieldNode, org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/ast/YieldNode;Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.YieldNode node
        start local 2 // org.jruby.ir.operands.Variable result
         0: .line 3930
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRScriptBody
            ifeq 1
            aload 0 /* this */
            aload 1 /* node */
            ldc "Invalid yield"
            invokevirtual org.jruby.ir.IRBuilder.throwSyntaxError:(Lorg/jruby/ast/Node;Ljava/lang/String;)V
         1: .line 3932
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* unwrap */
        start local 3 // boolean unwrap
         2: .line 3933
            aload 1 /* node */
            invokevirtual org.jruby.ast.YieldNode.getArgsNode:()Lorg/jruby/ast/Node;
            astore 4 /* argNode */
        start local 4 // org.jruby.ast.Node argNode
         3: .line 3935
            aload 4 /* argNode */
            ifnull 6
            aload 4 /* argNode */
            instanceof org.jruby.ast.ArrayNode
            ifeq 6
            aload 4 /* argNode */
            checkcast org.jruby.ast.ArrayNode
            invokevirtual org.jruby.ast.ArrayNode.size:()I
            iconst_1
            if_icmpne 6
         4: .line 3936
            aload 4 /* argNode */
            checkcast org.jruby.ast.ArrayNode
            invokevirtual org.jruby.ast.ArrayNode.getLast:()Lorg/jruby/ast/Node;
            astore 4 /* argNode */
         5: .line 3937
            iconst_0
            istore 3 /* unwrap */
         6: .line 3940
      StackMap locals: int org.jruby.ast.Node
      StackMap stack:
            aload 2 /* result */
            ifnonnull 7
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 2 /* result */
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Variable
         8: astore 5 /* ret */
        start local 5 // org.jruby.ir.operands.Variable ret
         9: .line 3941
            aload 4 /* argNode */
            instanceof org.jruby.ast.ArrayNode
            ifeq 10
            iload 3 /* unwrap */
            ifeq 10
            aload 0 /* this */
            aload 4 /* argNode */
            checkcast org.jruby.ast.ArrayNode
            iconst_1
            invokevirtual org.jruby.ir.IRBuilder.buildArray:(Lorg/jruby/ast/ArrayNode;Z)Lorg/jruby/ir/operands/Operand;
            goto 11
      StackMap locals: org.jruby.ir.operands.Variable
      StackMap stack:
        10: aload 0 /* this */
            aload 4 /* argNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
      StackMap locals:
      StackMap stack: org.jruby.ir.operands.Operand
        11: astore 6 /* value */
        start local 6 // org.jruby.ir.operands.Operand value
        12: .line 3942
            aload 0 /* this */
            new org.jruby.ir.instructions.YieldInstr
            dup
            aload 5 /* ret */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            aload 6 /* value */
            iload 3 /* unwrap */
            invokespecial org.jruby.ir.instructions.YieldInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Z)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
        13: .line 3944
            aload 5 /* ret */
            areturn
        end local 6 // org.jruby.ir.operands.Operand value
        end local 5 // org.jruby.ir.operands.Variable ret
        end local 4 // org.jruby.ast.Node argNode
        end local 3 // boolean unwrap
        end local 2 // org.jruby.ir.operands.Variable result
        end local 1 // org.jruby.ast.YieldNode node
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/jruby/ir/IRBuilder;
            0   14     1     node  Lorg/jruby/ast/YieldNode;
            0   14     2   result  Lorg/jruby/ir/operands/Variable;
            2   14     3   unwrap  Z
            3   14     4  argNode  Lorg/jruby/ast/Node;
            9   14     5      ret  Lorg/jruby/ir/operands/Variable;
           12   14     6    value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      node    
      result  

  public org.jruby.ir.operands.Operand copy(org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand value
         0: .line 3948
            aload 0 /* this */
            aconst_null
            aload 1 /* value */
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ir.operands.Operand value
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/ir/IRBuilder;
            0    1     1  value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
       Name  Flags
      value  

  public org.jruby.ir.operands.Operand copy(org.jruby.ir.operands.Variable, org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
        start local 2 // org.jruby.ir.operands.Operand value
         0: .line 3952
            aload 0 /* this */
         1: new org.jruby.ir.instructions.CopyInstr
            dup
            aload 1 /* result */
            ifnonnull 2
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            goto 3
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder new 1 new 1
         2: aload 1 /* result */
      StackMap locals: org.jruby.ir.IRBuilder org.jruby.ir.operands.Variable org.jruby.ir.operands.Operand
      StackMap stack: org.jruby.ir.IRBuilder new 1 new 1 org.jruby.ir.operands.Variable
         3: aload 2 /* value */
            invokespecial org.jruby.ir.instructions.CopyInstr.<init>:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addResultInstr:(Lorg/jruby/ir/instructions/ResultInstr;)Lorg/jruby/ir/operands/Variable;
            areturn
        end local 2 // org.jruby.ir.operands.Operand value
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jruby/ir/IRBuilder;
            0    4     1  result  Lorg/jruby/ir/operands/Variable;
            0    4     2   value  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
        Name  Flags
      result  
      value   

  public org.jruby.ir.operands.Operand buildZArray(org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Variable result
         0: .line 3956
            aload 0 /* this */
            aload 1 /* result */
            new org.jruby.ir.operands.Array
            dup
            invokespecial org.jruby.ir.operands.Array.<init>:()V
            invokevirtual org.jruby.ir.IRBuilder.copy:(Lorg/jruby/ir/operands/Variable;Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 1 // org.jruby.ir.operands.Variable result
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jruby/ir/IRBuilder;
            0    1     1  result  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
        Name  Flags
      result  

  private org.jruby.ir.operands.Operand buildZSuperIfNest(org.jruby.ir.operands.Operand);
    descriptor: (Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand block
         0: .line 3960
            aload 0 /* this */
            astore 2 /* builder */
        start local 2 // org.jruby.ir.IRBuilder builder
         1: .line 3973
            new org.jruby.ir.IRBuilder$9
            dup
            aload 0 /* this */
            aload 2 /* builder */
            aload 1 /* block */
            invokespecial org.jruby.ir.IRBuilder$9.<init>:(Lorg/jruby/ir/IRBuilder;Lorg/jruby/ir/IRBuilder;Lorg/jruby/ir/operands/Operand;)V
            astore 3 /* zsuperBuilder */
        start local 3 // org.jruby.ir.IRBuilder$CodeBlock zsuperBuilder
         2: .line 4019
            aload 0 /* this */
            aload 1 /* block */
            aload 3 /* zsuperBuilder */
            invokevirtual org.jruby.ir.IRBuilder.receiveBreakException:(Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/IRBuilder$CodeBlock;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 3 // org.jruby.ir.IRBuilder$CodeBlock zsuperBuilder
        end local 2 // org.jruby.ir.IRBuilder builder
        end local 1 // org.jruby.ir.operands.Operand block
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/jruby/ir/IRBuilder;
            0    3     1          block  Lorg/jruby/ir/operands/Operand;
            1    3     2        builder  Lorg/jruby/ir/IRBuilder;
            2    3     3  zsuperBuilder  Lorg/jruby/ir/IRBuilder$CodeBlock;
    MethodParameters:
       Name  Flags
      block  final

  public org.jruby.ir.operands.Operand buildZSuper(org.jruby.ast.ZSuperNode);
    descriptor: (Lorg/jruby/ast/ZSuperNode;)Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.ZSuperNode zsuperNode
         0: .line 4023
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.isModuleBody:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.buildSuperInScriptBody:()Lorg/jruby/ir/operands/Operand;
            areturn
         1: .line 4025
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* zsuperNode */
            invokevirtual org.jruby.ast.ZSuperNode.getIterNode:()Lorg/jruby/ast/Node;
            invokevirtual org.jruby.ir.IRBuilder.setupCallClosure:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 2 /* block */
        start local 2 // org.jruby.ir.operands.Operand block
         2: .line 4026
            aload 2 /* block */
            ifnonnull 3
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getYieldClosureVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            astore 2 /* block */
         3: .line 4029
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            instanceof org.jruby.ir.IRMethod
            ifeq 5
         4: .line 4030
            aload 0 /* this */
            aload 2 /* block */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            invokestatic org.jruby.ir.IRBuilder.getCallArgs:(Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder;)[Lorg/jruby/ir/operands/Operand;
            invokevirtual org.jruby.ir.IRBuilder.buildSuperInstr:(Lorg/jruby/ir/operands/Operand;[Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
         5: .line 4032
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* block */
            invokevirtual org.jruby.ir.IRBuilder.buildZSuperIfNest:(Lorg/jruby/ir/operands/Operand;)Lorg/jruby/ir/operands/Operand;
            areturn
        end local 2 // org.jruby.ir.operands.Operand block
        end local 1 // org.jruby.ast.ZSuperNode zsuperNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/jruby/ir/IRBuilder;
            0    6     1  zsuperNode  Lorg/jruby/ast/ZSuperNode;
            2    6     2       block  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
            Name  Flags
      zsuperNode  

  private org.jruby.ir.operands.Operand[] adjustVariableDepth(org.jruby.ir.operands.Operand[], int);
    descriptor: ([Lorg/jruby/ir/operands/Operand;I)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ir.operands.Operand[] args
        start local 2 // int depthFromSuper
         0: .line 4041
            aload 1 /* args */
            arraylength
            anewarray org.jruby.ir.operands.Operand
            astore 3 /* newArgs */
        start local 3 // org.jruby.ir.operands.Operand[] newArgs
         1: .line 4043
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 8
         3: .line 4045
      StackMap locals: org.jruby.ir.operands.Operand[] int
      StackMap stack:
            aload 1 /* args */
            iload 4 /* i */
            aaload
            instanceof org.jruby.ir.operands.Hash
            ifeq 6
         4: .line 4046
            aload 3 /* newArgs */
            iload 4 /* i */
            aload 1 /* args */
            iload 4 /* i */
            aaload
            checkcast org.jruby.ir.operands.Hash
            iload 2 /* depthFromSuper */
            invokevirtual org.jruby.ir.operands.Hash.cloneForLVarDepth:(I)Lorg/jruby/ir/operands/Operand;
            aastore
         5: .line 4047
            goto 7
         6: .line 4048
      StackMap locals:
      StackMap stack:
            aload 3 /* newArgs */
            iload 4 /* i */
            aload 1 /* args */
            iload 4 /* i */
            aaload
            checkcast org.jruby.ir.operands.DepthCloneable
            iload 2 /* depthFromSuper */
            invokeinterface org.jruby.ir.operands.DepthCloneable.cloneForDepth:(I)Lorg/jruby/ir/operands/Operand;
            aastore
         7: .line 4043
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 1 /* args */
            arraylength
            if_icmplt 3
        end local 4 // int i
         9: .line 4052
            aload 3 /* newArgs */
            areturn
        end local 3 // org.jruby.ir.operands.Operand[] newArgs
        end local 2 // int depthFromSuper
        end local 1 // org.jruby.ir.operands.Operand[] args
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lorg/jruby/ir/IRBuilder;
            0   10     1            args  [Lorg/jruby/ir/operands/Operand;
            0   10     2  depthFromSuper  I
            1   10     3         newArgs  [Lorg/jruby/ir/operands/Operand;
            2    9     4               i  I
    MethodParameters:
                Name  Flags
      args            
      depthFromSuper  

  private org.jruby.ir.interpreter.InterpreterContext buildModuleOrClassBody(org.jruby.ast.Node, int, int);
    descriptor: (Lorg/jruby/ast/Node;II)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.ast.Node bodyNode
        start local 2 // int startLine
        start local 3 // int endLine
         0: .line 4056
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.CLASS:Lorg/jruby/runtime/RubyEvent;
            aconst_null
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            iload 2 /* startLine */
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         1: .line 4058
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.prepareImplicitState:()V
         2: .line 4059
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.addCurrentScopeAndModule:()V
         3: .line 4061
            aload 0 /* this */
            aload 1 /* bodyNode */
            invokevirtual org.jruby.ir.IRBuilder.build:(Lorg/jruby/ast/Node;)Lorg/jruby/ir/operands/Operand;
            astore 4 /* bodyReturnValue */
        start local 4 // org.jruby.ir.operands.Operand bodyReturnValue
         4: .line 4065
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            iload 3 /* endLine */
            invokevirtual org.jruby.ir.IRManager.newLineNumber:(I)Lorg/jruby/ir/instructions/LineNumberInstr;
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         5: .line 4066
            aload 0 /* this */
            new org.jruby.ir.instructions.TraceInstr
            dup
            getstatic org.jruby.runtime.RubyEvent.END:Lorg/jruby/runtime/RubyEvent;
            aconst_null
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.getFileName:()Ljava/lang/String;
            iload 3 /* endLine */
            iconst_1
            iadd
            invokespecial org.jruby.ir.instructions.TraceInstr.<init>:(Lorg/jruby/runtime/RubyEvent;Lorg/jruby/RubySymbol;Ljava/lang/String;I)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         6: .line 4068
            aload 0 /* this */
            new org.jruby.ir.instructions.ReturnInstr
            dup
            aload 4 /* bodyReturnValue */
            invokespecial org.jruby.ir.instructions.ReturnInstr.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokevirtual org.jruby.ir.IRBuilder.addInstr:(Lorg/jruby/ir/instructions/Instr;)V
         7: .line 4070
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokevirtual org.jruby.ir.IRScope.allocateInterpreterContext:(Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 4 // org.jruby.ir.operands.Operand bodyReturnValue
        end local 3 // int endLine
        end local 2 // int startLine
        end local 1 // org.jruby.ast.Node bodyNode
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/jruby/ir/IRBuilder;
            0    8     1         bodyNode  Lorg/jruby/ast/Node;
            0    8     2        startLine  I
            0    8     3          endLine  I
            4    8     4  bodyReturnValue  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      bodyNode   
      startLine  
      endLine    

  private org.jruby.RubySymbol methodNameFor();
    descriptor: ()Lorg/jruby/RubySymbol;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4074
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNearestMethod:()Lorg/jruby/ir/IRMethod;
            astore 1 /* method */
        start local 1 // org.jruby.ir.IRScope method
         1: .line 4076
            aload 1 /* method */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
         2: aload 1 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
      StackMap locals:
      StackMap stack: org.jruby.RubySymbol
         3: areturn
        end local 1 // org.jruby.ir.IRScope method
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jruby/ir/IRBuilder;
            1    4     1  method  Lorg/jruby/ir/IRScope;

  private org.jruby.ir.operands.TemporaryVariable createTemporaryVariable();
    descriptor: ()Lorg/jruby/ir/operands/TemporaryVariable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4080
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryLocalVariable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.LocalVariable getLocalVariable(org.jruby.RubySymbol, int);
    descriptor: (Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int scopeDepth
         0: .line 4084
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* name */
            iload 2 /* scopeDepth */
            invokevirtual org.jruby.ir.IRScope.getLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 2 // int scopeDepth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ir/IRBuilder;
            0    1     1        name  Lorg/jruby/RubySymbol;
            0    1     2  scopeDepth  I
    MethodParameters:
            Name  Flags
      name        
      scopeDepth  

  public org.jruby.ir.operands.LocalVariable getNewLocalVariable(org.jruby.RubySymbol, int);
    descriptor: (Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int scopeDepth
         0: .line 4088
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            aload 1 /* name */
            iload 2 /* scopeDepth */
            invokevirtual org.jruby.ir.IRScope.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            areturn
        end local 2 // int scopeDepth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ir/IRBuilder;
            0    1     1        name  Lorg/jruby/RubySymbol;
            0    1     2  scopeDepth  I
    MethodParameters:
            Name  Flags
      name        
      scopeDepth  

  public org.jruby.RubySymbol getName();
    descriptor: ()Lorg/jruby/RubySymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4092
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  private org.jruby.ir.operands.Label getNewLabel();
    descriptor: ()Lorg/jruby/ir/operands/Label;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4096
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getNewLabel:()Lorg/jruby/ir/operands/Label;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  private java.lang.String getFileName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4100
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;

  private org.jruby.RubySymbol symbol(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/RubySymbol;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // java.lang.String id
         0: .line 4104
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            getfield org.jruby.ir.IRManager.runtime:Lorg/jruby/Ruby;
            aload 1 /* id */
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            areturn
        end local 1 // java.lang.String id
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRBuilder;
            0    1     1    id  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      id    

  private org.jruby.RubySymbol symbol(org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRBuilder this
        start local 1 // org.jruby.util.ByteList bytelist
         0: .line 4108
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.manager:Lorg/jruby/ir/IRManager;
            getfield org.jruby.ir.IRManager.runtime:Lorg/jruby/Ruby;
            aload 1 /* bytelist */
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            areturn
        end local 1 // org.jruby.util.ByteList bytelist
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/ir/IRBuilder;
            0    1     1  bytelist  Lorg/jruby/util/ByteList;
    MethodParameters:
          Name  Flags
      bytelist  

  public static org.jruby.ir.operands.Operand[] getCallArgs(org.jruby.ir.IRScope, org.jruby.ir.IRBuilder);
    descriptor: (Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRBuilder;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.jruby.ir.IRScope scope
        start local 1 // org.jruby.ir.IRBuilder builder
         0: .line 4119
            new java.util.ArrayList
            dup
            iconst_5
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* callArgs */
        start local 2 // java.util.List callArgs
         1: .line 4120
            new java.util.ArrayList
            dup
            iconst_3
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 3 /* keywordArgs */
        start local 3 // java.util.List keywordArgs
         2: .line 4122
            aload 1 /* builder */
            ifnull 8
         3: .line 4123
            aload 1 /* builder */
            getfield org.jruby.ir.IRBuilder.instructions:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRBuilder java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.instructions.Instr
            astore 4 /* instr */
        start local 4 // org.jruby.ir.instructions.Instr instr
         5: .line 4124
            aload 2 /* callArgs */
            aload 3 /* keywordArgs */
            aload 4 /* instr */
            invokestatic org.jruby.ir.IRBuilder.extractCallOperands:(Ljava/util/List;Ljava/util/List;Lorg/jruby/ir/instructions/Instr;)V
        end local 4 // org.jruby.ir.instructions.Instr instr
         6: .line 4123
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 4126
            goto 13
         8: .line 4127
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRBuilder java.util.List java.util.List
      StackMap stack:
            aload 0 /* scope */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.getInstructions:()[Lorg/jruby/ir/instructions/Instr;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 12
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRBuilder java.util.List java.util.List top int int org.jruby.ir.instructions.Instr[]
      StackMap stack:
         9: aload 7
            iload 5
            aaload
            astore 4 /* instr */
        start local 4 // org.jruby.ir.instructions.Instr instr
        10: .line 4128
            aload 2 /* callArgs */
            aload 3 /* keywordArgs */
            aload 4 /* instr */
            invokestatic org.jruby.ir.IRBuilder.extractCallOperands:(Ljava/util/List;Ljava/util/List;Lorg/jruby/ir/instructions/Instr;)V
        end local 4 // org.jruby.ir.instructions.Instr instr
        11: .line 4127
            iinc 5 1
      StackMap locals:
      StackMap stack:
        12: iload 5
            iload 6
            if_icmplt 9
        13: .line 4132
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRBuilder java.util.List java.util.List
      StackMap stack:
            aload 0 /* scope */
            aload 2 /* callArgs */
            aload 3 /* keywordArgs */
            invokestatic org.jruby.ir.IRBuilder.getCallOperands:(Lorg/jruby/ir/IRScope;Ljava/util/List;Ljava/util/List;)[Lorg/jruby/ir/operands/Operand;
            areturn
        end local 3 // java.util.List keywordArgs
        end local 2 // java.util.List callArgs
        end local 1 // org.jruby.ir.IRBuilder builder
        end local 0 // org.jruby.ir.IRScope scope
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0        scope  Lorg/jruby/ir/IRScope;
            0   14     1      builder  Lorg/jruby/ir/IRBuilder;
            1   14     2     callArgs  Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;
            2   14     3  keywordArgs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
            5    6     4        instr  Lorg/jruby/ir/instructions/Instr;
           10   11     4        instr  Lorg/jruby/ir/instructions/Instr;
    MethodParameters:
         Name  Flags
      scope    
      builder  

  private static void extractCallOperands(java.util.List<org.jruby.ir.operands.Operand>, java.util.List<org.jruby.util.KeyValuePair<org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand>>, org.jruby.ir.instructions.Instr);
    descriptor: (Ljava/util/List;Ljava/util/List;Lorg/jruby/ir/instructions/Instr;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.util.List callArgs
        start local 1 // java.util.List keywordArgs
        start local 2 // org.jruby.ir.instructions.Instr instr
         0: .line 4137
            aload 2 /* instr */
            instanceof org.jruby.ir.instructions.ReceiveKeywordRestArgInstr
            ifeq 3
         1: .line 4139
            aload 1 /* keywordArgs */
            iconst_0
            new org.jruby.util.KeyValuePair
            dup
            getstatic org.jruby.ir.operands.Symbol.KW_REST_ARG_DUMMY:Lorg/jruby/ir/operands/Symbol;
            aload 2 /* instr */
            checkcast org.jruby.ir.instructions.ReceiveArgBase
            invokevirtual org.jruby.ir.instructions.ReceiveArgBase.getResult:()Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.util.KeyValuePair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         2: .line 4140
            goto 12
      StackMap locals:
      StackMap stack:
         3: aload 2 /* instr */
            instanceof org.jruby.ir.instructions.ReceiveKeywordArgInstr
            ifeq 7
         4: .line 4141
            aload 2 /* instr */
            checkcast org.jruby.ir.instructions.ReceiveKeywordArgInstr
            astore 3 /* receiveKwargInstr */
        start local 3 // org.jruby.ir.instructions.ReceiveKeywordArgInstr receiveKwargInstr
         5: .line 4142
            aload 1 /* keywordArgs */
            new org.jruby.util.KeyValuePair
            dup
            new org.jruby.ir.operands.Symbol
            dup
            aload 3 /* receiveKwargInstr */
            invokevirtual org.jruby.ir.instructions.ReceiveKeywordArgInstr.getKey:()Lorg/jruby/RubySymbol;
            invokespecial org.jruby.ir.operands.Symbol.<init>:(Lorg/jruby/RubySymbol;)V
            aload 3 /* receiveKwargInstr */
            invokevirtual org.jruby.ir.instructions.ReceiveKeywordArgInstr.getResult:()Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.util.KeyValuePair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.jruby.ir.instructions.ReceiveKeywordArgInstr receiveKwargInstr
         6: .line 4143
            goto 12
      StackMap locals:
      StackMap stack:
         7: aload 2 /* instr */
            instanceof org.jruby.ir.instructions.ReceiveRestArgInstr
            ifeq 10
         8: .line 4144
            aload 0 /* callArgs */
            new org.jruby.ir.operands.Splat
            dup
            aload 2 /* instr */
            checkcast org.jruby.ir.instructions.ReceiveRestArgInstr
            invokevirtual org.jruby.ir.instructions.ReceiveRestArgInstr.getResult:()Lorg/jruby/ir/operands/Variable;
            invokespecial org.jruby.ir.operands.Splat.<init>:(Lorg/jruby/ir/operands/Operand;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 4145
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 2 /* instr */
            instanceof org.jruby.ir.instructions.ReceiveArgBase
            ifeq 12
        11: .line 4146
            aload 0 /* callArgs */
            aload 2 /* instr */
            checkcast org.jruby.ir.instructions.ReceiveArgBase
            invokevirtual org.jruby.ir.instructions.ReceiveArgBase.getResult:()Lorg/jruby/ir/operands/Variable;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 4148
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.ir.instructions.Instr instr
        end local 1 // java.util.List keywordArgs
        end local 0 // java.util.List callArgs
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0           callArgs  Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;
            0   13     1        keywordArgs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
            0   13     2              instr  Lorg/jruby/ir/instructions/Instr;
            5    6     3  receiveKwargInstr  Lorg/jruby/ir/instructions/ReceiveKeywordArgInstr;
    Signature: (Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;Lorg/jruby/ir/instructions/Instr;)V
    MethodParameters:
             Name  Flags
      callArgs     
      keywordArgs  
      instr        

  private static org.jruby.ir.operands.Operand[] getCallOperands(org.jruby.ir.IRScope, java.util.List<org.jruby.ir.operands.Operand>, java.util.List<org.jruby.util.KeyValuePair<org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand>>);
    descriptor: (Lorg/jruby/ir/IRScope;Ljava/util/List;Ljava/util/List;)[Lorg/jruby/ir/operands/Operand;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.jruby.ir.IRScope scope
        start local 1 // java.util.List callArgs
        start local 2 // java.util.List keywordArgs
         0: .line 4151
            aload 0 /* scope */
            invokevirtual org.jruby.ir.IRScope.receivesKeywordArgs:()Z
            ifeq 9
         1: .line 4152
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: .line 4153
            aload 1 /* callArgs */
            invokeinterface java.util.List.size:()I
            iconst_1
            iadd
            anewarray org.jruby.ir.operands.Operand
            astore 4 /* args */
        start local 4 // org.jruby.ir.operands.Operand[] args
         3: .line 4154
            aload 1 /* callArgs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 6
      StackMap locals: org.jruby.ir.IRScope java.util.List java.util.List int org.jruby.ir.operands.Operand[] top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Operand
            astore 5 /* arg */
        start local 5 // org.jruby.ir.operands.Operand arg
         5: .line 4155
            aload 4 /* args */
            iload 3 /* i */
            iinc 3 /* i */ 1
            aload 5 /* arg */
            aastore
        end local 5 // org.jruby.ir.operands.Operand arg
         6: .line 4154
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 4157
            aload 4 /* args */
            iload 3 /* i */
            new org.jruby.ir.operands.Hash
            dup
            aload 2 /* keywordArgs */
            iconst_1
            invokespecial org.jruby.ir.operands.Hash.<init>:(Ljava/util/List;Z)V
            aastore
         8: .line 4158
            aload 4 /* args */
            areturn
        end local 4 // org.jruby.ir.operands.Operand[] args
        end local 3 // int i
         9: .line 4161
      StackMap locals: org.jruby.ir.IRScope java.util.List java.util.List
      StackMap stack:
            aload 1 /* callArgs */
            aload 1 /* callArgs */
            invokeinterface java.util.List.size:()I
            anewarray org.jruby.ir.operands.Operand
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.jruby.ir.operands.Operand[]
            areturn
        end local 2 // java.util.List keywordArgs
        end local 1 // java.util.List callArgs
        end local 0 // org.jruby.ir.IRScope scope
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0        scope  Lorg/jruby/ir/IRScope;
            0   10     1     callArgs  Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;
            0   10     2  keywordArgs  Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;
            2    9     3            i  I
            3    9     4         args  [Lorg/jruby/ir/operands/Operand;
            5    6     5          arg  Lorg/jruby/ir/operands/Operand;
    Signature: (Lorg/jruby/ir/IRScope;Ljava/util/List<Lorg/jruby/ir/operands/Operand;>;Ljava/util/List<Lorg/jruby/util/KeyValuePair<Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;>;>;)[Lorg/jruby/ir/operands/Operand;
    MethodParameters:
             Name  Flags
      scope        
      callArgs     
      keywordArgs  

  public static org.jruby.ir.instructions.Instr createBranch(org.jruby.ir.operands.Operand, org.jruby.ir.operands.Operand, org.jruby.ir.operands.Label);
    descriptor: (Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Operand;Lorg/jruby/ir/operands/Label;)Lorg/jruby/ir/instructions/Instr;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.ir.operands.Operand v1
        start local 1 // org.jruby.ir.operands.Operand v2
        start local 2 // org.jruby.ir.operands.Label jmpTarget
         0: .line 4166
            aload 1 /* v2 */
            instanceof org.jruby.ir.operands.Boolean
            ifeq 10
         1: .line 4167
            aload 1 /* v2 */
            checkcast org.jruby.ir.operands.Boolean
            astore 3 /* lhs */
        start local 3 // org.jruby.ir.operands.Boolean lhs
         2: .line 4169
            aload 3 /* lhs */
            invokevirtual org.jruby.ir.operands.Boolean.isTrue:()Z
            ifeq 6
         3: .line 4170
            aload 0 /* v1 */
            invokevirtual org.jruby.ir.operands.Operand.isTruthyImmediate:()Z
            ifeq 4
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* jmpTarget */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            areturn
         4: .line 4171
      StackMap locals: org.jruby.ir.operands.Boolean
      StackMap stack:
            aload 0 /* v1 */
            invokevirtual org.jruby.ir.operands.Operand.isFalseyImmediate:()Z
            ifeq 5
            getstatic org.jruby.ir.instructions.NopInstr.NOP:Lorg/jruby/ir/instructions/NopInstr;
            areturn
         5: .line 4173
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.instructions.BTrueInstr
            dup
            aload 2 /* jmpTarget */
            aload 0 /* v1 */
            invokespecial org.jruby.ir.instructions.BTrueInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            areturn
         6: .line 4174
      StackMap locals:
      StackMap stack:
            aload 3 /* lhs */
            invokevirtual org.jruby.ir.operands.Boolean.isFalse:()Z
            ifeq 14
         7: .line 4175
            aload 0 /* v1 */
            invokevirtual org.jruby.ir.operands.Operand.isTruthyImmediate:()Z
            ifeq 8
            getstatic org.jruby.ir.instructions.NopInstr.NOP:Lorg/jruby/ir/instructions/NopInstr;
            areturn
         8: .line 4176
      StackMap locals:
      StackMap stack:
            aload 0 /* v1 */
            invokevirtual org.jruby.ir.operands.Operand.isFalseyImmediate:()Z
            ifeq 9
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* jmpTarget */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            areturn
         9: .line 4178
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.instructions.BFalseInstr
            dup
            aload 2 /* jmpTarget */
            aload 0 /* v1 */
            invokespecial org.jruby.ir.instructions.BFalseInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            areturn
        end local 3 // org.jruby.ir.operands.Boolean lhs
        10: .line 4180
      StackMap locals:
      StackMap stack:
            aload 1 /* v2 */
            instanceof org.jruby.ir.operands.Nil
            ifeq 14
        11: .line 4181
            aload 0 /* v1 */
            instanceof org.jruby.ir.operands.Nil
            ifeq 13
        12: .line 4182
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* jmpTarget */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            areturn
        13: .line 4184
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.instructions.BNilInstr
            dup
            aload 2 /* jmpTarget */
            aload 0 /* v1 */
            invokespecial org.jruby.ir.instructions.BNilInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            areturn
        14: .line 4187
      StackMap locals:
      StackMap stack:
            aload 1 /* v2 */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            if_acmpne 18
        15: .line 4188
            aload 0 /* v1 */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            if_acmpne 17
        16: .line 4189
            new org.jruby.ir.instructions.JumpInstr
            dup
            aload 2 /* jmpTarget */
            invokespecial org.jruby.ir.instructions.JumpInstr.<init>:(Lorg/jruby/ir/operands/Label;)V
            areturn
        17: .line 4191
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.instructions.BUndefInstr
            dup
            aload 2 /* jmpTarget */
            aload 0 /* v1 */
            invokespecial org.jruby.ir.instructions.BUndefInstr.<init>:(Lorg/jruby/ir/operands/Label;Lorg/jruby/ir/operands/Operand;)V
            areturn
        18: .line 4195
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            ldc "BUG: no BEQ"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.jruby.ir.operands.Label jmpTarget
        end local 1 // org.jruby.ir.operands.Operand v2
        end local 0 // org.jruby.ir.operands.Operand v1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0         v1  Lorg/jruby/ir/operands/Operand;
            0   19     1         v2  Lorg/jruby/ir/operands/Operand;
            0   19     2  jmpTarget  Lorg/jruby/ir/operands/Label;
            2   10     3        lhs  Lorg/jruby/ir/operands/Boolean;
    MethodParameters:
           Name  Flags
      v1         
      v2         
      jmpTarget  

  public org.jruby.ir.operands.TemporaryVariable getYieldClosureVariable();
    descriptor: ()Lorg/jruby/ir/operands/TemporaryVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4202
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.yieldClosureVariable:Lorg/jruby/ir/operands/TemporaryVariable;
            ifnonnull 2
         1: .line 4203
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRBuilder.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryVariable;
            dup_x1
            putfield org.jruby.ir.IRBuilder.yieldClosureVariable:Lorg/jruby/ir/operands/TemporaryVariable;
            areturn
         2: .line 4206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.yieldClosureVariable:Lorg/jruby/ir/operands/TemporaryVariable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Variable getCurrentModuleVariable();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4210
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.currentModuleVariable:Lorg/jruby/ir/operands/Variable;
            ifnonnull 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.createCurrentModuleVariable:()Lorg/jruby/ir/operands/Variable;
            putfield org.jruby.ir.IRBuilder.currentModuleVariable:Lorg/jruby/ir/operands/Variable;
         1: .line 4212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.currentModuleVariable:Lorg/jruby/ir/operands/Variable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRBuilder;

  public org.jruby.ir.operands.Variable getCurrentScopeVariable();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRBuilder this
         0: .line 4218
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.currentScopeVariable:Lorg/jruby/ir/operands/Variable;
            ifnonnull 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.scope:Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.createCurrentScopeVariable:()Lorg/jruby/ir/operands/Variable;
            putfield org.jruby.ir.IRBuilder.currentScopeVariable:Lorg/jruby/ir/operands/Variable;
         1: .line 4220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRBuilder.currentScopeVariable:Lorg/jruby/ir/operands/Variable;
            areturn
        end local 0 // org.jruby.ir.IRBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRBuilder;

  static int[] $SWITCH_TABLE$org$jruby$ast$NodeType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 86
            getstatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.ast.NodeType.values:()[Lorg/jruby/ast/NodeType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.ast.NodeType.ALIASNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.ast.NodeType.ANDNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.ast.NodeType.ARGAUXILIARYNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 103
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.ast.NodeType.ARGSCATNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.ast.NodeType.ARGSNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.ast.NodeType.ARGSPUSHNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 101
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.ast.NodeType.ARGUMENTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.ast.NodeType.ARRAYNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 6
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.ast.NodeType.ASSIGNABLENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 7
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jruby.ast.NodeType.ATTRASSIGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 100
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jruby.ast.NodeType.BACKREFNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 8
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.jruby.ast.NodeType.BEGINNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 9
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.jruby.ast.NodeType.BIGNUMNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 10
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.jruby.ast.NodeType.BINARYOPERATORNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 11
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.jruby.ast.NodeType.BLOCKARG18NODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 109
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.jruby.ast.NodeType.BLOCKARGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 12
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.jruby.ast.NodeType.BLOCKNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 13
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.jruby.ast.NodeType.BLOCKPASSNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 14
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.jruby.ast.NodeType.BREAKNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 15
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.jruby.ast.NodeType.CALLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 16
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.jruby.ast.NodeType.CASENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 17
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.jruby.ast.NodeType.CLASSNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 18
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.jruby.ast.NodeType.CLASSVARASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 19
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.jruby.ast.NodeType.CLASSVARDECLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 20
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.jruby.ast.NodeType.CLASSVARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 21
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic org.jruby.ast.NodeType.COLON2NODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 22
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic org.jruby.ast.NodeType.COLON3NODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 23
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic org.jruby.ast.NodeType.COMMENTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 98
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic org.jruby.ast.NodeType.COMPLEXNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 113
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic org.jruby.ast.NodeType.CONSTDECLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 24
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic org.jruby.ast.NodeType.CONSTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 25
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic org.jruby.ast.NodeType.DASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 26
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic org.jruby.ast.NodeType.DEFINEDNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 27
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic org.jruby.ast.NodeType.DEFNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 28
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic org.jruby.ast.NodeType.DEFSNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 29
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic org.jruby.ast.NodeType.DOTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 30
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            getstatic org.jruby.ast.NodeType.DREGEXPNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 31
            iastore
       111: goto 113
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       112: pop
      StackMap locals:
      StackMap stack:
       113: aload 0
            getstatic org.jruby.ast.NodeType.DSTRNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 32
            iastore
       114: goto 116
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       115: pop
      StackMap locals:
      StackMap stack:
       116: aload 0
            getstatic org.jruby.ast.NodeType.DSYMBOLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 33
            iastore
       117: goto 119
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       118: pop
      StackMap locals:
      StackMap stack:
       119: aload 0
            getstatic org.jruby.ast.NodeType.DVARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 34
            iastore
       120: goto 122
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       121: pop
      StackMap locals:
      StackMap stack:
       122: aload 0
            getstatic org.jruby.ast.NodeType.DXSTRNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 35
            iastore
       123: goto 125
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       124: pop
      StackMap locals:
      StackMap stack:
       125: aload 0
            getstatic org.jruby.ast.NodeType.ENCODINGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 107
            iastore
       126: goto 128
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       127: pop
      StackMap locals:
      StackMap stack:
       128: aload 0
            getstatic org.jruby.ast.NodeType.ENSURENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 36
            iastore
       129: goto 131
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       130: pop
      StackMap locals:
      StackMap stack:
       131: aload 0
            getstatic org.jruby.ast.NodeType.EVSTRNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 37
            iastore
       132: goto 134
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       133: pop
      StackMap locals:
      StackMap stack:
       134: aload 0
            getstatic org.jruby.ast.NodeType.FALSENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 38
            iastore
       135: goto 137
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       136: pop
      StackMap locals:
      StackMap stack:
       137: aload 0
            getstatic org.jruby.ast.NodeType.FCALLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 39
            iastore
       138: goto 140
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       139: pop
      StackMap locals:
      StackMap stack:
       140: aload 0
            getstatic org.jruby.ast.NodeType.FIXNUMNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 40
            iastore
       141: goto 143
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       142: pop
      StackMap locals:
      StackMap stack:
       143: aload 0
            getstatic org.jruby.ast.NodeType.FLIPNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 41
            iastore
       144: goto 146
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       145: pop
      StackMap locals:
      StackMap stack:
       146: aload 0
            getstatic org.jruby.ast.NodeType.FLOATNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 42
            iastore
       147: goto 149
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       148: pop
      StackMap locals:
      StackMap stack:
       149: aload 0
            getstatic org.jruby.ast.NodeType.FORNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 43
            iastore
       150: goto 152
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       151: pop
      StackMap locals:
      StackMap stack:
       152: aload 0
            getstatic org.jruby.ast.NodeType.GLOBALASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 44
            iastore
       153: goto 155
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       154: pop
      StackMap locals:
      StackMap stack:
       155: aload 0
            getstatic org.jruby.ast.NodeType.GLOBALVARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 45
            iastore
       156: goto 158
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       157: pop
      StackMap locals:
      StackMap stack:
       158: aload 0
            getstatic org.jruby.ast.NodeType.HASHNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 46
            iastore
       159: goto 161
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       160: pop
      StackMap locals:
      StackMap stack:
       161: aload 0
            getstatic org.jruby.ast.NodeType.IFNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 47
            iastore
       162: goto 164
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       163: pop
      StackMap locals:
      StackMap stack:
       164: aload 0
            getstatic org.jruby.ast.NodeType.INSTASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 48
            iastore
       165: goto 167
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       166: pop
      StackMap locals:
      StackMap stack:
       167: aload 0
            getstatic org.jruby.ast.NodeType.INSTVARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 49
            iastore
       168: goto 170
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       169: pop
      StackMap locals:
      StackMap stack:
       170: aload 0
            getstatic org.jruby.ast.NodeType.ISCOPINGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 50
            iastore
       171: goto 173
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       172: pop
      StackMap locals:
      StackMap stack:
       173: aload 0
            getstatic org.jruby.ast.NodeType.ITERNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 51
            iastore
       174: goto 176
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       175: pop
      StackMap locals:
      StackMap stack:
       176: aload 0
            getstatic org.jruby.ast.NodeType.KEYWORDARGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 110
            iastore
       177: goto 179
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       178: pop
      StackMap locals:
      StackMap stack:
       179: aload 0
            getstatic org.jruby.ast.NodeType.KEYWORDRESTARGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 111
            iastore
       180: goto 182
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       181: pop
      StackMap locals:
      StackMap stack:
       182: aload 0
            getstatic org.jruby.ast.NodeType.LAMBDANODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 104
            iastore
       183: goto 185
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       184: pop
      StackMap locals:
      StackMap stack:
       185: aload 0
            getstatic org.jruby.ast.NodeType.LISTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 52
            iastore
       186: goto 188
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       187: pop
      StackMap locals:
      StackMap stack:
       188: aload 0
            getstatic org.jruby.ast.NodeType.LITERALNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 108
            iastore
       189: goto 191
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       190: pop
      StackMap locals:
      StackMap stack:
       191: aload 0
            getstatic org.jruby.ast.NodeType.LOCALASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 53
            iastore
       192: goto 194
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       193: pop
      StackMap locals:
      StackMap stack:
       194: aload 0
            getstatic org.jruby.ast.NodeType.LOCALVARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 54
            iastore
       195: goto 197
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       196: pop
      StackMap locals:
      StackMap stack:
       197: aload 0
            getstatic org.jruby.ast.NodeType.MATCH2NODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 55
            iastore
       198: goto 200
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       199: pop
      StackMap locals:
      StackMap stack:
       200: aload 0
            getstatic org.jruby.ast.NodeType.MATCH3NODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 56
            iastore
       201: goto 203
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       202: pop
      StackMap locals:
      StackMap stack:
       203: aload 0
            getstatic org.jruby.ast.NodeType.MATCHNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 57
            iastore
       204: goto 206
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       205: pop
      StackMap locals:
      StackMap stack:
       206: aload 0
            getstatic org.jruby.ast.NodeType.MODULENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 58
            iastore
       207: goto 209
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       208: pop
      StackMap locals:
      StackMap stack:
       209: aload 0
            getstatic org.jruby.ast.NodeType.MULTIPLEASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 105
            iastore
       210: goto 212
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       211: pop
      StackMap locals:
      StackMap stack:
       212: aload 0
            getstatic org.jruby.ast.NodeType.NEWLINENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 59
            iastore
       213: goto 215
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       214: pop
      StackMap locals:
      StackMap stack:
       215: aload 0
            getstatic org.jruby.ast.NodeType.NEXTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 60
            iastore
       216: goto 218
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       217: pop
      StackMap locals:
      StackMap stack:
       218: aload 0
            getstatic org.jruby.ast.NodeType.NILNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 61
            iastore
       219: goto 221
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       220: pop
      StackMap locals:
      StackMap stack:
       221: aload 0
            getstatic org.jruby.ast.NodeType.NOTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 62
            iastore
       222: goto 224
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       223: pop
      StackMap locals:
      StackMap stack:
       224: aload 0
            getstatic org.jruby.ast.NodeType.NTHREFNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 63
            iastore
       225: goto 227
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       226: pop
      StackMap locals:
      StackMap stack:
       227: aload 0
            getstatic org.jruby.ast.NodeType.OPASGNANDNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 64
            iastore
       228: goto 230
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       229: pop
      StackMap locals:
      StackMap stack:
       230: aload 0
            getstatic org.jruby.ast.NodeType.OPASGNCONSTDECLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 115
            iastore
       231: goto 233
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       232: pop
      StackMap locals:
      StackMap stack:
       233: aload 0
            getstatic org.jruby.ast.NodeType.OPASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 65
            iastore
       234: goto 236
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       235: pop
      StackMap locals:
      StackMap stack:
       236: aload 0
            getstatic org.jruby.ast.NodeType.OPASGNORNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 66
            iastore
       237: goto 239
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       238: pop
      StackMap locals:
      StackMap stack:
       239: aload 0
            getstatic org.jruby.ast.NodeType.OPELEMENTASGNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 67
            iastore
       240: goto 242
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       241: pop
      StackMap locals:
      StackMap stack:
       242: aload 0
            getstatic org.jruby.ast.NodeType.OPTARGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 102
            iastore
       243: goto 245
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       244: pop
      StackMap locals:
      StackMap stack:
       245: aload 0
            getstatic org.jruby.ast.NodeType.ORNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 68
            iastore
       246: goto 248
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       247: pop
      StackMap locals:
      StackMap stack:
       248: aload 0
            getstatic org.jruby.ast.NodeType.POSTEXENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 70
            iastore
       249: goto 251
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       250: pop
      StackMap locals:
      StackMap stack:
       251: aload 0
            getstatic org.jruby.ast.NodeType.PREEXENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 69
            iastore
       252: goto 254
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       253: pop
      StackMap locals:
      StackMap stack:
       254: aload 0
            getstatic org.jruby.ast.NodeType.RATIONALNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 112
            iastore
       255: goto 257
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       256: pop
      StackMap locals:
      StackMap stack:
       257: aload 0
            getstatic org.jruby.ast.NodeType.REDONODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 71
            iastore
       258: goto 260
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       259: pop
      StackMap locals:
      StackMap stack:
       260: aload 0
            getstatic org.jruby.ast.NodeType.REGEXPNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 72
            iastore
       261: goto 263
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       262: pop
      StackMap locals:
      StackMap stack:
       263: aload 0
            getstatic org.jruby.ast.NodeType.REQUIRED_KEYWORD_ARGUMENT_VALUE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 114
            iastore
       264: goto 266
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       265: pop
      StackMap locals:
      StackMap stack:
       266: aload 0
            getstatic org.jruby.ast.NodeType.RESCUEBODYNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 73
            iastore
       267: goto 269
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       268: pop
      StackMap locals:
      StackMap stack:
       269: aload 0
            getstatic org.jruby.ast.NodeType.RESCUENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 74
            iastore
       270: goto 272
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       271: pop
      StackMap locals:
      StackMap stack:
       272: aload 0
            getstatic org.jruby.ast.NodeType.RESTARG:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 106
            iastore
       273: goto 275
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       274: pop
      StackMap locals:
      StackMap stack:
       275: aload 0
            getstatic org.jruby.ast.NodeType.RETRYNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 75
            iastore
       276: goto 278
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       277: pop
      StackMap locals:
      StackMap stack:
       278: aload 0
            getstatic org.jruby.ast.NodeType.RETURNNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 76
            iastore
       279: goto 281
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       280: pop
      StackMap locals:
      StackMap stack:
       281: aload 0
            getstatic org.jruby.ast.NodeType.ROOTNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 99
            iastore
       282: goto 284
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       283: pop
      StackMap locals:
      StackMap stack:
       284: aload 0
            getstatic org.jruby.ast.NodeType.SCLASSNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 77
            iastore
       285: goto 287
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       286: pop
      StackMap locals:
      StackMap stack:
       287: aload 0
            getstatic org.jruby.ast.NodeType.SCOPENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 78
            iastore
       288: goto 290
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       289: pop
      StackMap locals:
      StackMap stack:
       290: aload 0
            getstatic org.jruby.ast.NodeType.SELFNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 79
            iastore
       291: goto 293
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       292: pop
      StackMap locals:
      StackMap stack:
       293: aload 0
            getstatic org.jruby.ast.NodeType.SPLATNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 80
            iastore
       294: goto 296
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       295: pop
      StackMap locals:
      StackMap stack:
       296: aload 0
            getstatic org.jruby.ast.NodeType.STARNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 81
            iastore
       297: goto 299
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       298: pop
      StackMap locals:
      StackMap stack:
       299: aload 0
            getstatic org.jruby.ast.NodeType.STRNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 82
            iastore
       300: goto 302
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       301: pop
      StackMap locals:
      StackMap stack:
       302: aload 0
            getstatic org.jruby.ast.NodeType.SUPERNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 83
            iastore
       303: goto 305
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       304: pop
      StackMap locals:
      StackMap stack:
       305: aload 0
            getstatic org.jruby.ast.NodeType.SVALUENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 84
            iastore
       306: goto 308
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       307: pop
      StackMap locals:
      StackMap stack:
       308: aload 0
            getstatic org.jruby.ast.NodeType.SYMBOLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 85
            iastore
       309: goto 311
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       310: pop
      StackMap locals:
      StackMap stack:
       311: aload 0
            getstatic org.jruby.ast.NodeType.TRUENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 86
            iastore
       312: goto 314
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       313: pop
      StackMap locals:
      StackMap stack:
       314: aload 0
            getstatic org.jruby.ast.NodeType.UNDEFNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 87
            iastore
       315: goto 317
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       316: pop
      StackMap locals:
      StackMap stack:
       317: aload 0
            getstatic org.jruby.ast.NodeType.UNTILNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 88
            iastore
       318: goto 320
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       319: pop
      StackMap locals:
      StackMap stack:
       320: aload 0
            getstatic org.jruby.ast.NodeType.VALIASNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 89
            iastore
       321: goto 323
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       322: pop
      StackMap locals:
      StackMap stack:
       323: aload 0
            getstatic org.jruby.ast.NodeType.VCALLNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 90
            iastore
       324: goto 326
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       325: pop
      StackMap locals:
      StackMap stack:
       326: aload 0
            getstatic org.jruby.ast.NodeType.WHENNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 91
            iastore
       327: goto 329
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       328: pop
      StackMap locals:
      StackMap stack:
       329: aload 0
            getstatic org.jruby.ast.NodeType.WHILENODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 92
            iastore
       330: goto 332
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       331: pop
      StackMap locals:
      StackMap stack:
       332: aload 0
            getstatic org.jruby.ast.NodeType.XSTRNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 93
            iastore
       333: goto 335
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       334: pop
      StackMap locals:
      StackMap stack:
       335: aload 0
            getstatic org.jruby.ast.NodeType.YIELDNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 94
            iastore
       336: goto 338
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       337: pop
      StackMap locals:
      StackMap stack:
       338: aload 0
            getstatic org.jruby.ast.NodeType.ZARRAYNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 95
            iastore
       339: goto 341
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       340: pop
      StackMap locals:
      StackMap stack:
       341: aload 0
            getstatic org.jruby.ast.NodeType.ZEROARGNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 96
            iastore
       342: goto 344
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       343: pop
      StackMap locals:
      StackMap stack:
       344: aload 0
            getstatic org.jruby.ast.NodeType.ZSUPERNODE:Lorg/jruby/ast/NodeType;
            invokevirtual org.jruby.ast.NodeType.ordinal:()I
            bipush 97
            iastore
       345: goto 347
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       346: pop
      StackMap locals:
      StackMap stack:
       347: aload 0
            dup
            putstatic org.jruby.ir.IRBuilder.$SWITCH_TABLE$org$jruby$ast$NodeType:[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
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
         110   111     112  Class java.lang.NoSuchFieldError
         113   114     115  Class java.lang.NoSuchFieldError
         116   117     118  Class java.lang.NoSuchFieldError
         119   120     121  Class java.lang.NoSuchFieldError
         122   123     124  Class java.lang.NoSuchFieldError
         125   126     127  Class java.lang.NoSuchFieldError
         128   129     130  Class java.lang.NoSuchFieldError
         131   132     133  Class java.lang.NoSuchFieldError
         134   135     136  Class java.lang.NoSuchFieldError
         137   138     139  Class java.lang.NoSuchFieldError
         140   141     142  Class java.lang.NoSuchFieldError
         143   144     145  Class java.lang.NoSuchFieldError
         146   147     148  Class java.lang.NoSuchFieldError
         149   150     151  Class java.lang.NoSuchFieldError
         152   153     154  Class java.lang.NoSuchFieldError
         155   156     157  Class java.lang.NoSuchFieldError
         158   159     160  Class java.lang.NoSuchFieldError
         161   162     163  Class java.lang.NoSuchFieldError
         164   165     166  Class java.lang.NoSuchFieldError
         167   168     169  Class java.lang.NoSuchFieldError
         170   171     172  Class java.lang.NoSuchFieldError
         173   174     175  Class java.lang.NoSuchFieldError
         176   177     178  Class java.lang.NoSuchFieldError
         179   180     181  Class java.lang.NoSuchFieldError
         182   183     184  Class java.lang.NoSuchFieldError
         185   186     187  Class java.lang.NoSuchFieldError
         188   189     190  Class java.lang.NoSuchFieldError
         191   192     193  Class java.lang.NoSuchFieldError
         194   195     196  Class java.lang.NoSuchFieldError
         197   198     199  Class java.lang.NoSuchFieldError
         200   201     202  Class java.lang.NoSuchFieldError
         203   204     205  Class java.lang.NoSuchFieldError
         206   207     208  Class java.lang.NoSuchFieldError
         209   210     211  Class java.lang.NoSuchFieldError
         212   213     214  Class java.lang.NoSuchFieldError
         215   216     217  Class java.lang.NoSuchFieldError
         218   219     220  Class java.lang.NoSuchFieldError
         221   222     223  Class java.lang.NoSuchFieldError
         224   225     226  Class java.lang.NoSuchFieldError
         227   228     229  Class java.lang.NoSuchFieldError
         230   231     232  Class java.lang.NoSuchFieldError
         233   234     235  Class java.lang.NoSuchFieldError
         236   237     238  Class java.lang.NoSuchFieldError
         239   240     241  Class java.lang.NoSuchFieldError
         242   243     244  Class java.lang.NoSuchFieldError
         245   246     247  Class java.lang.NoSuchFieldError
         248   249     250  Class java.lang.NoSuchFieldError
         251   252     253  Class java.lang.NoSuchFieldError
         254   255     256  Class java.lang.NoSuchFieldError
         257   258     259  Class java.lang.NoSuchFieldError
         260   261     262  Class java.lang.NoSuchFieldError
         263   264     265  Class java.lang.NoSuchFieldError
         266   267     268  Class java.lang.NoSuchFieldError
         269   270     271  Class java.lang.NoSuchFieldError
         272   273     274  Class java.lang.NoSuchFieldError
         275   276     277  Class java.lang.NoSuchFieldError
         278   279     280  Class java.lang.NoSuchFieldError
         281   282     283  Class java.lang.NoSuchFieldError
         284   285     286  Class java.lang.NoSuchFieldError
         287   288     289  Class java.lang.NoSuchFieldError
         290   291     292  Class java.lang.NoSuchFieldError
         293   294     295  Class java.lang.NoSuchFieldError
         296   297     298  Class java.lang.NoSuchFieldError
         299   300     301  Class java.lang.NoSuchFieldError
         302   303     304  Class java.lang.NoSuchFieldError
         305   306     307  Class java.lang.NoSuchFieldError
         308   309     310  Class java.lang.NoSuchFieldError
         311   312     313  Class java.lang.NoSuchFieldError
         314   315     316  Class java.lang.NoSuchFieldError
         317   318     319  Class java.lang.NoSuchFieldError
         320   321     322  Class java.lang.NoSuchFieldError
         323   324     325  Class java.lang.NoSuchFieldError
         326   327     328  Class java.lang.NoSuchFieldError
         329   330     331  Class java.lang.NoSuchFieldError
         332   333     334  Class java.lang.NoSuchFieldError
         335   336     337  Class java.lang.NoSuchFieldError
         338   339     340  Class java.lang.NoSuchFieldError
         341   342     343  Class java.lang.NoSuchFieldError
         344   345     346  Class java.lang.NoSuchFieldError
}
SourceFile: "IRBuilder.java"
NestMembers:
  org.jruby.ir.IRBuilder$1  org.jruby.ir.IRBuilder$2  org.jruby.ir.IRBuilder$3  org.jruby.ir.IRBuilder$4  org.jruby.ir.IRBuilder$5  org.jruby.ir.IRBuilder$6  org.jruby.ir.IRBuilder$7  org.jruby.ir.IRBuilder$8  org.jruby.ir.IRBuilder$9  org.jruby.ir.IRBuilder$CodeBlock  org.jruby.ir.IRBuilder$EnsureBlockInfo  org.jruby.ir.IRBuilder$IRLoop  org.jruby.ir.IRBuilder$RescueBlockInfo
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  org.jruby.ir.IRBuilder$1
  org.jruby.ir.IRBuilder$2
  org.jruby.ir.IRBuilder$3
  org.jruby.ir.IRBuilder$4
  org.jruby.ir.IRBuilder$5
  org.jruby.ir.IRBuilder$6
  org.jruby.ir.IRBuilder$7
  org.jruby.ir.IRBuilder$8
  org.jruby.ir.IRBuilder$9
  abstract CodeBlock = org.jruby.ir.IRBuilder$CodeBlock of org.jruby.ir.IRBuilder
  private EnsureBlockInfo = org.jruby.ir.IRBuilder$EnsureBlockInfo of org.jruby.ir.IRBuilder
  private IRLoop = org.jruby.ir.IRBuilder$IRLoop of org.jruby.ir.IRBuilder
  private RescueBlockInfo = org.jruby.ir.IRBuilder$RescueBlockInfo of org.jruby.ir.IRBuilder
  public final Methods = org.jruby.ir.instructions.RuntimeHelperCall$Methods of org.jruby.ir.instructions.RuntimeHelperCall