public class com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest extends com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest
  super_class: com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest
{
  private static final java.util.regex.Pattern NODE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public org.junit.rules.ExpectedException expectedException;
    descriptor: Lorg/junit/rules/ExpectedException;
    flags: (0x0001) ACC_PUBLIC
    RuntimeVisibleAnnotations: 
      org.junit.Rule()

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 78
            ldc "^S(\\d+)E(\\d+)\\((.*)\\)$"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.NODE_PATTERN:Ljava/util/regex/Pattern;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 77
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.test.polyglot.AbstractPolyglotTest.<init>:()V
         1: .line 80
            aload 0 /* this */
            invokestatic org.junit.rules.ExpectedException.none:()Lorg/junit/rules/ExpectedException;
            putfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
         2: .line 77
            return
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;

  public void setup();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 159
            aload 0 /* this */
            iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
            new com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$1
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$1.<init>:(Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;)V
            invokevirtual com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.setupEnv:(Lorg/graalvm/polyglot/Context;Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;)V
         1: .line 239
            return
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;
    RuntimeVisibleAnnotations: 
      org.junit.Before()

  public void testMultipleMaterializationAssertion();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 243
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc Lorg/graalvm/polyglot/PolyglotException;
            invokevirtual org.junit.rules.ExpectedException.expect:(Ljava/lang/Class;)V
         1: .line 244
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc "java.lang.AssertionError: Node must not be materialized multiple times for the same set of tags!"
            invokevirtual org.junit.rules.ExpectedException.expectMessage:(Ljava/lang/String;)V
         2: .line 245
            ldc "proxyLanguage"
            ldc "S2E0()"
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         3: .line 246
            invokestatic com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.createListener:()Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            astore 2 /* listener */
        start local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
         4: .line 247
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         5: .line 248
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         6: .line 249
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.context:Lorg/graalvm/polyglot/Context;
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
         7: .line 250
            return
        end local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;
            3    8     1    source  Lorg/graalvm/polyglot/Source;
            4    8     2  listener  Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testGradualMaterializationAssertionUncaught();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 259
            ldc "proxyLanguage"
            ldc "S1E2()"
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 260
            invokestatic com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.createListener:()Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            astore 2 /* listener */
        start local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
         2: .line 261
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
         3: .line 262
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
         4: .line 261
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            astore 3 /* binding */
        start local 3 // com.oracle.truffle.api.instrumentation.EventBinding binding
         5: .line 263
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.context:Lorg/graalvm/polyglot/Context;
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
         6: .line 264
            aload 3 /* binding */
            invokevirtual com.oracle.truffle.api.instrumentation.EventBinding.dispose:()V
         7: .line 265
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         8: .line 266
            return
        end local 3 // com.oracle.truffle.api.instrumentation.EventBinding binding
        end local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;
            1    9     1    source  Lorg/graalvm/polyglot/Source;
            2    9     2  listener  Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            5    9     3   binding  Lcom/oracle/truffle/api/instrumentation/EventBinding<Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;>;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testGradualMaterializationAssertionCaught();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 270
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc Ljava/lang/AssertionError;
            invokevirtual org.junit.rules.ExpectedException.expect:(Ljava/lang/Class;)V
         1: .line 271
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc "There should always be some new materialize tag!"
            invokevirtual org.junit.rules.ExpectedException.expectMessage:(Ljava/lang/String;)V
         2: .line 272
            ldc "proxyLanguage"
            ldc "S1E2()"
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         3: .line 273
            invokestatic com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.createListener:()Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            astore 2 /* listener */
        start local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
         4: .line 279
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.context:Lorg/graalvm/polyglot/Context;
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
         5: .line 280
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
         6: .line 281
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
         7: .line 280
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            astore 3 /* binding */
        start local 3 // com.oracle.truffle.api.instrumentation.EventBinding binding
         8: .line 282
            aload 3 /* binding */
            invokevirtual com.oracle.truffle.api.instrumentation.EventBinding.dispose:()V
         9: .line 283
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
        10: .line 284
            return
        end local 3 // com.oracle.truffle.api.instrumentation.EventBinding binding
        end local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;
            3   11     1    source  Lorg/graalvm/polyglot/Source;
            4   11     2  listener  Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            8   11     3   binding  Lcom/oracle/truffle/api/instrumentation/EventBinding<Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;>;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testNewTreeMaterializationAssertion();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
         0: .line 288
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc Lorg/graalvm/polyglot/PolyglotException;
            invokevirtual org.junit.rules.ExpectedException.expect:(Ljava/lang/Class;)V
         1: .line 289
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.expectedException:Lorg/junit/rules/ExpectedException;
            ldc "java.lang.AssertionError: New tree should be fully materialized!"
            invokevirtual org.junit.rules.ExpectedException.expectMessage:(Ljava/lang/String;)V
         2: .line 290
            ldc "proxyLanguage"
            ldc "S1E0(S1E0())"
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         3: .line 291
            invokestatic com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.createListener:()Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
            astore 2 /* listener */
        start local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
         4: .line 292
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.instrumentEnv:Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
            aload 2 /* listener */
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         5: .line 293
            aload 0 /* this */
            getfield com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest.context:Lorg/graalvm/polyglot/Context;
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
         6: .line 294
            return
        end local 2 // com.oracle.truffle.api.instrumentation.ExecutionEventListener listener
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/oracle/truffle/api/instrumentation/test/MaterializationAssertionsViolationTest;
            3    7     1    source  Lorg/graalvm/polyglot/Source;
            4    7     2  listener  Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  private static com.oracle.truffle.api.instrumentation.ExecutionEventListener createListener();
    descriptor: ()Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 297
            new com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$2
            dup
            invokespecial com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$2.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "MaterializationAssertionsViolationTest.java"
NestMembers:
  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$1  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$1$1  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$2  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$CustomMaterializeNode
InnerClasses:
  public final Builder = com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder of com.oracle.truffle.api.instrumentation.SourceSectionFilter
  public final ExpressionTag = com.oracle.truffle.api.instrumentation.StandardTags$ExpressionTag of com.oracle.truffle.api.instrumentation.StandardTags
  public final StatementTag = com.oracle.truffle.api.instrumentation.StandardTags$StatementTag of com.oracle.truffle.api.instrumentation.StandardTags
  public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument
  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$1
  com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$2
  CustomMaterializeNode = com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest$CustomMaterializeNode of com.oracle.truffle.api.instrumentation.test.MaterializationAssertionsViolationTest