public abstract class com.oracle.truffle.js.nodes.control.AbstractBlockNode extends com.oracle.truffle.js.nodes.control.StatementNode implements com.oracle.truffle.js.nodes.control.SequenceNode, com.oracle.truffle.api.nodes.BlockNode$ElementExecutor<com.oracle.truffle.js.nodes.JavaScriptNode>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.js.nodes.control.AbstractBlockNode
  super_class: com.oracle.truffle.js.nodes.control.StatementNode
{
  protected com.oracle.truffle.api.nodes.BlockNode<com.oracle.truffle.js.nodes.JavaScriptNode> block;
    descriptor: Lcom/oracle/truffle/api/nodes/BlockNode;
    flags: (0x0004) ACC_PROTECTED
    Signature: Lcom/oracle/truffle/api/nodes/BlockNode<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.nodes.Node$Child()

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 56
            ldc Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            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 com.oracle.truffle.js.nodes.control.AbstractBlockNode.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(com.oracle.truffle.js.nodes.JavaScriptNode[]);
    descriptor: ([Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
        start local 1 // com.oracle.truffle.js.nodes.JavaScriptNode[] statements
         0: .line 59
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.nodes.control.StatementNode.<init>:()V
         1: .line 60
            aload 0 /* this */
            aload 1 /* statements */
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.nodes.BlockNode.create:([Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/BlockNode$ElementExecutor;)Lcom/oracle/truffle/api/nodes/BlockNode;
            putfield com.oracle.truffle.js.nodes.control.AbstractBlockNode.block:Lcom/oracle/truffle/api/nodes/BlockNode;
         2: .line 61
            return
        end local 1 // com.oracle.truffle.js.nodes.JavaScriptNode[] statements
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            0    3     1  statements  [Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    MethodParameters:
            Name  Flags
      statements  

  public final com.oracle.truffle.js.nodes.JavaScriptNode[] getStatements();
    descriptor: ()[Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
         0: .line 65
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.control.AbstractBlockNode.block:Lcom/oracle/truffle/api/nodes/BlockNode;
            invokevirtual com.oracle.truffle.api.nodes.BlockNode.getElements:()[Lcom/oracle/truffle/api/nodes/Node;
            checkcast com.oracle.truffle.js.nodes.JavaScriptNode[]
            areturn
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;

  public void executeVoid(com.oracle.truffle.api.frame.VirtualFrame);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
        start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
         0: .line 70
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.control.AbstractBlockNode.block:Lcom/oracle/truffle/api/nodes/BlockNode;
            aload 1 /* frame */
            iconst_0
            invokevirtual com.oracle.truffle.api.nodes.BlockNode.executeVoid:(Lcom/oracle/truffle/api/frame/VirtualFrame;I)V
         1: .line 71
            return
        end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            0    2     1  frame  Lcom/oracle/truffle/api/frame/VirtualFrame;
    MethodParameters:
       Name  Flags
      frame  

  public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
        start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
         0: .line 75
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.control.AbstractBlockNode.block:Lcom/oracle/truffle/api/nodes/BlockNode;
            aload 1 /* frame */
            iconst_0
            invokevirtual com.oracle.truffle.api.nodes.BlockNode.executeGeneric:(Lcom/oracle/truffle/api/frame/VirtualFrame;I)Ljava/lang/Object;
            areturn
        end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            0    1     1  frame  Lcom/oracle/truffle/api/frame/VirtualFrame;
    MethodParameters:
       Name  Flags
      frame  

  public void executeVoid(com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.js.nodes.JavaScriptNode, int, int);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
        start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        start local 2 // com.oracle.truffle.js.nodes.JavaScriptNode node
        start local 3 // int index
        start local 4 // int argument
         0: .line 80
            aload 2 /* node */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeVoid:(Lcom/oracle/truffle/api/frame/VirtualFrame;)V
         1: .line 81
            return
        end local 4 // int argument
        end local 3 // int index
        end local 2 // com.oracle.truffle.js.nodes.JavaScriptNode node
        end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            0    2     1     frame  Lcom/oracle/truffle/api/frame/VirtualFrame;
            0    2     2      node  Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            0    2     3     index  I
            0    2     4  argument  I
    MethodParameters:
          Name  Flags
      frame     
      node      
      index     
      argument  

  public java.lang.Object executeGeneric(com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.js.nodes.JavaScriptNode, int, int);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
        start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        start local 2 // com.oracle.truffle.js.nodes.JavaScriptNode node
        start local 3 // int index
        start local 4 // int argument
         0: .line 85
            aload 2 /* node */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
            areturn
        end local 4 // int argument
        end local 3 // int index
        end local 2 // com.oracle.truffle.js.nodes.JavaScriptNode node
        end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        end local 0 // com.oracle.truffle.js.nodes.control.AbstractBlockNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/js/nodes/control/AbstractBlockNode;
            0    1     1     frame  Lcom/oracle/truffle/api/frame/VirtualFrame;
            0    1     2      node  Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            0    1     3     index  I
            0    1     4  argument  I
    MethodParameters:
          Name  Flags
      frame     
      node      
      index     
      argument  

  protected static com.oracle.truffle.js.nodes.JavaScriptNode filterStatements(com.oracle.truffle.js.nodes.JavaScriptNode[], boolean);
    descriptor: ([Lcom/oracle/truffle/js/nodes/JavaScriptNode;Z)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.JavaScriptNode[] originalStatements
        start local 1 // boolean exprBlock
         0: .line 94
            aconst_null
            astore 2 /* filteredStatements */
        start local 2 // java.util.ArrayList filteredStatements
         1: .line 95
            iload 1 /* exprBlock */
            istore 3 /* returnExprBlock */
        start local 3 // boolean returnExprBlock
         2: .line 96
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 24
         4: .line 97
      StackMap locals: java.util.ArrayList int int
      StackMap stack:
            aload 0 /* originalStatements */
            iload 4 /* i */
            aaload
            astore 5 /* statement */
        start local 5 // com.oracle.truffle.js.nodes.JavaScriptNode statement
         5: .line 98
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.EmptyNode
            ifne 6
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.AbstractBlockNode
            ifne 6
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.DiscardResultNode
            ifne 6
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.access.JSConstantNode$JSConstantUndefinedNode
            ifeq 21
         6: .line 99
      StackMap locals: com.oracle.truffle.js.nodes.JavaScriptNode
      StackMap stack:
            aload 5 /* statement */
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$RootBodyTag;
            invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasTag:(Ljava/lang/Class;)Z
            ifne 21
         7: .line 100
            aload 2 /* filteredStatements */
            ifnonnull 9
         8: .line 101
            aload 0 /* originalStatements */
            iconst_0
            iload 4 /* i */
            invokestatic com.oracle.truffle.js.nodes.control.AbstractBlockNode.newListFromRange:([Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)Ljava/util/ArrayList;
            astore 2 /* filteredStatements */
         9: .line 103
      StackMap locals:
      StackMap stack:
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.AbstractBlockNode
            ifeq 12
        10: .line 104
            aload 2 /* filteredStatements */
            aload 5 /* statement */
            checkcast com.oracle.truffle.js.nodes.control.AbstractBlockNode
            invokevirtual com.oracle.truffle.js.nodes.control.AbstractBlockNode.getStatements:()[Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 105
            goto 18
      StackMap locals:
      StackMap stack:
        12: aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.DiscardResultNode
            ifeq 17
        13: .line 106
            aload 5 /* statement */
            checkcast com.oracle.truffle.js.nodes.control.DiscardResultNode
            astore 6 /* voidNode */
        start local 6 // com.oracle.truffle.js.nodes.control.DiscardResultNode voidNode
        14: .line 107
            aload 2 /* filteredStatements */
            aload 6 /* voidNode */
            invokevirtual com.oracle.truffle.js.nodes.control.DiscardResultNode.getOperand:()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        15: .line 108
            aload 5 /* statement */
            aload 6 /* voidNode */
            invokevirtual com.oracle.truffle.js.nodes.control.DiscardResultNode.getOperand:()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            invokestatic com.oracle.truffle.js.nodes.control.AbstractBlockNode.transferSourceSectionAndTags:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
        end local 6 // com.oracle.truffle.js.nodes.control.DiscardResultNode voidNode
        16: .line 109
            goto 18
        17: .line 110
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.truffle.js.nodes.control.AbstractBlockNode.$assertionsDisabled:Z
            ifne 18
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.EmptyNode
            ifne 18
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.access.JSConstantNode$JSConstantUndefinedNode
            ifne 18
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        18: .line 112
      StackMap locals:
      StackMap stack:
            iload 1 /* exprBlock */
            ifeq 23
            iload 4 /* i */
            aload 0 /* originalStatements */
            arraylength
            iconst_1
            isub
            if_icmpne 23
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.ExprBlockNode
            ifne 23
            aload 5 /* statement */
            instanceof com.oracle.truffle.js.nodes.control.EmptyNode
            ifne 23
        19: .line 114
            iconst_0
            istore 3 /* returnExprBlock */
        20: .line 116
            goto 23
        21: .line 117
      StackMap locals:
      StackMap stack:
            aload 2 /* filteredStatements */
            ifnull 23
        22: .line 118
            aload 2 /* filteredStatements */
            aload 5 /* statement */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // com.oracle.truffle.js.nodes.JavaScriptNode statement
        23: .line 96
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 4 /* i */
            aload 0 /* originalStatements */
            arraylength
            if_icmplt 4
        end local 4 // int i
        25: .line 123
            aload 2 /* filteredStatements */
            ifnonnull 26
            aload 0 /* originalStatements */
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 2 /* filteredStatements */
            aload 2 /* filteredStatements */
            invokevirtual java.util.ArrayList.size:()I
            anewarray com.oracle.truffle.js.nodes.JavaScriptNode
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.oracle.truffle.js.nodes.JavaScriptNode[]
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.nodes.JavaScriptNode[]
        27: astore 4 /* finalStatements */
        start local 4 // com.oracle.truffle.js.nodes.JavaScriptNode[] finalStatements
        28: .line 125
            iload 3 /* returnExprBlock */
            ifeq 36
        29: .line 126
            aload 4 /* finalStatements */
            arraylength
            ifne 31
        30: .line 127
            invokestatic com.oracle.truffle.js.nodes.control.EmptyNode.create:()Lcom/oracle/truffle/js/nodes/control/EmptyNode;
            areturn
        31: .line 128
      StackMap locals: com.oracle.truffle.js.nodes.JavaScriptNode[]
      StackMap stack:
            aload 4 /* finalStatements */
            arraylength
            iconst_1
            if_icmpne 33
        32: .line 129
            aload 4 /* finalStatements */
            iconst_0
            aaload
            areturn
        33: .line 130
      StackMap locals:
      StackMap stack:
            aload 4 /* finalStatements */
            arraylength
            iconst_2
            if_icmpne 35
        34: .line 131
            aload 4 /* finalStatements */
            iconst_0
            aaload
            aload 4 /* finalStatements */
            iconst_1
            aaload
            invokestatic com.oracle.truffle.js.nodes.binary.DualNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            areturn
        35: .line 133
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.js.nodes.control.ExprBlockNode
            dup
            aload 4 /* finalStatements */
            invokespecial com.oracle.truffle.js.nodes.control.ExprBlockNode.<init>:([Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
            areturn
        36: .line 136
      StackMap locals:
      StackMap stack:
            aload 4 /* finalStatements */
            arraylength
            ifne 38
        37: .line 137
            invokestatic com.oracle.truffle.js.nodes.control.EmptyNode.create:()Lcom/oracle/truffle/js/nodes/control/EmptyNode;
            areturn
        38: .line 138
      StackMap locals:
      StackMap stack:
            aload 4 /* finalStatements */
            arraylength
            iconst_1
            if_icmpne 40
        39: .line 139
            aload 4 /* finalStatements */
            iconst_0
            aaload
            invokestatic com.oracle.truffle.js.nodes.control.DiscardResultNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            areturn
        40: .line 141
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.js.nodes.control.VoidBlockNode
            dup
            aload 4 /* finalStatements */
            invokespecial com.oracle.truffle.js.nodes.control.VoidBlockNode.<init>:([Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
            areturn
        end local 4 // com.oracle.truffle.js.nodes.JavaScriptNode[] finalStatements
        end local 3 // boolean returnExprBlock
        end local 2 // java.util.ArrayList filteredStatements
        end local 1 // boolean exprBlock
        end local 0 // com.oracle.truffle.js.nodes.JavaScriptNode[] originalStatements
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   41     0  originalStatements  [Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            0   41     1           exprBlock  Z
            1   41     2  filteredStatements  Ljava/util/ArrayList<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
            2   41     3     returnExprBlock  Z
            3   25     4                   i  I
            5   23     5           statement  Lcom/oracle/truffle/js/nodes/JavaScriptNode;
           14   16     6            voidNode  Lcom/oracle/truffle/js/nodes/control/DiscardResultNode;
           28   41     4     finalStatements  [Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    MethodParameters:
                    Name  Flags
      originalStatements  
      exprBlock           

  protected static java.util.ArrayList<com.oracle.truffle.js.nodes.JavaScriptNode> newListFromRange(com.oracle.truffle.js.nodes.JavaScriptNode[], int, int);
    descriptor: ([Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)Ljava/util/ArrayList;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.JavaScriptNode[] statements
        start local 1 // int from
        start local 2 // int to
         0: .line 147
            new java.util.ArrayList
            dup
            aload 0 /* statements */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            iload 1 /* from */
            iload 2 /* to */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            areturn
        end local 2 // int to
        end local 1 // int from
        end local 0 // com.oracle.truffle.js.nodes.JavaScriptNode[] statements
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  statements  [Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            0    1     1        from  I
            0    1     2          to  I
    Signature: ([Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)Ljava/util/ArrayList<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
    MethodParameters:
            Name  Flags
      statements  
      from        
      to          

  public java.lang.Object executeGeneric(com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.api.nodes.Node, int, int);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/api/nodes/Node;II)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast com.oracle.truffle.js.nodes.JavaScriptNode
            iload 3
            iload 4
            invokevirtual com.oracle.truffle.js.nodes.control.AbstractBlockNode.executeGeneric:(Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)Ljava/lang/Object;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void executeVoid(com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.api.nodes.Node, int, int);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/api/nodes/Node;II)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast com.oracle.truffle.js.nodes.JavaScriptNode
            iload 3
            iload 4
            invokevirtual com.oracle.truffle.js.nodes.control.AbstractBlockNode.executeVoid:(Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/truffle/js/nodes/JavaScriptNode;II)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lcom/oracle/truffle/js/nodes/control/StatementNode;Lcom/oracle/truffle/js/nodes/control/SequenceNode;Lcom/oracle/truffle/api/nodes/BlockNode$ElementExecutor<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
SourceFile: "AbstractBlockNode.java"
InnerClasses:
  public final RootBodyTag = com.oracle.truffle.api.instrumentation.StandardTags$RootBodyTag of com.oracle.truffle.api.instrumentation.StandardTags
  public abstract ElementExecutor = com.oracle.truffle.api.nodes.BlockNode$ElementExecutor of com.oracle.truffle.api.nodes.BlockNode
  public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
  public final JSConstantUndefinedNode = com.oracle.truffle.js.nodes.access.JSConstantNode$JSConstantUndefinedNode of com.oracle.truffle.js.nodes.access.JSConstantNode
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.nodes.NodeInfo(cost = com.oracle.truffle.api.nodes.NodeCost.NONE:Lcom/oracle/truffle/api/nodes/NodeCost;)