public class com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument extends com.oracle.truffle.api.instrumentation.TruffleInstrument
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument
  super_class: com.oracle.truffle.api.instrumentation.TruffleInstrument
{
  public static final java.lang.String ID;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GR22048Instrument"

  private final org.graalvm.polyglot.Context context;
    descriptor: Lorg/graalvm/polyglot/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument this
         0: .line 115
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.instrumentation.TruffleInstrument.<init>:()V
         1: .line 116
            aload 0 /* this */
            getstatic com.oracle.truffle.js.test.instrumentation.GR22048.contextTL:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Context
            putfield com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument.context:Lorg/graalvm/polyglot/Context;
         2: .line 117
            return
        end local 0 // com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument;

  protected void onCreate(com.oracle.truffle.api.instrumentation.TruffleInstrument$Env);
    descriptor: (Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument this
        start local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
         0: .line 121
            aload 1 /* env */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.registerService:(Ljava/lang/Object;)V
         1: .line 123
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            getstatic com.oracle.truffle.api.instrumentation.SourceFilter.ANY:Lcom/oracle/truffle/api/instrumentation/SourceFilter;
            invokedynamic onLoad()Lcom/oracle/truffle/api/instrumentation/LoadSourceListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/instrumentation/LoadSourceEvent;)V
                  com/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument.lambda$0(Lcom/oracle/truffle/api/instrumentation/LoadSourceEvent;)V (6)
                  (Lcom/oracle/truffle/api/instrumentation/LoadSourceEvent;)V
         2: .line 124
            iconst_0
         3: .line 123
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachLoadSourceListener:(Lcom/oracle/truffle/api/instrumentation/SourceFilter;Lcom/oracle/truffle/api/instrumentation/LoadSourceListener;Z)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         4: .line 126
            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$RootTag;
            aastore
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
            new com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument$1
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument$1.<init>:(Lcom/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument;)V
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.rootNameIs:(Ljava/util/function/Predicate;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
         5: .line 155
            invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
         6: .line 126
            astore 2 /* sourceSectionFilter */
        start local 2 // com.oracle.truffle.api.instrumentation.SourceSectionFilter sourceSectionFilter
         7: .line 156
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
            aload 2 /* sourceSectionFilter */
            invokedynamic create()Lcom/oracle/truffle/api/instrumentation/ExecutionEventNodeFactory;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/instrumentation/EventContext;)Lcom/oracle/truffle/api/instrumentation/ExecutionEventNode;
                  com/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument.lambda$1(Lcom/oracle/truffle/api/instrumentation/EventContext;)Lcom/oracle/truffle/api/instrumentation/ExecutionEventNode; (6)
                  (Lcom/oracle/truffle/api/instrumentation/EventContext;)Lcom/oracle/truffle/api/instrumentation/ExecutionEventNode;
            invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventFactory:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventNodeFactory;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
            pop
         8: .line 157
            return
        end local 2 // com.oracle.truffle.api.instrumentation.SourceSectionFilter sourceSectionFilter
        end local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
        end local 0 // com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    9     0                 this  Lcom/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument;
            0    9     1                  env  Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
            7    9     2  sourceSectionFilter  Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
    MethodParameters:
      Name  Flags
      env   

  private static void lambda$0(com.oracle.truffle.api.instrumentation.LoadSourceEvent);
    descriptor: (Lcom/oracle/truffle/api/instrumentation/LoadSourceEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.LoadSourceEvent event
         0: .line 124
            return
        end local 0 // com.oracle.truffle.api.instrumentation.LoadSourceEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  event  Lcom/oracle/truffle/api/instrumentation/LoadSourceEvent;

  private static com.oracle.truffle.api.instrumentation.ExecutionEventNode lambda$1(com.oracle.truffle.api.instrumentation.EventContext);
    descriptor: (Lcom/oracle/truffle/api/instrumentation/EventContext;)Lcom/oracle/truffle/api/instrumentation/ExecutionEventNode;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.EventContext ec
         0: .line 156
            aconst_null
            areturn
        end local 0 // com.oracle.truffle.api.instrumentation.EventContext ec
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ec  Lcom/oracle/truffle/api/instrumentation/EventContext;
}
SourceFile: "GR22048.java"
NestHost: com.oracle.truffle.js.test.instrumentation.GR22048
InnerClasses:
  public final Builder = com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder of com.oracle.truffle.api.instrumentation.SourceSectionFilter
  public final RootTag = com.oracle.truffle.api.instrumentation.StandardTags$RootTag of com.oracle.truffle.api.instrumentation.StandardTags
  public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument
  public abstract Registration = com.oracle.truffle.api.instrumentation.TruffleInstrument$Registration of com.oracle.truffle.api.instrumentation.TruffleInstrument
  public GR22048Instrument = com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument of com.oracle.truffle.js.test.instrumentation.GR22048
  com.oracle.truffle.js.test.instrumentation.GR22048$GR22048Instrument$1
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.instrumentation.TruffleInstrument$Registration(id = "GR22048Instrument", services = {Lcom/oracle/truffle/js/test/instrumentation/GR22048$GR22048Instrument;})