public abstract class org.jruby.ir.IRScope implements org.jruby.ParseResult
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jruby.ir.IRScope
  super_class: java.lang.Object
{
  public static final org.jruby.util.log.Logger LOG;
    descriptor: Lorg/jruby/util/log/Logger;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final java.util.Collection<org.jruby.ir.IRClosure> NO_CLOSURES;
    descriptor: Ljava/util/Collection;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Collection<Lorg/jruby/ir/IRClosure;>;

  private static final java.util.concurrent.atomic.AtomicInteger globalScopeCount;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final int scopeId;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.jruby.util.ByteList name;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0002) ACC_PRIVATE

  private final int lineNumber;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.jruby.ir.IRScope lexicalParent;
    descriptor: Lorg/jruby/ir/IRScope;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<org.jruby.ir.IRClosure> nestedClosures;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/jruby/ir/IRClosure;>;

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

  private java.util.List<org.jruby.ir.IRScope> lexicalChildren;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/jruby/ir/IRScope;>;

  private final org.jruby.parser.StaticScope staticScope;
    descriptor: Lorg/jruby/parser/StaticScope;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected org.jruby.ir.interpreter.InterpreterContext interpreterContext;
    descriptor: Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0004) ACC_PROTECTED

  protected org.jruby.ir.interpreter.FullInterpreterContext fullInterpreterContext;
    descriptor: Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0004) ACC_PROTECTED

  protected org.jruby.ir.interpreter.FullInterpreterContext optimizedInterpreterContext;
    descriptor: Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0004) ACC_PROTECTED

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

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

  java.util.Map<org.jruby.RubySymbol, org.jruby.ir.operands.LocalVariable> localVars;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/LocalVariable;>;

  final java.util.EnumSet<org.jruby.ir.IRFlags> flags;
    descriptor: Ljava/util/EnumSet;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/EnumSet<Lorg/jruby/ir/IRFlags;>;

  private org.jruby.ir.IRManager manager;
    descriptor: Lorg/jruby/ir/IRManager;
    flags: (0x0002) ACC_PRIVATE

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

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

  public org.jruby.compiler.Compilable compilable;
    descriptor: Lorg/jruby/compiler/Compilable;
    flags: (0x0001) ACC_PUBLIC

  private static final java.util.EnumSet<org.jruby.ir.IRFlags> DEFAULT_SCOPE_FLAGS;
    descriptor: Ljava/util/EnumSet;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/EnumSet<Lorg/jruby/ir/IRFlags;>;

  private static final java.util.EnumSet<org.jruby.ir.IRFlags> NEEDS_DYNAMIC_SCOPE_FLAGS;
    descriptor: Ljava/util/EnumSet;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/EnumSet<Lorg/jruby/ir/IRFlags;>;

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 66
            ldc Lorg/jruby/ir/IRScope;
            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.IRScope.$assertionsDisabled:Z
         3: .line 67
            ldc Lorg/jruby/ir/IRScope;
            invokestatic org.jruby.util.log.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/jruby/util/log/Logger;
            putstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
         4: .line 69
            getstatic java.util.Collections.EMPTY_LIST:Ljava/util/List;
            putstatic org.jruby.ir.IRScope.NO_CLOSURES:Ljava/util/Collection;
         5: .line 71
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            putstatic org.jruby.ir.IRScope.globalScopeCount:Ljava/util/concurrent/atomic/AtomicInteger;
         6: .line 693
            getstatic org.jruby.ir.IRFlags.CAN_CAPTURE_CALLERS_BINDING:Lorg/jruby/ir/IRFlags;
            bipush 6
            anewarray org.jruby.ir.IRFlags
            dup
            iconst_0
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            aastore
            dup
            iconst_1
            getstatic org.jruby.ir.IRFlags.USES_EVAL:Lorg/jruby/ir/IRFlags;
            aastore
            dup
            iconst_2
            getstatic org.jruby.ir.IRFlags.REQUIRES_BACKREF:Lorg/jruby/ir/IRFlags;
            aastore
            dup
            iconst_3
         7: .line 694
            getstatic org.jruby.ir.IRFlags.REQUIRES_LASTLINE:Lorg/jruby/ir/IRFlags;
            aastore
            dup
            iconst_4
            getstatic org.jruby.ir.IRFlags.REQUIRES_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            aastore
            dup
            iconst_5
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            aastore
         8: .line 693
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet;
         9: .line 692
            putstatic org.jruby.ir.IRScope.DEFAULT_SCOPE_FLAGS:Ljava/util/EnumSet;
        10: .line 697
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            getstatic org.jruby.ir.IRFlags.HAS_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet;
        11: .line 696
            putstatic org.jruby.ir.IRScope.NEEDS_DYNAMIC_SCOPE_FLAGS:Ljava/util/EnumSet;
        12: .line 697
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(org.jruby.ir.IRScope, org.jruby.ir.IRScope);
    descriptor: (Lorg/jruby/ir/IRScope;Lorg/jruby/ir/IRScope;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRScope s
        start local 2 // org.jruby.ir.IRScope lexicalParent
         0: .line 123
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 110
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRScope.nextLabelIndex:I
         2: .line 124
            aload 0 /* this */
            aload 2 /* lexicalParent */
            putfield org.jruby.ir.IRScope.lexicalParent:Lorg/jruby/ir/IRScope;
         3: .line 125
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            putfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
         4: .line 126
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.lineNumber:I
            putfield org.jruby.ir.IRScope.lineNumber:I
         5: .line 127
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
            putfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
         6: .line 128
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.nextClosureIndex:I
            putfield org.jruby.ir.IRScope.nextClosureIndex:I
         7: .line 129
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         8: .line 130
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
         9: .line 132
            aload 0 /* this */
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.clone:()Ljava/util/EnumSet;
            putfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
        10: .line 134
            aload 0 /* this */
            new java.util.HashMap
            dup
            aload 1 /* s */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            putfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
        11: .line 135
            aload 0 /* this */
            getstatic org.jruby.ir.IRScope.globalScopeCount:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            putfield org.jruby.ir.IRScope.scopeId:I
        12: .line 137
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.setupLexicalContainment:()V
        13: .line 138
            return
        end local 2 // org.jruby.ir.IRScope lexicalParent
        end local 1 // org.jruby.ir.IRScope s
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lorg/jruby/ir/IRScope;
            0   14     1              s  Lorg/jruby/ir/IRScope;
            0   14     2  lexicalParent  Lorg/jruby/ir/IRScope;
    MethodParameters:
               Name  Flags
      s              
      lexicalParent  

  public void <init>(org.jruby.ir.IRManager, org.jruby.ir.IRScope, org.jruby.util.ByteList, int, org.jruby.parser.StaticScope);
    descriptor: (Lorg/jruby/ir/IRManager;Lorg/jruby/ir/IRScope;Lorg/jruby/util/ByteList;ILorg/jruby/parser/StaticScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRManager manager
        start local 2 // org.jruby.ir.IRScope lexicalParent
        start local 3 // org.jruby.util.ByteList name
        start local 4 // int lineNumber
        start local 5 // org.jruby.parser.StaticScope staticScope
         0: .line 140
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 110
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRScope.nextLabelIndex:I
         2: .line 141
            aload 0 /* this */
            aload 1 /* manager */
            putfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
         3: .line 142
            aload 0 /* this */
            aload 2 /* lexicalParent */
            putfield org.jruby.ir.IRScope.lexicalParent:Lorg/jruby/ir/IRScope;
         4: .line 143
            aload 0 /* this */
            aload 3 /* name */
            putfield org.jruby.ir.IRScope.name:Lorg/jruby/util/ByteList;
         5: .line 144
            aload 0 /* this */
            iload 4 /* lineNumber */
            putfield org.jruby.ir.IRScope.lineNumber:I
         6: .line 145
            aload 0 /* this */
            aload 5 /* staticScope */
            putfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
         7: .line 146
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ir.IRScope.nextClosureIndex:I
         8: .line 147
            aload 0 /* this */
            iconst_m1
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         9: .line 148
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
        10: .line 149
            aload 0 /* this */
            getstatic org.jruby.ir.IRScope.DEFAULT_SCOPE_FLAGS:Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.clone:()Ljava/util/EnumSet;
            putfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
        11: .line 153
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.parentMaybeUsingRefinements:()Z
            ifeq 12
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.MAYBE_USING_REFINEMENTS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        12: .line 155
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRManager org.jruby.ir.IRScope org.jruby.util.ByteList int org.jruby.parser.StaticScope
      StackMap stack:
            aload 0 /* this */
            new java.util.HashMap
            dup
            iconst_1
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
        13: .line 156
            aload 0 /* this */
            getstatic org.jruby.ir.IRScope.globalScopeCount:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            putfield org.jruby.ir.IRScope.scopeId:I
        14: .line 158
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.setupLexicalContainment:()V
        15: .line 159
            return
        end local 5 // org.jruby.parser.StaticScope staticScope
        end local 4 // int lineNumber
        end local 3 // org.jruby.util.ByteList name
        end local 2 // org.jruby.ir.IRScope lexicalParent
        end local 1 // org.jruby.ir.IRManager manager
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lorg/jruby/ir/IRScope;
            0   16     1        manager  Lorg/jruby/ir/IRManager;
            0   16     2  lexicalParent  Lorg/jruby/ir/IRScope;
            0   16     3           name  Lorg/jruby/util/ByteList;
            0   16     4     lineNumber  I
            0   16     5    staticScope  Lorg/jruby/parser/StaticScope;
    MethodParameters:
               Name  Flags
      manager        
      lexicalParent  
      name           
      lineNumber     
      staticScope    

  private void setupLexicalContainment();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 162
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.isDryRun:()Z
            ifne 1
            getstatic org.jruby.RubyInstanceConfig.IR_WRITING:Z
            ifne 1
            getstatic org.jruby.RubyInstanceConfig.RECORD_LEXICAL_HIERARCHY:Z
            ifeq 3
         1: .line 163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
         2: .line 164
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalParent:Lorg/jruby/ir/IRScope;
            ifnull 3
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalParent:Lorg/jruby/ir/IRScope;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.addChildScope:(Lorg/jruby/ir/IRScope;)V
         3: .line 166
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ir/IRScope;

  public int getScopeId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 169
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.scopeId:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 174
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.scopeId:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public void setInterpreterContext(org.jruby.ir.interpreter.InterpreterContext);
    descriptor: (Lorg/jruby/ir/interpreter/InterpreterContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.interpreter.InterpreterContext interpreterContext
         0: .line 178
            aload 0 /* this */
            aload 1 /* interpreterContext */
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
         1: .line 179
            return
        end local 1 // org.jruby.ir.interpreter.InterpreterContext interpreterContext
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/jruby/ir/IRScope;
            0    2     1  interpreterContext  Lorg/jruby/ir/interpreter/InterpreterContext;
    MethodParameters:
                    Name  Flags
      interpreterContext  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.Object other
         0: .line 183
            aload 1 /* other */
            ifnull 1
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* other */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpne 1
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.scopeId:I
            aload 1 /* other */
            checkcast org.jruby.ir.IRScope
            getfield org.jruby.ir.IRScope.scopeId:I
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRScope;
            0    2     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  protected void addChildScope(org.jruby.ir.IRScope);
    descriptor: (Lorg/jruby/ir/IRScope;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRScope scope
         0: .line 187
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
            ifnonnull 1
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
         1: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
            aload 1 /* scope */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 189
            return
        end local 1 // org.jruby.ir.IRScope scope
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/ir/IRScope;
            0    3     1  scope  Lorg/jruby/ir/IRScope;
    MethodParameters:
       Name  Flags
      scope  

  public java.util.List<org.jruby.ir.IRScope> getLexicalScopes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 192
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
            ifnonnull 1
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
         1: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lexicalChildren:Ljava/util/List;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/List<Lorg/jruby/ir/IRScope;>;

  public void addClosure(org.jruby.ir.IRClosure);
    descriptor: (Lorg/jruby/ir/IRClosure;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRClosure closure
         0: .line 197
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
            ifnonnull 1
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
         1: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
            aload 1 /* closure */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 199
            return
        end local 1 // org.jruby.ir.IRClosure closure
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ir/IRScope;
            0    3     1  closure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
         Name  Flags
      closure  

  public void removeClosure(org.jruby.ir.IRClosure);
    descriptor: (Lorg/jruby/ir/IRClosure;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRClosure closure
         0: .line 202
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
            ifnull 1
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
            aload 1 /* closure */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 203
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ir.IRClosure closure
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ir/IRScope;
            0    2     1  closure  Lorg/jruby/ir/IRClosure;
    MethodParameters:
         Name  Flags
      closure  

  public org.jruby.ir.operands.Label getNewLabel(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/ir/operands/Label;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.String prefix
         0: .line 206
            new org.jruby.ir.operands.Label
            dup
            aload 1 /* prefix */
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.nextLabelIndex:I
            dup_x1
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.nextLabelIndex:I
            invokespecial org.jruby.ir.operands.Label.<init>:(Ljava/lang/String;I)V
            areturn
        end local 1 // java.lang.String prefix
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jruby/ir/IRScope;
            0    1     1  prefix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prefix  

  public org.jruby.ir.operands.Label getNewLabel();
    descriptor: ()Lorg/jruby/ir/operands/Label;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 210
            aload 0 /* this */
            ldc "LBL"
            invokevirtual org.jruby.ir.IRScope.getNewLabel:(Ljava/lang/String;)Lorg/jruby/ir/operands/Label;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public java.util.Collection<org.jruby.ir.IRClosure> getClosures();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 214
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
            ifnonnull 1
            getstatic org.jruby.ir.IRScope.NO_CLOSURES:Ljava/util/Collection;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.ir.IRScope.nestedClosures:Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.Collection
         2: areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/Collection<Lorg/jruby/ir/IRClosure;>;

  public org.jruby.ir.IRManager getManager();
    descriptor: ()Lorg/jruby/ir/IRManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 218
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public void setIsMaybeUsingRefinements();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 222
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.MAYBE_USING_REFINEMENTS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 223
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public boolean parentMaybeUsingRefinements();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 226
            aload 0 /* this */
            astore 1 /* s */
        start local 1 // org.jruby.ir.IRScope s
         1: goto 5
         2: .line 227
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* s */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.MAYBE_USING_REFINEMENTS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            ireturn
         3: .line 230
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            instanceof org.jruby.ir.IREvalScript
            ifeq 4
            iconst_0
            ireturn
         4: .line 226
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 1 /* s */
      StackMap locals:
      StackMap stack:
         5: aload 1 /* s */
            ifnonnull 2
        end local 1 // org.jruby.ir.IRScope s
         6: .line 233
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/jruby/ir/IRScope;
            1    6     1     s  Lorg/jruby/ir/IRScope;

  public boolean maybeUsingRefinements();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 237
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.MAYBE_USING_REFINEMENTS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

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

  public org.jruby.parser.StaticScope getStaticScope();
    descriptor: ()Lorg/jruby/parser/StaticScope;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 248
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean isWithinEND();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 252
            aload 0 /* this */
            astore 1 /* current */
        start local 1 // org.jruby.ir.IRScope current
         1: goto 4
         2: .line 253
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* current */
            checkcast org.jruby.ir.IRClosure
            invokevirtual org.jruby.ir.IRClosure.isEND:()Z
            ifeq 3
            iconst_1
            ireturn
         3: .line 252
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 1 /* current */
      StackMap locals:
      StackMap stack:
         4: aload 1 /* current */
            ifnull 5
            aload 1 /* current */
            instanceof org.jruby.ir.IRClosure
            ifne 2
        end local 1 // org.jruby.ir.IRScope current
         5: .line 256
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/ir/IRScope;
            1    5     1  current  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.IRMethod getNearestMethod();
    descriptor: ()Lorg/jruby/ir/IRMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 260
            aload 0 /* this */
            astore 1 /* current */
        start local 1 // org.jruby.ir.IRScope current
         1: .line 262
            goto 3
         2: .line 263
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 1 /* current */
         3: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            ifnull 4
            aload 1 /* current */
            instanceof org.jruby.ir.IRMethod
            ifeq 2
         4: .line 266
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            checkcast org.jruby.ir.IRMethod
            areturn
        end local 1 // org.jruby.ir.IRScope current
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            1    5     1  current  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.IRScope getNearestTopLocalVariableScope();
    descriptor: ()Lorg/jruby/ir/IRScope;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 270
            aload 0 /* this */
            astore 1 /* current */
        start local 1 // org.jruby.ir.IRScope current
         1: .line 272
            goto 3
         2: .line 273
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 1 /* current */
         3: .line 272
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            ifnull 4
            aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.isTopLocalVariableScope:()Z
            ifeq 2
         4: .line 276
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            areturn
        end local 1 // org.jruby.ir.IRScope current
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            1    5     1  current  Lorg/jruby/ir/IRScope;

  public boolean isScopeContainedBy(org.jruby.ir.IRScope);
    descriptor: (Lorg/jruby/ir/IRScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRScope parentScope
         0: .line 287
            aload 0 /* this */
            astore 2 /* current */
        start local 2 // org.jruby.ir.IRScope current
         1: .line 289
            goto 4
         2: .line 290
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* parentScope */
            aload 2 /* current */
            if_acmpne 3
            iconst_1
            ireturn
         3: .line 292
      StackMap locals:
      StackMap stack:
            aload 2 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 2 /* current */
         4: .line 289
      StackMap locals:
      StackMap stack:
            aload 2 /* current */
            ifnonnull 2
         5: .line 295
            iconst_0
            ireturn
        end local 2 // org.jruby.ir.IRScope current
        end local 1 // org.jruby.ir.IRScope parentScope
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/jruby/ir/IRScope;
            0    6     1  parentScope  Lorg/jruby/ir/IRScope;
            1    6     2      current  Lorg/jruby/ir/IRScope;
    MethodParameters:
             Name  Flags
      parentScope  

  public int getNearestModuleReferencingScopeDepth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 304
            iconst_0
            istore 1 /* n */
        start local 1 // int n
         1: .line 305
            aload 0 /* this */
            astore 2 /* current */
        start local 2 // org.jruby.ir.IRScope current
         2: .line 306
            goto 7
         3: .line 310
      StackMap locals: int org.jruby.ir.IRScope
      StackMap stack:
            aload 2 /* current */
            ifnull 4
            aload 2 /* current */
            instanceof org.jruby.ir.IREvalScript
            ifeq 5
      StackMap locals:
      StackMap stack:
         4: iconst_m1
            ireturn
         5: .line 312
      StackMap locals:
      StackMap stack:
            aload 2 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 2 /* current */
         6: .line 313
            aload 2 /* current */
            instanceof org.jruby.ir.IRFor
            ifne 7
            iinc 1 /* n */ 1
         7: .line 306
      StackMap locals:
      StackMap stack:
            aload 2 /* current */
            instanceof org.jruby.ir.IRModuleBody
            ifeq 3
         8: .line 316
            iload 1 /* n */
            ireturn
        end local 2 // org.jruby.ir.IRScope current
        end local 1 // int n
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/ir/IRScope;
            1    9     1        n  I
            2    9     2  current  Lorg/jruby/ir/IRScope;

  public java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 320
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.RubySymbol getName();
    descriptor: ()Lorg/jruby/RubySymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 324
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.name:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.util.ByteList getByteName();
    descriptor: ()Lorg/jruby/util/ByteList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 328
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.name:Lorg/jruby/util/ByteList;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public void setByteName(org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/util/ByteList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.util.ByteList name
         0: .line 332
            aload 0 /* this */
            aload 1 /* name */
            putfield org.jruby.ir.IRScope.name:Lorg/jruby/util/ByteList;
         1: .line 333
            return
        end local 1 // org.jruby.util.ByteList name
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;
            0    2     1  name  Lorg/jruby/util/ByteList;
    MethodParameters:
      Name  Flags
      name  

  public void setFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.String filename
         0: .line 336
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getRootLexicalScope:()Lorg/jruby/ir/IRScope;
            aload 1 /* filename */
            invokevirtual org.jruby.ir.IRScope.setFileName:(Ljava/lang/String;)V
         1: .line 337
            return
        end local 1 // java.lang.String filename
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ir/IRScope;
            0    2     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  public java.lang.String getFileName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 341
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.lang.String getFile();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 345
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getRootLexicalScope:()Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public int getLineNumber();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 350
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lineNumber:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public int getLine();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 354
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.lineNumber:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.IRScope getRootLexicalScope();
    descriptor: ()Lorg/jruby/ir/IRScope;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 361
            aload 0 /* this */
            astore 1 /* current */
        start local 1 // org.jruby.ir.IRScope current
         1: .line 363
            goto 3
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
         2: aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 1 /* current */
      StackMap locals:
      StackMap stack:
         3: aload 1 /* current */
            ifnull 4
            aload 1 /* current */
            invokevirtual org.jruby.ir.IRScope.isScriptScope:()Z
            ifeq 2
         4: .line 365
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            areturn
        end local 1 // org.jruby.ir.IRScope current
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            1    5     1  current  Lorg/jruby/ir/IRScope;

  public boolean isNestedInClosure(org.jruby.ir.IRClosure);
    descriptor: (Lorg/jruby/ir/IRClosure;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRClosure closure
         0: .line 369
            aload 0 /* this */
            astore 2 /* s */
        start local 2 // org.jruby.ir.IRScope s
         1: goto 4
         2: .line 370
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 2 /* s */
            aload 1 /* closure */
            if_acmpne 3
            iconst_1
            ireturn
         3: .line 369
      StackMap locals:
      StackMap stack:
            aload 2 /* s */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 2 /* s */
      StackMap locals:
      StackMap stack:
         4: aload 2 /* s */
            ifnull 5
            aload 2 /* s */
            invokevirtual org.jruby.ir.IRScope.isTopLocalVariableScope:()Z
            ifeq 2
        end local 2 // org.jruby.ir.IRScope s
         5: .line 373
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.jruby.ir.IRClosure closure
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/ir/IRScope;
            0    6     1  closure  Lorg/jruby/ir/IRClosure;
            1    5     2        s  Lorg/jruby/ir/IRScope;
    MethodParameters:
         Name  Flags
      closure  

  public void setHasLoopsFlag();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 377
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_LOOPS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 378
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public boolean hasLoops();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 381
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_LOOPS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean hasExplicitCallProtocol();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 385
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_EXPLICIT_CALL_PROTOCOL:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public void setExplicitCallProtocolFlag();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 389
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_EXPLICIT_CALL_PROTOCOL:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 390
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public boolean receivesKeywordArgs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 393
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.RECEIVES_KEYWORD_ARGS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean bindingHasEscaped();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 397
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean usesEval();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 401
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_EVAL:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean usesZSuper();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 405
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean canReceiveNonlocalReturns();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 409
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.computeScopeFlags:()V
         1: .line 410
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public void putLiveVariablesProblem(org.jruby.ir.dataflow.analyses.LiveVariablesProblem);
    descriptor: (Lorg/jruby/ir/dataflow/analyses/LiveVariablesProblem;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.dataflow.analyses.LiveVariablesProblem problem
         0: .line 415
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 3
         1: .line 417
            aload 1 /* problem */
            ifnull 2
            new java.lang.IllegalStateException
            dup
            ldc "LVP being stored when no FIC"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 418
      StackMap locals:
      StackMap stack:
            return
         3: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "Live Variables Analysis"
            aload 1 /* problem */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 421
            return
        end local 1 // org.jruby.ir.dataflow.analyses.LiveVariablesProblem problem
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            0    5     1  problem  Lorg/jruby/ir/dataflow/analyses/LiveVariablesProblem;
    MethodParameters:
         Name  Flags
      problem  

  public org.jruby.ir.dataflow.analyses.LiveVariablesProblem getLiveVariablesProblem();
    descriptor: ()Lorg/jruby/ir/dataflow/analyses/LiveVariablesProblem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 424
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 1
            aconst_null
            areturn
         1: .line 426
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "Live Variables Analysis"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.dataflow.analyses.LiveVariablesProblem
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public void putStoreLocalVarPlacementProblem(org.jruby.ir.dataflow.analyses.StoreLocalVarPlacementProblem);
    descriptor: (Lorg/jruby/ir/dataflow/analyses/StoreLocalVarPlacementProblem;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.dataflow.analyses.StoreLocalVarPlacementProblem problem
         0: .line 431
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 3
         1: .line 433
            aload 1 /* problem */
            ifnull 2
            new java.lang.IllegalStateException
            dup
            ldc "StoreLocalVarPlacementProblem being stored when no FIC"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 434
      StackMap locals:
      StackMap stack:
            return
         3: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "Placement of local-var stores"
            aload 1 /* problem */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 437
            return
        end local 1 // org.jruby.ir.dataflow.analyses.StoreLocalVarPlacementProblem problem
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            0    5     1  problem  Lorg/jruby/ir/dataflow/analyses/StoreLocalVarPlacementProblem;
    MethodParameters:
         Name  Flags
      problem  

  public org.jruby.ir.dataflow.analyses.StoreLocalVarPlacementProblem getStoreLocalVarPlacementProblem();
    descriptor: ()Lorg/jruby/ir/dataflow/analyses/StoreLocalVarPlacementProblem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 440
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 1
            aconst_null
            areturn
         1: .line 442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "Placement of local-var stores"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.dataflow.analyses.StoreLocalVarPlacementProblem
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public void putUnboxableOpsAnalysisProblem(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisProblem);
    descriptor: (Lorg/jruby/ir/dataflow/analyses/UnboxableOpsAnalysisProblem;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisProblem problem
         0: .line 447
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 3
         1: .line 449
            aload 1 /* problem */
            ifnull 2
            new java.lang.IllegalStateException
            dup
            ldc "UboxableOpsAnalysisProblem being stored when no FIC"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 450
      StackMap locals:
      StackMap stack:
            return
         3: .line 452
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "UnboxableOpsAnalysis"
            aload 1 /* problem */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 453
            return
        end local 1 // org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisProblem problem
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ir/IRScope;
            0    5     1  problem  Lorg/jruby/ir/dataflow/analyses/UnboxableOpsAnalysisProblem;
    MethodParameters:
         Name  Flags
      problem  

  public org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisProblem getUnboxableOpsAnalysisProblem();
    descriptor: ()Lorg/jruby/ir/dataflow/analyses/UnboxableOpsAnalysisProblem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 456
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 1
            aconst_null
            areturn
         1: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getDataFlowProblems:()Ljava/util/Map;
            ldc "UnboxableOpsAnalysis"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisProblem
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.representations.CFG getCFG();
    descriptor: ()Lorg/jruby/ir/representations/CFG;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 462
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getOptimizedInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 2
         1: .line 463
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getOptimizedInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getCFG:()Lorg/jruby/ir/representations/CFG;
            areturn
         2: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 3
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.prepareFullBuildCommon:()V
         3: .line 468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getCFG:()Lorg/jruby/ir/representations/CFG;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ir/IRScope;

  public java.util.List<org.jruby.ir.passes.CompilerPass> getExecutedPasses();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 472
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 1
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getExecutedPasses:()Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.List
         2: areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/List<Lorg/jruby/ir/passes/CompilerPass;>;

  private void runCompilerPasses(java.util.List<org.jruby.ir.passes.CompilerPass>, org.jruby.ir.util.IGVDumper);
    descriptor: (Ljava/util/List;Lorg/jruby/ir/util/IGVDumper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.util.List passes
        start local 2 // org.jruby.ir.util.IGVDumper dumper
         0: .line 479
            aload 2 /* dumper */
            ifnull 1
            aload 2 /* dumper */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getCFG:()Lorg/jruby/ir/representations/CFG;
            ldc "Start"
            invokevirtual org.jruby.ir.util.IGVDumper.dump:(Lorg/jruby/ir/representations/CFG;Ljava/lang/String;)V
         1: .line 481
      StackMap locals:
      StackMap stack:
            aload 1 /* passes */
            invokestatic org.jruby.ir.IRManager.schedulePasses:(Ljava/util/List;)Lorg/jruby/ir/passes/CompilerPassScheduler;
            astore 3 /* scheduler */
        start local 3 // org.jruby.ir.passes.CompilerPassScheduler scheduler
         2: .line 482
            aload 3 /* scheduler */
            invokeinterface org.jruby.ir.passes.CompilerPassScheduler.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: org.jruby.ir.IRScope java.util.List org.jruby.ir.util.IGVDumper org.jruby.ir.passes.CompilerPassScheduler top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.passes.CompilerPass
            astore 4 /* pass */
        start local 4 // org.jruby.ir.passes.CompilerPass pass
         4: .line 483
            aload 4 /* pass */
            aload 0 /* this */
            invokevirtual org.jruby.ir.passes.CompilerPass.run:(Lorg/jruby/ir/IRScope;)Ljava/lang/Object;
            pop
         5: .line 484
            aload 2 /* dumper */
            ifnull 6
            aload 2 /* dumper */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getCFG:()Lorg/jruby/ir/representations/CFG;
            aload 4 /* pass */
            invokevirtual org.jruby.ir.passes.CompilerPass.getShortLabel:()Ljava/lang/String;
            invokevirtual org.jruby.ir.util.IGVDumper.dump:(Lorg/jruby/ir/representations/CFG;Ljava/lang/String;)V
        end local 4 // org.jruby.ir.passes.CompilerPass pass
         6: .line 482
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 487
            getstatic org.jruby.RubyInstanceConfig.IR_UNBOXING:Z
            ifeq 11
         8: .line 488
            new org.jruby.ir.passes.UnboxingPass
            dup
            invokespecial org.jruby.ir.passes.UnboxingPass.<init>:()V
            astore 4 /* pass */
        start local 4 // org.jruby.ir.passes.CompilerPass pass
         9: .line 489
            aload 4 /* pass */
            aload 0 /* this */
            invokevirtual org.jruby.ir.passes.CompilerPass.run:(Lorg/jruby/ir/IRScope;)Ljava/lang/Object;
            pop
        10: .line 490
            aload 2 /* dumper */
            ifnull 11
            aload 2 /* dumper */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getCFG:()Lorg/jruby/ir/representations/CFG;
            aload 4 /* pass */
            invokevirtual org.jruby.ir.passes.CompilerPass.getShortLabel:()Ljava/lang/String;
            invokevirtual org.jruby.ir.util.IGVDumper.dump:(Lorg/jruby/ir/representations/CFG;Ljava/lang/String;)V
        end local 4 // org.jruby.ir.passes.CompilerPass pass
        11: .line 493
      StackMap locals: org.jruby.ir.IRScope java.util.List org.jruby.ir.util.IGVDumper org.jruby.ir.passes.CompilerPassScheduler
      StackMap stack:
            aload 2 /* dumper */
            ifnull 12
            aload 2 /* dumper */
            invokevirtual org.jruby.ir.util.IGVDumper.close:()V
        12: .line 495
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.ir.passes.CompilerPassScheduler scheduler
        end local 2 // org.jruby.ir.util.IGVDumper dumper
        end local 1 // java.util.List passes
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/jruby/ir/IRScope;
            0   13     1     passes  Ljava/util/List<Lorg/jruby/ir/passes/CompilerPass;>;
            0   13     2     dumper  Lorg/jruby/ir/util/IGVDumper;
            2   13     3  scheduler  Lorg/jruby/ir/passes/CompilerPassScheduler;
            4    6     4       pass  Lorg/jruby/ir/passes/CompilerPass;
            9   11     4       pass  Lorg/jruby/ir/passes/CompilerPass;
    Signature: (Ljava/util/List<Lorg/jruby/ir/passes/CompilerPass;>;Lorg/jruby/ir/util/IGVDumper;)V
    MethodParameters:
        Name  Flags
      passes  
      dumper  

  public org.jruby.ir.interpreter.InterpreterContext allocateInterpreterContext(java.util.List<org.jruby.ir.instructions.Instr>);
    descriptor: (Ljava/util/List;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.util.List instructions
         0: .line 499
            aload 0 /* this */
            new org.jruby.ir.interpreter.InterpreterContext
            dup
            aload 0 /* this */
            aload 1 /* instructions */
            invokespecial org.jruby.ir.interpreter.InterpreterContext.<init>:(Lorg/jruby/ir/IRScope;Ljava/util/List;)V
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
         1: .line 501
            getstatic org.jruby.RubyInstanceConfig.IR_COMPILER_DEBUG:Z
            ifeq 2
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 1 // java.util.List instructions
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/jruby/ir/IRScope;
            0    3     1  instructions  Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;
    Signature: (Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;)Lorg/jruby/ir/interpreter/InterpreterContext;
    MethodParameters:
              Name  Flags
      instructions  

  public org.jruby.ir.interpreter.InterpreterContext allocateInterpreterContext(java.util.concurrent.Callable<java.util.List<org.jruby.ir.instructions.Instr>>);
    descriptor: (Ljava/util/concurrent/Callable;)Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.util.concurrent.Callable instructions
         0: .line 508
            aload 0 /* this */
            new org.jruby.ir.interpreter.InterpreterContext
            dup
            aload 0 /* this */
            aload 1 /* instructions */
            invokespecial org.jruby.ir.interpreter.InterpreterContext.<init>:(Lorg/jruby/ir/IRScope;Ljava/util/concurrent/Callable;)V
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
         1: .line 510
            getstatic org.jruby.RubyInstanceConfig.IR_COMPILER_DEBUG:Z
            ifeq 2
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 1 // java.util.concurrent.Callable instructions
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/jruby/ir/IRScope;
            0    3     1  instructions  Ljava/util/concurrent/Callable<Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;>;
    Signature: (Ljava/util/concurrent/Callable<Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;>;)Lorg/jruby/ir/interpreter/InterpreterContext;
    MethodParameters:
              Name  Flags
      instructions  

  private org.jruby.ir.instructions.Instr[] cloneInstrs();
    descriptor: ()[Lorg/jruby/ir/instructions/Instr;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 516
            new org.jruby.ir.transformations.inlining.SimpleCloneInfo
            dup
            aload 0 /* this */
            iconst_0
            invokespecial org.jruby.ir.transformations.inlining.SimpleCloneInfo.<init>:(Lorg/jruby/ir/IRScope;Z)V
            astore 1 /* cloneInfo */
        start local 1 // org.jruby.ir.transformations.inlining.SimpleCloneInfo cloneInfo
         1: .line 518
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.getInstructions:()[Lorg/jruby/ir/instructions/Instr;
            astore 2 /* instructions */
        start local 2 // org.jruby.ir.instructions.Instr[] instructions
         2: .line 519
            aload 2 /* instructions */
            arraylength
            istore 3 /* length */
        start local 3 // int length
         3: .line 520
            iload 3 /* length */
            anewarray org.jruby.ir.instructions.Instr
            astore 4 /* newInstructions */
        start local 4 // org.jruby.ir.instructions.Instr[] newInstructions
         4: .line 522
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 523
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.transformations.inlining.SimpleCloneInfo org.jruby.ir.instructions.Instr[] int org.jruby.ir.instructions.Instr[] int
      StackMap stack:
            aload 4 /* newInstructions */
            iload 5 /* i */
            aload 2 /* instructions */
            iload 5 /* i */
            aaload
            aload 1 /* cloneInfo */
            invokevirtual org.jruby.ir.instructions.Instr.clone:(Lorg/jruby/ir/transformations/inlining/CloneInfo;)Lorg/jruby/ir/instructions/Instr;
            aastore
         7: .line 522
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            iload 3 /* length */
            if_icmplt 6
        end local 5 // int i
         9: .line 526
            aload 4 /* newInstructions */
            areturn
        end local 4 // org.jruby.ir.instructions.Instr[] newInstructions
        end local 3 // int length
        end local 2 // org.jruby.ir.instructions.Instr[] instructions
        end local 1 // org.jruby.ir.transformations.inlining.SimpleCloneInfo cloneInfo
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/jruby/ir/IRScope;
            1   10     1        cloneInfo  Lorg/jruby/ir/transformations/inlining/SimpleCloneInfo;
            2   10     2     instructions  [Lorg/jruby/ir/instructions/Instr;
            3   10     3           length  I
            4   10     4  newInstructions  [Lorg/jruby/ir/instructions/Instr;
            5    9     5                i  I

  private void prepareFullBuildCommon();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 531
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 1
            return
         1: .line 535
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ir.interpreter.FullInterpreterContext
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.cloneInstrs:()[Lorg/jruby/ir/instructions/Instr;
            invokespecial org.jruby.ir.interpreter.FullInterpreterContext.<init>:(Lorg/jruby/ir/IRScope;[Lorg/jruby/ir/instructions/Instr;)V
            putfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
         2: .line 536
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRScope;

  public synchronized org.jruby.ir.interpreter.FullInterpreterContext prepareFullBuild();
    descriptor: ()Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 543
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 1
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
         1: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 2
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.buildComplete:()Z
            ifeq 2
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
         2: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getClosures:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: org.jruby.ir.IRScope top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRScope
            astore 1 /* scope */
        start local 1 // org.jruby.ir.IRScope scope
         4: .line 550
            aload 1 /* scope */
            invokevirtual org.jruby.ir.IRScope.prepareFullBuild:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            pop
        end local 1 // org.jruby.ir.IRScope scope
         5: .line 549
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 553
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.prepareFullBuildCommon:()V
         7: .line 554
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRManager.getCompilerPasses:(Lorg/jruby/ir/IRScope;)Ljava/util/List;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.dumpToIGV:()Lorg/jruby/ir/util/IGVDumper;
            invokevirtual org.jruby.ir.IRScope.runCompilerPasses:(Ljava/util/List;Lorg/jruby/ir/util/IGVDumper;)V
         8: .line 555
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRManager.optimizeIfSimpleScope:(Lorg/jruby/ir/IRScope;)V
         9: .line 559
            new org.jruby.ir.passes.AddCallProtocolInstructions
            dup
            invokespecial org.jruby.ir.passes.AddCallProtocolInstructions.<init>:()V
            aload 0 /* this */
            invokevirtual org.jruby.ir.passes.AddCallProtocolInstructions.run:(Lorg/jruby/ir/IRScope;)Ljava/lang/Object;
            pop
        10: .line 561
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.generateInstructionsForInterpretation:()V
        11: .line 563
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lorg/jruby/ir/IRScope;
            4    5     1  scope  Lorg/jruby/ir/IRScope;

  public java.lang.String getFullyQualifiedName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 568
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            ifnonnull 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            areturn
         1: .line 570
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFullyQualifiedName:()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 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.util.IGVDumper dumpToIGV();
    descriptor: ()Lorg/jruby/ir/util/IGVDumper;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 574
            getstatic org.jruby.RubyInstanceConfig.IR_DEBUG_IGV:Ljava/lang/String;
            ifnull 5
         1: .line 575
            getstatic org.jruby.RubyInstanceConfig.IR_DEBUG_IGV:Ljava/lang/String;
            astore 1 /* spec */
        start local 1 // java.lang.String spec
         2: .line 577
            aload 1 /* spec */
            ldc ":"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 3
            aload 1 /* spec */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.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 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLineNumber:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 578
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* spec */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFileName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 579
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.util.IGVDumper
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullyQualifiedName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "; line "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLineNumber:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.jruby.ir.util.IGVDumper.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String spec
         5: .line 583
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/jruby/ir/IRScope;
            2    5     1  spec  Ljava/lang/String;

  public synchronized org.jruby.ir.representations.BasicBlock[] prepareForCompilation();
    descriptor: ()[Lorg/jruby/ir/representations/BasicBlock;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 588
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 2
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.buildComplete:()Z
            ifeq 2
         1: .line 589
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getLinearizedBBList:()[Lorg/jruby/ir/representations/BasicBlock;
            areturn
         2: .line 594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 3
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.buildComplete:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getLinearizedBBList:()[Lorg/jruby/ir/representations/BasicBlock;
            areturn
         3: .line 596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getClosures:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 6
      StackMap locals: org.jruby.ir.IRScope top java.util.Iterator
      StackMap stack:
         4: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRScope
            astore 1 /* scope */
        start local 1 // org.jruby.ir.IRScope scope
         5: .line 597
            aload 1 /* scope */
            invokevirtual org.jruby.ir.IRScope.prepareForCompilation:()[Lorg/jruby/ir/representations/BasicBlock;
            pop
        end local 1 // org.jruby.ir.IRScope scope
         6: .line 596
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 600
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.prepareFullBuildCommon:()V
         8: .line 602
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getManager:()Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRManager.getJITPasses:(Lorg/jruby/ir/IRScope;)Ljava/util/List;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.dumpToIGV:()Lorg/jruby/ir/util/IGVDumper;
            invokevirtual org.jruby.ir.IRScope.runCompilerPasses:(Ljava/util/List;Lorg/jruby/ir/util/IGVDumper;)V
         9: .line 604
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.linearizeBasicBlocks:()[Lorg/jruby/ir/representations/BasicBlock;
            astore 1 /* bbs */
        start local 1 // org.jruby.ir.representations.BasicBlock[] bbs
        10: .line 606
            aload 1 /* bbs */
            areturn
        end local 1 // org.jruby.ir.representations.BasicBlock[] bbs
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/jruby/ir/IRScope;
            5    6     1  scope  Lorg/jruby/ir/IRScope;
           10   11     1    bbs  [Lorg/jruby/ir/representations/BasicBlock;

  public java.util.Map<org.jruby.ir.representations.BasicBlock, org.jruby.ir.operands.Label> buildJVMExceptionTable();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 613
            new java.util.HashMap
            dup
            iconst_1
            invokespecial java.util.HashMap.<init>:(I)V
            astore 1 /* map */
        start local 1 // java.util.Map map
         1: .line 615
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getLinearizedBBList:()[Lorg/jruby/ir/representations/BasicBlock;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.jruby.ir.IRScope java.util.Map top int int org.jruby.ir.representations.BasicBlock[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* bb */
        start local 2 // org.jruby.ir.representations.BasicBlock bb
         3: .line 616
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getCFG:()Lorg/jruby/ir/representations/CFG;
            aload 2 /* bb */
            invokevirtual org.jruby.ir.representations.CFG.getRescuerBBFor:(Lorg/jruby/ir/representations/BasicBlock;)Lorg/jruby/ir/representations/BasicBlock;
            astore 6 /* rescueBB */
        start local 6 // org.jruby.ir.representations.BasicBlock rescueBB
         4: .line 617
            aload 6 /* rescueBB */
            ifnull 6
         5: .line 618
            aload 1 /* map */
            aload 2 /* bb */
            aload 6 /* rescueBB */
            invokevirtual org.jruby.ir.representations.BasicBlock.getLabel:()Lorg/jruby/ir/operands/Label;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // org.jruby.ir.representations.BasicBlock rescueBB
        end local 2 // org.jruby.ir.representations.BasicBlock bb
         6: .line 615
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 2
         8: .line 625
            aload 1 /* map */
            areturn
        end local 1 // java.util.Map map
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/jruby/ir/IRScope;
            1    9     1       map  Ljava/util/Map<Lorg/jruby/ir/representations/BasicBlock;Lorg/jruby/ir/operands/Label;>;
            3    6     2        bb  Lorg/jruby/ir/representations/BasicBlock;
            4    6     6  rescueBB  Lorg/jruby/ir/representations/BasicBlock;
    Signature: ()Ljava/util/Map<Lorg/jruby/ir/representations/BasicBlock;Lorg/jruby/ir/operands/Label;>;

  public java.util.EnumSet<org.jruby.ir.IRFlags> getFlags();
    descriptor: ()Ljava/util/EnumSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 629
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/EnumSet<Lorg/jruby/ir/IRFlags;>;

  private void initScopeFlags();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 634
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_CAPTURE_CALLERS_BINDING:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 635
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         2: .line 636
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         3: .line 637
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_BREAK_INSTRS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         4: .line 638
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 639
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         6: .line 640
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_EVAL:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         7: .line 641
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         8: .line 643
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_LASTLINE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         9: .line 644
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_BACKREF:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        10: .line 645
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_VISIBILITY:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        11: .line 646
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_BLOCK:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        12: .line 647
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_SELF:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        13: .line 648
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_METHODNAME:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        14: .line 649
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_LINE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        15: .line 650
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_CLASS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        16: .line 651
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_FILENAME:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        17: .line 652
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_SCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        18: .line 653
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lorg/jruby/ir/IRScope;

  private void bindingEscapedScopeFlagsCheck();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 659
            aload 0 /* this */
            instanceof org.jruby.ir.IREvalScript
            ifne 1
            aload 0 /* this */
            instanceof org.jruby.ir.IRScriptBody
            ifeq 3
         1: .line 664
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         2: .line 665
            goto 4
         3: .line 666
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         4: .line 668
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ir/IRScope;

  private void calculateClosureScopeFlags();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 672
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getClosures:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 14
      StackMap locals: org.jruby.ir.IRScope top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRClosure
            astore 1 /* cl */
        start local 1 // org.jruby.ir.IRClosure cl
         2: .line 673
            aload 1 /* cl */
            invokevirtual org.jruby.ir.IRClosure.computeScopeFlags:()V
         3: .line 674
            aload 1 /* cl */
            invokevirtual org.jruby.ir.IRClosure.usesEval:()Z
            ifeq 8
         4: .line 675
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 676
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         6: .line 677
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 678
            goto 14
         8: .line 679
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRClosure java.util.Iterator
      StackMap stack:
            aload 1 /* cl */
            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 9
            aload 1 /* cl */
            getfield org.jruby.ir.IRClosure.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 680
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        10: .line 682
      StackMap locals:
      StackMap stack:
            aload 1 /* cl */
            getfield org.jruby.ir.IRClosure.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifne 11
            aload 1 /* cl */
            getfield org.jruby.ir.IRClosure.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 683
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        12: .line 685
      StackMap locals:
      StackMap stack:
            aload 1 /* cl */
            invokevirtual org.jruby.ir.IRClosure.usesZSuper:()Z
            ifeq 14
        13: .line 686
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        end local 1 // org.jruby.ir.IRClosure cl
        14: .line 672
      StackMap locals: org.jruby.ir.IRScope top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        15: .line 690
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/jruby/ir/IRScope;
            2   14     1    cl  Lorg/jruby/ir/IRClosure;

  private void computeNeedsDynamicScopeFlag();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 700
            getstatic org.jruby.ir.IRScope.NEEDS_DYNAMIC_SCOPE_FLAGS:Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: org.jruby.ir.IRScope top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRFlags
            astore 1 /* f */
        start local 1 // org.jruby.ir.IRFlags f
         2: .line 701
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            aload 1 /* f */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 5
         3: .line 702
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REQUIRES_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         4: .line 703
            return
        end local 1 // org.jruby.ir.IRFlags f
         5: .line 700
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 706
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/jruby/ir/IRScope;
            2    5     1     f  Lorg/jruby/ir/IRFlags;

  public void computeScopeFlagsEarly(java.util.List<org.jruby.ir.instructions.Instr>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.util.List instructions
         0: .line 714
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.initScopeFlags:()V
         1: .line 715
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.bindingEscapedScopeFlagsCheck:()V
         2: .line 717
            aload 1 /* instructions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.jruby.ir.IRScope java.util.List top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.instructions.Instr
            astore 2 /* i */
        start local 2 // org.jruby.ir.instructions.Instr i
         4: .line 718
            aload 2 /* i */
            aload 0 /* this */
            invokevirtual org.jruby.ir.instructions.Instr.computeScopeFlags:(Lorg/jruby/ir/IRScope;)Z
            pop
        end local 2 // org.jruby.ir.instructions.Instr i
         5: .line 717
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 721
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.calculateClosureScopeFlags:()V
         7: .line 722
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.computeNeedsDynamicScopeFlag:()V
         8: .line 724
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.FLAGS_COMPUTED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 725
            return
        end local 1 // java.util.List instructions
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/jruby/ir/IRScope;
            0   10     1  instructions  Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;
            4    5     2             i  Lorg/jruby/ir/instructions/Instr;
    Signature: (Ljava/util/List<Lorg/jruby/ir/instructions/Instr;>;)V
    MethodParameters:
              Name  Flags
      instructions  

  public void computeScopeFlags();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 735
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.FLAGS_COMPUTED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            return
         1: .line 737
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.initScopeFlags:()V
         2: .line 738
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.bindingEscapedScopeFlagsCheck:()V
         3: .line 740
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 6
         4: .line 741
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.computeScopeFlagsFromInstructions:()V
         5: .line 742
            goto 7
         6: .line 743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.computeScopeFlagsFromInstructions:()V
         7: .line 746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.calculateClosureScopeFlags:()V
         8: .line 747
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.computeNeedsDynamicScopeFlag:()V
         9: .line 749
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.FLAGS_COMPUTED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        10: .line 750
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/jruby/ir/IRScope;

  public abstract org.jruby.ir.IRScopeType getScopeType();
    descriptor: ()Lorg/jruby/ir/IRScopeType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 756
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]<"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.toStringCompileForm:()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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public java.lang.String toStringCompileForm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 761
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 1
            ldc "optimized"
            goto 3
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 2
            ldc "full"
            goto 3
      StackMap locals:
      StackMap stack:
         2: ldc "startup"
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ir/IRScope;

  public java.lang.String debugOutput();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 765
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.toStringInstrs:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public java.lang.String toStringInstrs();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 769
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnull 2
         1: .line 770
            new java.lang.StringBuilder
            dup
            ldc "Instructions:\n"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.toStringInstrs:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         2: .line 772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            invokevirtual org.jruby.ir.interpreter.InterpreterContext.toStringInstrs:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.Variable getSelf();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 777
            getstatic org.jruby.ir.operands.Self.SELF:Lorg/jruby/ir/operands/Self;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.Variable createCurrentModuleVariable();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 785
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         1: .line 786
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            invokestatic org.jruby.ir.operands.TemporaryCurrentModuleVariable.ModuleVariableFor:(I)Lorg/jruby/ir/operands/TemporaryCurrentModuleVariable;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.Variable createCurrentScopeVariable();
    descriptor: ()Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 792
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         1: .line 793
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            invokestatic org.jruby.ir.operands.TemporaryCurrentScopeVariable.ScopeVariableFor:(I)Lorg/jruby/ir/operands/TemporaryCurrentScopeVariable;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public java.util.Map<org.jruby.RubySymbol, org.jruby.ir.operands.LocalVariable> getLocalVariables();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 801
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/Map<Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/LocalVariable;>;

  public java.util.Set<org.jruby.ir.operands.LocalVariable> getUsedLocalVariables();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 808
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getUsedLocalVariables:()Ljava/util/Set;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
    Signature: ()Ljava/util/Set<Lorg/jruby/ir/operands/LocalVariable;>;

  public void setLocalVariables(java.util.Map<org.jruby.RubySymbol, org.jruby.ir.operands.LocalVariable>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.util.Map variables
         0: .line 816
            aload 0 /* this */
            aload 1 /* variables */
            putfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
         1: .line 817
            return
        end local 1 // java.util.Map variables
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/ir/IRScope;
            0    2     1  variables  Ljava/util/Map<Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/LocalVariable;>;
    Signature: (Ljava/util/Map<Lorg/jruby/RubySymbol;Lorg/jruby/ir/operands/LocalVariable;>;)V
    MethodParameters:
           Name  Flags
      variables  

  public void setNextLabelIndex(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // int index
         0: .line 820
            aload 0 /* this */
            iload 1 /* index */
            putfield org.jruby.ir.IRScope.nextLabelIndex:I
         1: .line 821
            return
        end local 1 // int index
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRScope;
            0    2     1  index  I
    MethodParameters:
       Name  Flags
      index  

  public int getNextLabelIndex();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 824
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nextLabelIndex:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.LocalVariable lookupExistingLVar(org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/RubySymbol;)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.RubySymbol name
         0: .line 828
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.operands.LocalVariable
            areturn
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
            0    1     1  name  Lorg/jruby/RubySymbol;
    MethodParameters:
      Name  Flags
      name  

  protected org.jruby.ir.operands.LocalVariable findExistingLocalVariable(org.jruby.RubySymbol, int);
    descriptor: (Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int depth
         0: .line 832
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ir.operands.LocalVariable
            areturn
        end local 2 // int depth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/ir/IRScope;
            0    1     1   name  Lorg/jruby/RubySymbol;
            0    1     2  depth  I
    MethodParameters:
       Name  Flags
      name   
      depth  

  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=4, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int scopeDepth
         0: .line 841
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* scopeDepth */
            invokevirtual org.jruby.ir.IRScope.findExistingLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 3 /* lvar */
        start local 3 // org.jruby.ir.operands.LocalVariable lvar
         1: .line 842
            aload 3 /* lvar */
            ifnonnull 4
         2: .line 843
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* scopeDepth */
            invokevirtual org.jruby.ir.IRScope.getNewLocalVariable:(Lorg/jruby/RubySymbol;I)Lorg/jruby/ir/operands/LocalVariable;
            astore 3 /* lvar */
         3: .line 844
            goto 6
      StackMap locals: org.jruby.ir.operands.LocalVariable
      StackMap stack:
         4: aload 3 /* lvar */
            invokevirtual org.jruby.ir.operands.LocalVariable.getScopeDepth:()I
            iload 2 /* scopeDepth */
            if_icmpeq 6
         5: .line 845
            aload 3 /* lvar */
            iload 2 /* scopeDepth */
            invokevirtual org.jruby.ir.operands.LocalVariable.cloneForDepth:(I)Lorg/jruby/ir/operands/LocalVariable;
            astore 3 /* lvar */
         6: .line 848
      StackMap locals:
      StackMap stack:
            aload 3 /* lvar */
            areturn
        end local 3 // org.jruby.ir.operands.LocalVariable lvar
        end local 2 // int scopeDepth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/jruby/ir/IRScope;
            0    7     1        name  Lorg/jruby/RubySymbol;
            0    7     2  scopeDepth  I
            1    7     3        lvar  Lorg/jruby/ir/operands/LocalVariable;
    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=6, locals=4, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.RubySymbol name
        start local 2 // int scopeDepth
         0: .line 852
            getstatic org.jruby.ir.IRScope.$assertionsDisabled:Z
            ifne 1
            iload 2 /* scopeDepth */
            ifeq 1
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Scope depth is non-zero for new-var request "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 853
      StackMap locals:
      StackMap stack:
            new org.jruby.ir.operands.LocalVariable
            dup
            aload 1 /* name */
            iload 2 /* scopeDepth */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            aload 1 /* name */
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            invokevirtual org.jruby.parser.StaticScope.addVariable:(Ljava/lang/String;)I
            invokespecial org.jruby.ir.operands.LocalVariable.<init>:(Lorg/jruby/RubySymbol;II)V
            astore 3 /* lvar */
        start local 3 // org.jruby.ir.operands.LocalVariable lvar
         2: .line 854
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            aload 1 /* name */
            aload 3 /* lvar */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 855
            aload 3 /* lvar */
            areturn
        end local 3 // org.jruby.ir.operands.LocalVariable lvar
        end local 2 // int scopeDepth
        end local 1 // org.jruby.RubySymbol name
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/jruby/ir/IRScope;
            0    4     1        name  Lorg/jruby/RubySymbol;
            0    4     2  scopeDepth  I
            2    4     3        lvar  Lorg/jruby/ir/operands/LocalVariable;
    MethodParameters:
            Name  Flags
      name        
      scopeDepth  

  public org.jruby.ir.operands.TemporaryLocalVariable createTemporaryVariable();
    descriptor: ()Lorg/jruby/ir/operands/TemporaryLocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 859
            aload 0 /* this */
            getstatic org.jruby.ir.operands.TemporaryVariableType.LOCAL:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.IRScope.getNewTemporaryVariable:(Lorg/jruby/ir/operands/TemporaryVariableType;)Lorg/jruby/ir/operands/TemporaryLocalVariable;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.TemporaryLocalVariable getNewTemporaryVariableFor(org.jruby.ir.operands.LocalVariable);
    descriptor: (Lorg/jruby/ir/operands/LocalVariable;)Lorg/jruby/ir/operands/TemporaryLocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.operands.LocalVariable var
         0: .line 863
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         1: .line 864
            new org.jruby.ir.operands.TemporaryLocalReplacementVariable
            dup
            aload 1 /* var */
            invokevirtual org.jruby.ir.operands.LocalVariable.getId:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            invokespecial org.jruby.ir.operands.TemporaryLocalReplacementVariable.<init>:(Ljava/lang/String;I)V
            areturn
        end local 1 // org.jruby.ir.operands.LocalVariable var
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;
            0    2     1   var  Lorg/jruby/ir/operands/LocalVariable;
    MethodParameters:
      Name  Flags
      var   

  public org.jruby.ir.operands.TemporaryLocalVariable getNewTemporaryVariable(org.jruby.ir.operands.TemporaryVariableType);
    descriptor: (Lorg/jruby/ir/operands/TemporaryVariableType;)Lorg/jruby/ir/operands/TemporaryLocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.operands.TemporaryVariableType type
         0: .line 868
            invokestatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$operands$TemporaryVariableType:()[I
            aload 1 /* type */
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 7
                    2: 5
                    3: 1
                    4: 3
              default: 9
          }
         1: .line 870
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            dup
            getfield org.jruby.ir.interpreter.FullInterpreterContext.floatVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.interpreter.FullInterpreterContext.floatVariableIndex:I
         2: .line 871
            new org.jruby.ir.operands.TemporaryFloatVariable
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            getfield org.jruby.ir.interpreter.FullInterpreterContext.floatVariableIndex:I
            invokespecial org.jruby.ir.operands.TemporaryFloatVariable.<init>:(I)V
            areturn
         3: .line 874
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            dup
            getfield org.jruby.ir.interpreter.FullInterpreterContext.fixnumVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.interpreter.FullInterpreterContext.fixnumVariableIndex:I
         4: .line 875
            new org.jruby.ir.operands.TemporaryFixnumVariable
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            getfield org.jruby.ir.interpreter.FullInterpreterContext.fixnumVariableIndex:I
            invokespecial org.jruby.ir.operands.TemporaryFixnumVariable.<init>:(I)V
            areturn
         5: .line 878
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            dup
            getfield org.jruby.ir.interpreter.FullInterpreterContext.booleanVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.interpreter.FullInterpreterContext.booleanVariableIndex:I
         6: .line 879
            new org.jruby.ir.operands.TemporaryBooleanVariable
            dup
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            getfield org.jruby.ir.interpreter.FullInterpreterContext.booleanVariableIndex:I
            invokespecial org.jruby.ir.operands.TemporaryBooleanVariable.<init>:(I)V
            areturn
         7: .line 882
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         8: .line 883
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            invokevirtual org.jruby.ir.IRManager.newTemporaryLocalVariable:(I)Lorg/jruby/ir/operands/TemporaryLocalVariable;
            areturn
         9: .line 887
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid temporary variable being alloced in this scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // org.jruby.ir.operands.TemporaryVariableType type
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jruby/ir/IRScope;
            0   10     1  type  Lorg/jruby/ir/operands/TemporaryVariableType;
    MethodParameters:
      Name  Flags
      type  

  public void setTemporaryVariableCount(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // int count
         0: .line 891
            aload 0 /* this */
            iload 1 /* count */
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.temporaryVariableIndex:I
         1: .line 892
            return
        end local 1 // int count
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/ir/IRScope;
            0    2     1  count  I
    MethodParameters:
       Name  Flags
      count  

  public org.jruby.ir.operands.TemporaryLocalVariable getNewUnboxedVariable(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/jruby/ir/operands/TemporaryLocalVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.Class type
         0: .line 896
            aload 1 /* type */
            ldc Lorg/jruby/ir/operands/Float;
            if_acmpne 3
         1: .line 897
            getstatic org.jruby.ir.operands.TemporaryVariableType.FLOAT:Lorg/jruby/ir/operands/TemporaryVariableType;
            astore 2 /* varType */
        start local 2 // org.jruby.ir.operands.TemporaryVariableType varType
         2: .line 898
            goto 10
        end local 2 // org.jruby.ir.operands.TemporaryVariableType varType
      StackMap locals:
      StackMap stack:
         3: aload 1 /* type */
            ldc Lorg/jruby/ir/operands/Fixnum;
            if_acmpne 6
         4: .line 899
            getstatic org.jruby.ir.operands.TemporaryVariableType.FIXNUM:Lorg/jruby/ir/operands/TemporaryVariableType;
            astore 2 /* varType */
        start local 2 // org.jruby.ir.operands.TemporaryVariableType varType
         5: .line 900
            goto 10
        end local 2 // org.jruby.ir.operands.TemporaryVariableType varType
      StackMap locals:
      StackMap stack:
         6: aload 1 /* type */
            ldc Ljava/lang/Boolean;
            if_acmpne 9
         7: .line 901
            getstatic org.jruby.ir.operands.TemporaryVariableType.BOOLEAN:Lorg/jruby/ir/operands/TemporaryVariableType;
            astore 2 /* varType */
        start local 2 // org.jruby.ir.operands.TemporaryVariableType varType
         8: .line 902
            goto 10
        end local 2 // org.jruby.ir.operands.TemporaryVariableType varType
         9: .line 903
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.operands.TemporaryVariableType.LOCAL:Lorg/jruby/ir/operands/TemporaryVariableType;
            astore 2 /* varType */
        start local 2 // org.jruby.ir.operands.TemporaryVariableType varType
        10: .line 905
      StackMap locals: org.jruby.ir.operands.TemporaryVariableType
      StackMap stack:
            aload 0 /* this */
            aload 2 /* varType */
            invokevirtual org.jruby.ir.IRScope.getNewTemporaryVariable:(Lorg/jruby/ir/operands/TemporaryVariableType;)Lorg/jruby/ir/operands/TemporaryLocalVariable;
            areturn
        end local 2 // org.jruby.ir.operands.TemporaryVariableType varType
        end local 1 // java.lang.Class type
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/ir/IRScope;
            0   11     1     type  Ljava/lang/Class;
            2    3     2  varType  Lorg/jruby/ir/operands/TemporaryVariableType;
            5    6     2  varType  Lorg/jruby/ir/operands/TemporaryVariableType;
            8    9     2  varType  Lorg/jruby/ir/operands/TemporaryVariableType;
           10   11     2  varType  Lorg/jruby/ir/operands/TemporaryVariableType;
    MethodParameters:
      Name  Flags
      type  

  public int getTemporaryVariablesCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 909
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.temporaryVariableIndex:I
            iconst_1
            iadd
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.operands.Variable getNewInlineVariable(org.jruby.util.ByteList, org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/util/ByteList;Lorg/jruby/ir/operands/Variable;)Lorg/jruby/ir/operands/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.util.ByteList inlinePrefix
        start local 2 // org.jruby.ir.operands.Variable v
         0: .line 925
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.createTemporaryVariable:()Lorg/jruby/ir/operands/TemporaryLocalVariable;
            areturn
        end local 2 // org.jruby.ir.operands.Variable v
        end local 1 // org.jruby.util.ByteList inlinePrefix
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/jruby/ir/IRScope;
            0    1     1  inlinePrefix  Lorg/jruby/util/ByteList;
            0    1     2             v  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
              Name  Flags
      inlinePrefix  
      v             

  public int getLocalVariablesCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 930
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.localVars:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean usesLocalVariable(org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/ir/operands/Variable;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.operands.Variable v
         0: .line 934
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            aload 1 /* v */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.usesLocalVariable:(Lorg/jruby/ir/operands/Variable;)Z
            ireturn
        end local 1 // org.jruby.ir.operands.Variable v
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
            0    1     1     v  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
      Name  Flags
      v     

  public boolean definesLocalVariable(org.jruby.ir.operands.Variable);
    descriptor: (Lorg/jruby/ir/operands/Variable;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.operands.Variable v
         0: .line 938
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            aload 1 /* v */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.definesLocalVariable:(Lorg/jruby/ir/operands/Variable;)Z
            ireturn
        end local 1 // org.jruby.ir.operands.Variable v
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;
            0    1     1     v  Lorg/jruby/ir/operands/Variable;
    MethodParameters:
      Name  Flags
      v     

  public boolean hasBeenBuilt();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 945
            iconst_1
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.interpreter.FullInterpreterContext getExecutionContext();
    descriptor: ()Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 949
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.interpreter.InterpreterContext getInterpreterContext();
    descriptor: ()Lorg/jruby/ir/interpreter/InterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 953
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.interpreter.FullInterpreterContext getFullInterpreterContext();
    descriptor: ()Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 957
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public org.jruby.ir.interpreter.FullInterpreterContext getOptimizedInterpreterContext();
    descriptor: ()Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 961
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  protected void depends(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.Object obj
         0: .line 965
            getstatic org.jruby.ir.IRScope.$assertionsDisabled:Z
            ifne 1
            aload 1 /* obj */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "Unsatisfied dependency and this depends() was set up wrong.  Use depends(build()) not depends(build)."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 967
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object obj
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;
            0    2     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public void resetState();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 970
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRScope.interpreterContext:Lorg/jruby/ir/interpreter/InterpreterContext;
         1: .line 971
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ir.IRScope.fullInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
         2: .line 974
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.FLAGS_COMPUTED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         3: .line 975
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_CAPTURE_CALLERS_BINDING:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         4: .line 976
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 977
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_EVAL:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         6: .line 978
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 980
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_BREAK_INSTRS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         8: .line 981
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.HAS_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         9: .line 982
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        10: .line 983
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.flags:Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
        11: .line 990
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            astore 1 /* fic */
        start local 1 // org.jruby.ir.interpreter.FullInterpreterContext fic
        12: .line 991
            aload 1 /* fic */
            ifnull 18
        13: .line 992
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        14: .line 993
            goto 17
        15: .line 994
      StackMap locals: org.jruby.ir.interpreter.FullInterpreterContext int
      StackMap stack:
            aload 1 /* fic */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getExecutedPasses:()Ljava/util/List;
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jruby.ir.passes.CompilerPass
            aload 0 /* this */
            invokevirtual org.jruby.ir.passes.CompilerPass.invalidate:(Lorg/jruby/ir/IRScope;)Z
            ifne 17
        16: .line 995
            iinc 2 /* i */ 1
        17: .line 993
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 1 /* fic */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.getExecutedPasses:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 15
        end local 2 // int i
        18: .line 999
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.ir.interpreter.FullInterpreterContext fic
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lorg/jruby/ir/IRScope;
           12   19     1   fic  Lorg/jruby/ir/interpreter/FullInterpreterContext;
           14   18     2     i  I

  private org.jruby.ir.interpreter.FullInterpreterContext inlineFailed(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // java.lang.String reason
         0: .line 1002
            aload 0 /* this */
            aload 1 /* reason */
            putfield org.jruby.ir.IRScope.inlineFailed:Ljava/lang/String;
         1: .line 1003
            aconst_null
            areturn
        end local 1 // java.lang.String reason
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/ir/IRScope;
            0    2     1  reason  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      reason  

  private org.jruby.ir.interpreter.FullInterpreterContext inlineMethodCommon(org.jruby.ir.IRMethod, long, int, boolean);
    descriptor: (Lorg/jruby/ir/IRMethod;JIZ)Lorg/jruby/ir/interpreter/FullInterpreterContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=11, args_size=5
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRMethod methodToInline
        start local 2 // long callsiteId
        start local 4 // int classToken
        start local 5 // boolean cloneHost
         0: .line 1007
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ir.IRScope.alreadyHasInline:Z
         1: .line 1009
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            ifnonnull 2
            aload 0 /* this */
            ldc "inline into startup interpreter scope"
            invokevirtual org.jruby.ir.IRScope.inlineFailed:(Ljava/lang/String;)Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
         2: .line 1021
      StackMap locals:
      StackMap stack:
            aload 1 /* methodToInline */
            invokevirtual org.jruby.ir.IRMethod.getClosures:()Ljava/util/Collection;
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 3
            aload 0 /* this */
            ldc "inline a method which contains nested closures"
            invokevirtual org.jruby.ir.IRScope.inlineFailed:(Ljava/lang/String;)Lorg/jruby/ir/interpreter/FullInterpreterContext;
            areturn
         3: .line 1022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFullInterpreterContext:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.duplicate:()Lorg/jruby/ir/interpreter/FullInterpreterContext;
            astore 6 /* newContext */
        start local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
         4: .line 1023
            aload 6 /* newContext */
            lload 2 /* callsiteId */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.findBasicBlockOf:(J)Lorg/jruby/ir/representations/BasicBlock;
            astore 7 /* basicBlock */
        start local 7 // org.jruby.ir.representations.BasicBlock basicBlock
         5: .line 1024
            aload 7 /* basicBlock */
            lload 2 /* callsiteId */
            invokevirtual org.jruby.ir.representations.BasicBlock.siteOf:(J)Lorg/jruby/ir/instructions/Site;
            checkcast org.jruby.ir.instructions.CallBase
            astore 8 /* call */
        start local 8 // org.jruby.ir.instructions.CallBase call
         6: .line 1025
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.compilable:Lorg/jruby/compiler/Compilable;
            invokeinterface org.jruby.compiler.Compilable.getImplementationClass:()Lorg/jruby/RubyModule;
            astore 9 /* implClass */
        start local 9 // org.jruby.RubyModule implClass
         7: .line 1027
            new org.jruby.ir.transformations.inlining.CFGInliner
            dup
            aload 6 /* newContext */
            invokespecial org.jruby.ir.transformations.inlining.CFGInliner.<init>:(Lorg/jruby/ir/interpreter/FullInterpreterContext;)V
            aload 1 /* methodToInline */
            aload 9 /* implClass */
            iload 4 /* classToken */
            aload 7 /* basicBlock */
            aload 8 /* call */
            iload 5 /* cloneHost */
            invokevirtual org.jruby.ir.transformations.inlining.CFGInliner.inlineMethod:(Lorg/jruby/ir/IRScope;Lorg/jruby/RubyModule;ILorg/jruby/ir/representations/BasicBlock;Lorg/jruby/ir/instructions/CallBase;Z)Ljava/lang/String;
            astore 10 /* error */
        start local 10 // java.lang.String error
         8: .line 1029
            aload 10 /* error */
            ifnonnull 9
            aload 6 /* newContext */
            goto 10
      StackMap locals: org.jruby.ir.IRScope org.jruby.ir.IRMethod long int int org.jruby.ir.interpreter.FullInterpreterContext org.jruby.ir.representations.BasicBlock org.jruby.ir.instructions.CallBase org.jruby.RubyModule java.lang.String
      StackMap stack:
         9: aload 0 /* this */
            aload 10 /* error */
            invokevirtual org.jruby.ir.IRScope.inlineFailed:(Ljava/lang/String;)Lorg/jruby/ir/interpreter/FullInterpreterContext;
      StackMap locals:
      StackMap stack: org.jruby.ir.interpreter.FullInterpreterContext
        10: areturn
        end local 10 // java.lang.String error
        end local 9 // org.jruby.RubyModule implClass
        end local 8 // org.jruby.ir.instructions.CallBase call
        end local 7 // org.jruby.ir.representations.BasicBlock basicBlock
        end local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
        end local 5 // boolean cloneHost
        end local 4 // int classToken
        end local 2 // long callsiteId
        end local 1 // org.jruby.ir.IRMethod methodToInline
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/jruby/ir/IRScope;
            0   11     1  methodToInline  Lorg/jruby/ir/IRMethod;
            0   11     2      callsiteId  J
            0   11     4      classToken  I
            0   11     5       cloneHost  Z
            4   11     6      newContext  Lorg/jruby/ir/interpreter/FullInterpreterContext;
            5   11     7      basicBlock  Lorg/jruby/ir/representations/BasicBlock;
            6   11     8            call  Lorg/jruby/ir/instructions/CallBase;
            7   11     9       implClass  Lorg/jruby/RubyModule;
            8   11    10           error  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      methodToInline  
      callsiteId      
      classToken      
      cloneHost       

  public void inlineMethod(org.jruby.ir.IRMethod, long, int, boolean);
    descriptor: (Lorg/jruby/ir/IRMethod;JIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRMethod methodToInline
        start local 2 // long callsiteId
        start local 4 // int classToken
        start local 5 // boolean cloneHost
         0: .line 1033
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.alreadyHasInline:Z
            ifeq 1
            return
         1: .line 1035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodToInline */
            lload 2 /* callsiteId */
            iload 4 /* classToken */
            iload 5 /* cloneHost */
            invokevirtual org.jruby.ir.IRScope.inlineMethodCommon:(Lorg/jruby/ir/IRMethod;JIZ)Lorg/jruby/ir/interpreter/FullInterpreterContext;
            astore 6 /* newContext */
        start local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
         2: .line 1036
            aload 6 /* newContext */
            ifnonnull 5
         3: .line 1037
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 4
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " failed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.inlineFailed: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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 1038
      StackMap locals: org.jruby.ir.interpreter.FullInterpreterContext
      StackMap stack:
            return
         5: .line 1040
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 6
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " succeeded."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 1042
      StackMap locals:
      StackMap stack:
            aload 6 /* newContext */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.generateInstructionsForInterpretation:()V
         7: .line 1043
            aload 0 /* this */
            aload 6 /* newContext */
            putfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
         8: .line 1045
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getJITCompiler:()Lorg/jruby/compiler/JITCompiler;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.compilable:Lorg/jruby/compiler/Compilable;
            invokevirtual org.jruby.compiler.JITCompiler.getTaskFor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/compiler/Compilable;)Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
         9: .line 1046
            return
        end local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
        end local 5 // boolean cloneHost
        end local 4 // int classToken
        end local 2 // long callsiteId
        end local 1 // org.jruby.ir.IRMethod methodToInline
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lorg/jruby/ir/IRScope;
            0   10     1  methodToInline  Lorg/jruby/ir/IRMethod;
            0   10     2      callsiteId  J
            0   10     4      classToken  I
            0   10     5       cloneHost  Z
            2   10     6      newContext  Lorg/jruby/ir/interpreter/FullInterpreterContext;
    MethodParameters:
                Name  Flags
      methodToInline  
      callsiteId      
      classToken      
      cloneHost       

  public void inlineMethodJIT(org.jruby.ir.IRMethod, long, int, boolean);
    descriptor: (Lorg/jruby/ir/IRMethod;JIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRMethod methodToInline
        start local 2 // long callsiteId
        start local 4 // int classToken
        start local 5 // boolean cloneHost
         0: .line 1049
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.alreadyHasInline:Z
            ifeq 1
            return
         1: .line 1051
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodToInline */
            lload 2 /* callsiteId */
            iload 4 /* classToken */
            iload 5 /* cloneHost */
            invokevirtual org.jruby.ir.IRScope.inlineMethodCommon:(Lorg/jruby/ir/IRMethod;JIZ)Lorg/jruby/ir/interpreter/FullInterpreterContext;
            astore 6 /* newContext */
        start local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
         2: .line 1052
            aload 6 /* newContext */
            ifnonnull 5
         3: .line 1053
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 4
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " failed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.inlineFailed: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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 1054
      StackMap locals: org.jruby.ir.interpreter.FullInterpreterContext
      StackMap stack:
            return
         5: .line 1056
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 6
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " succeeded."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 1061
      StackMap locals:
      StackMap stack:
            aload 6 /* newContext */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.linearizeBasicBlocks:()[Lorg/jruby/ir/representations/BasicBlock;
            pop
         7: .line 1062
            aload 0 /* this */
            aload 6 /* newContext */
            putfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
         8: .line 1064
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getJITCompiler:()Lorg/jruby/compiler/JITCompiler;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.compilable:Lorg/jruby/compiler/Compilable;
            invokevirtual org.jruby.compiler.JITCompiler.getTaskFor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/compiler/Compilable;)Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
         9: .line 1065
            return
        end local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
        end local 5 // boolean cloneHost
        end local 4 // int classToken
        end local 2 // long callsiteId
        end local 1 // org.jruby.ir.IRMethod methodToInline
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lorg/jruby/ir/IRScope;
            0   10     1  methodToInline  Lorg/jruby/ir/IRMethod;
            0   10     2      callsiteId  J
            0   10     4      classToken  I
            0   10     5       cloneHost  Z
            2   10     6      newContext  Lorg/jruby/ir/interpreter/FullInterpreterContext;
    MethodParameters:
                Name  Flags
      methodToInline  
      callsiteId      
      classToken      
      cloneHost       

  public void inlineMethodCompiled(org.jruby.ir.IRMethod, long, int, boolean);
    descriptor: (Lorg/jruby/ir/IRMethod;JIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.IRMethod methodToInline
        start local 2 // long callsiteId
        start local 4 // int classToken
        start local 5 // boolean cloneHost
         0: .line 1068
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.alreadyHasInline:Z
            ifeq 1
            return
         1: .line 1070
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* methodToInline */
            lload 2 /* callsiteId */
            iload 4 /* classToken */
            iload 5 /* cloneHost */
            invokevirtual org.jruby.ir.IRScope.inlineMethodCommon:(Lorg/jruby/ir/IRMethod;JIZ)Lorg/jruby/ir/interpreter/FullInterpreterContext;
            astore 6 /* newContext */
        start local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
         2: .line 1071
            aload 6 /* newContext */
            ifnonnull 5
         3: .line 1072
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 4
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " failed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.inlineFailed: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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 1073
      StackMap locals: org.jruby.ir.interpreter.FullInterpreterContext
      StackMap stack:
            return
         5: .line 1075
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.IRManager.IR_INLINER_VERBOSE:Z
            ifeq 6
            getstatic org.jruby.ir.IRScope.LOG:Lorg/jruby/util/log/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Inline of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* methodToInline */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " succeeded."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.jruby.util.log.Logger.info:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 1080
      StackMap locals:
      StackMap stack:
            aload 6 /* newContext */
            invokevirtual org.jruby.ir.interpreter.FullInterpreterContext.linearizeBasicBlocks:()[Lorg/jruby/ir/representations/BasicBlock;
            pop
         7: .line 1081
            aload 0 /* this */
            aload 6 /* newContext */
            putfield org.jruby.ir.IRScope.optimizedInterpreterContext:Lorg/jruby/ir/interpreter/FullInterpreterContext;
         8: .line 1083
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getJITCompiler:()Lorg/jruby/compiler/JITCompiler;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.manager:Lorg/jruby/ir/IRManager;
            invokevirtual org.jruby.ir.IRManager.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.compilable:Lorg/jruby/compiler/Compilable;
            invokevirtual org.jruby.compiler.JITCompiler.getTaskFor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/compiler/Compilable;)Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
         9: .line 1084
            return
        end local 6 // org.jruby.ir.interpreter.FullInterpreterContext newContext
        end local 5 // boolean cloneHost
        end local 4 // int classToken
        end local 2 // long callsiteId
        end local 1 // org.jruby.ir.IRMethod methodToInline
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lorg/jruby/ir/IRScope;
            0   10     1  methodToInline  Lorg/jruby/ir/IRMethod;
            0   10     2      callsiteId  J
            0   10     4      classToken  I
            0   10     5       cloneHost  Z
            2   10     6      newContext  Lorg/jruby/ir/interpreter/FullInterpreterContext;
    MethodParameters:
                Name  Flags
      methodToInline  
      callsiteId      
      classToken      
      cloneHost       

  public int getNextClosureId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1087
            aload 0 /* this */
            dup
            getfield org.jruby.ir.IRScope.nextClosureIndex:I
            iconst_1
            iadd
            putfield org.jruby.ir.IRScope.nextClosureIndex:I
         1: .line 1089
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.nextClosureIndex:I
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public boolean isModuleBody();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1096
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean isNonSingletonClassBody();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1103
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean isTopLocalVariableScope();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1107
            iconst_1
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean isScriptScope();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1114
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean needsFrame();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1118
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.bindingHasEscaped:()Z
            istore 1 /* bindingHasEscaped */
        start local 1 // boolean bindingHasEscaped
         1: .line 1119
            iload 1 /* bindingHasEscaped */
            ifne 2
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.usesEval:()Z
            ifne 2
            iconst_0
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 2 /* requireFrame */
        start local 2 // boolean requireFrame
         4: .line 1121
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: org.jruby.ir.IRScope int int top java.util.Iterator
      StackMap stack:
         5: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRFlags
            astore 3 /* flag */
        start local 3 // org.jruby.ir.IRFlags flag
         6: .line 1122
            invokestatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$IRFlags:()[I
            aload 3 /* flag */
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iaload
            tableswitch { // 1 - 24
                    1: 7
                    2: 8
                    3: 7
                    4: 8
                    5: 8
                    6: 8
                    7: 8
                    8: 8
                    9: 8
                   10: 8
                   11: 8
                   12: 8
                   13: 8
                   14: 8
                   15: 7
                   16: 7
                   17: 7
                   18: 7
                   19: 7
                   20: 7
                   21: 7
                   22: 7
                   23: 8
                   24: 7
              default: 8
          }
         7: .line 1134
      StackMap locals: org.jruby.ir.IRScope int int org.jruby.ir.IRFlags java.util.Iterator
      StackMap stack:
            iconst_1
            istore 2 /* requireFrame */
        end local 3 // org.jruby.ir.IRFlags flag
         8: .line 1121
      StackMap locals: org.jruby.ir.IRScope int int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 1138
            iload 2 /* requireFrame */
            ireturn
        end local 2 // boolean requireFrame
        end local 1 // boolean bindingHasEscaped
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lorg/jruby/ir/IRScope;
            1   10     1  bindingHasEscaped  Z
            4   10     2       requireFrame  Z
            6    8     3               flag  Lorg/jruby/ir/IRFlags;

  public boolean needsOnlyBackref();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1142
            iconst_0
            istore 1 /* backrefSeen */
        start local 1 // boolean backrefSeen
         1: .line 1143
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: org.jruby.ir.IRScope int top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.ir.IRFlags
            astore 2 /* flag */
        start local 2 // org.jruby.ir.IRFlags flag
         3: .line 1144
            invokestatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$IRFlags:()[I
            aload 2 /* flag */
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iaload
            tableswitch { // 1 - 24
                    1: 4
                    2: 6
                    3: 4
                    4: 6
                    5: 6
                    6: 6
                    7: 6
                    8: 6
                    9: 6
                   10: 6
                   11: 6
                   12: 6
                   13: 6
                   14: 6
                   15: 4
                   16: 4
                   17: 4
                   18: 5
                   19: 4
                   20: 4
                   21: 4
                   22: 4
                   23: 6
                   24: 4
              default: 6
          }
         4: .line 1155
      StackMap locals: org.jruby.ir.IRScope int org.jruby.ir.IRFlags java.util.Iterator
      StackMap stack:
            iconst_0
            ireturn
         5: .line 1157
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* backrefSeen */
        end local 2 // org.jruby.ir.IRFlags flag
         6: .line 1143
      StackMap locals: org.jruby.ir.IRScope int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 1162
            iload 1 /* backrefSeen */
            ireturn
        end local 1 // boolean backrefSeen
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/jruby/ir/IRScope;
            1    8     1  backrefSeen  Z
            3    6     2         flag  Lorg/jruby/ir/IRFlags;

  public boolean reuseParentScope();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1166
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.REUSE_PARENT_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean needsBinding();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1170
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.reuseParentScope:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getFlags:()Ljava/util/EnumSet;
            getstatic org.jruby.ir.IRFlags.DYNSCOPE_ELIMINATED:Lorg/jruby/ir/IRFlags;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ir/IRScope;

  public boolean inliningAllowed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1175
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.alreadyHasInline:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ir/IRScope;

  public void captureParentRefinements(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1184
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.maybeUsingRefinements:()Z
            ifeq 10
         1: .line 1185
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 2 /* cur */
        start local 2 // org.jruby.ir.IRScope cur
         2: goto 9
         3: .line 1186
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 2 /* cur */
            getfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getOverlayModuleForRead:()Lorg/jruby/RubyModule;
            astore 3 /* overlay */
        start local 3 // org.jruby.RubyModule overlay
         4: .line 1187
            aload 3 /* overlay */
            ifnull 8
            aload 3 /* overlay */
            invokevirtual org.jruby.RubyModule.getRefinements:()Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifne 8
         5: .line 1189
            aload 0 /* this */
            getfield org.jruby.ir.IRScope.staticScope:Lorg/jruby/parser/StaticScope;
            aload 1 /* context */
            invokevirtual org.jruby.parser.StaticScope.getOverlayModuleForWrite:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyModule;
            astore 4 /* myOverlay */
        start local 4 // org.jruby.RubyModule myOverlay
         6: .line 1192
            aload 4 /* myOverlay */
            invokevirtual org.jruby.RubyModule.getRefinementsForWrite:()Ljava/util/Map;
            aload 3 /* overlay */
            invokevirtual org.jruby.RubyModule.getRefinements:()Ljava/util/Map;
            invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
         7: .line 1195
            goto 10
        end local 4 // org.jruby.RubyModule myOverlay
        end local 3 // org.jruby.RubyModule overlay
         8: .line 1185
      StackMap locals:
      StackMap stack:
            aload 2 /* cur */
            invokevirtual org.jruby.ir.IRScope.getLexicalParent:()Lorg/jruby/ir/IRScope;
            astore 2 /* cur */
      StackMap locals:
      StackMap stack:
         9: aload 2 /* cur */
            ifnonnull 3
        end local 2 // org.jruby.ir.IRScope cur
        10: .line 1199
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/jruby/ir/IRScope;
            0   11     1    context  Lorg/jruby/runtime/ThreadContext;
            2   10     2        cur  Lorg/jruby/ir/IRScope;
            4    8     3    overlay  Lorg/jruby/RubyModule;
            6    8     4  myOverlay  Lorg/jruby/RubyModule;
    MethodParameters:
         Name  Flags
      context  

  public void cleanupAfterExecution();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1210
            return
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public boolean executesOnce();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.IRScope this
         0: .line 1213
            iconst_0
            ireturn
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/IRScope;

  public void persistScopeHeader(org.jruby.ir.persistence.IRWriterEncoder);
    descriptor: (Lorg/jruby/ir/persistence/IRWriterEncoder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ir.IRScope this
        start local 1 // org.jruby.ir.persistence.IRWriterEncoder file
         0: .line 1217
            getstatic org.jruby.RubyInstanceConfig.IR_WRITING_DEBUG:Z
            ifeq 1
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "IRScopeType = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 1218
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:(Lorg/jruby/ir/IRScopeType;)V
         2: .line 1219
            getstatic org.jruby.RubyInstanceConfig.IR_WRITING_DEBUG:Z
            ifeq 3
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Line # = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         3: .line 1220
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getLine:()I
            invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:(I)V
         4: .line 1221
            getstatic org.jruby.RubyInstanceConfig.IR_WRITING_DEBUG:Z
            ifeq 5
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "# of temp vars = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getTemporaryVariablesCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 1222
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getTemporaryVariablesCount:()I
            invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:(I)V
         6: .line 1223
            aload 1 /* file */
            aload 0 /* this */
            invokevirtual org.jruby.ir.IRScope.getNextLabelIndex:()I
            invokeinterface org.jruby.ir.persistence.IRWriterEncoder.encode:(I)V
         7: .line 1224
            return
        end local 1 // org.jruby.ir.persistence.IRWriterEncoder file
        end local 0 // org.jruby.ir.IRScope this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/jruby/ir/IRScope;
            0    8     1  file  Lorg/jruby/ir/persistence/IRWriterEncoder;
    MethodParameters:
      Name  Flags
      file  

  static int[] $SWITCH_TABLE$org$jruby$ir$operands$TemporaryVariableType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 66
            getstatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$operands$TemporaryVariableType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.ir.operands.TemporaryVariableType.values:()[Lorg/jruby/ir/operands/TemporaryVariableType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.BOOLEAN:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.CLOSURE:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            iconst_5
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.CURRENT_MODULE:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            bipush 6
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.CURRENT_SCOPE:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.FIXNUM:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.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.ir.operands.TemporaryVariableType.FLOAT:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            iconst_3
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.ir.operands.TemporaryVariableType.LOCAL:Lorg/jruby/ir/operands/TemporaryVariableType;
            invokevirtual org.jruby.ir.operands.TemporaryVariableType.ordinal:()I
            iconst_1
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            dup
            putstatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$operands$TemporaryVariableType:[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

  static int[] $SWITCH_TABLE$org$jruby$ir$IRFlags();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 66
            getstatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$IRFlags:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.ir.IRFlags.values:()[Lorg/jruby/ir/IRFlags;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.ir.IRFlags.ACCESS_PARENTS_LOCAL_VARIABLES:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.ir.IRFlags.BINDING_HAS_ESCAPED:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.ir.IRFlags.CAN_CAPTURE_CALLERS_BINDING:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_BREAKS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.ir.IRFlags.CAN_RECEIVE_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            iconst_5
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.ir.IRFlags.CODE_COVERAGE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 29
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.ir.IRFlags.DYNSCOPE_ELIMINATED:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 27
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.ir.IRFlags.FLAGS_COMPUTED:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 30
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.ir.IRFlags.HAS_BREAK_INSTRS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 6
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jruby.ir.IRFlags.HAS_END_BLOCKS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 7
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jruby.ir.IRFlags.HAS_EXPLICIT_CALL_PROTOCOL:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.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.ir.IRFlags.HAS_LOOPS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.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.ir.IRFlags.HAS_NONLOCAL_RETURNS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.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.ir.IRFlags.MAYBE_USING_REFINEMENTS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.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.ir.IRFlags.RECEIVES_CLOSURE_ARG:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 12
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.jruby.ir.IRFlags.RECEIVES_KEYWORD_ARGS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 13
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_BACKREF:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 18
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_BLOCK:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 20
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_CLASS:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 24
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 14
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_FILENAME:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 25
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_LASTLINE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 17
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_LINE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 23
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_METHODNAME:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 22
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_SCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 26
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_SELF:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 21
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic org.jruby.ir.IRFlags.REQUIRES_VISIBILITY:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 19
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic org.jruby.ir.IRFlags.REUSE_PARENT_DYNSCOPE:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 28
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic org.jruby.ir.IRFlags.USES_EVAL:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 15
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic org.jruby.ir.IRFlags.USES_ZSUPER:Lorg/jruby/ir/IRFlags;
            invokevirtual org.jruby.ir.IRFlags.ordinal:()I
            bipush 16
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            dup
            putstatic org.jruby.ir.IRScope.$SWITCH_TABLE$org$jruby$ir$IRFlags:[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
}
SourceFile: "IRScope.java"