public class com.oracle.truffle.js.runtime.JSContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.js.runtime.JSContext
  super_class: java.lang.Object
{
  private final com.oracle.truffle.js.runtime.Evaluator evaluator;
    descriptor: Lcom/oracle/truffle/js/runtime/Evaluator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.lang.JavaScriptLanguage language;
    descriptor: Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.api.TruffleLanguage$Env truffleLanguageEnv;
    descriptor: Lcom/oracle/truffle/api/TruffleLanguage$Env;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.object.Shape emptyShape;
    descriptor: Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.object.Shape emptyShapePrototypeInObject;
    descriptor: Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.object.Shape promiseShapePrototypeInObject;
    descriptor: Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.object.Shape globalScopeShape;
    descriptor: Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.Object embedderData;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption noSuchPropertyUnusedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.Assumption noSuchMethodUnusedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.Assumption arrayPrototypeNoElementsAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.Assumption fastArrayAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.Assumption fastArgumentsObjectAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.api.Assumption typedArrayNotDetachedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal()

  private final com.oracle.truffle.api.Assumption regExpStaticResultUnusedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile java.util.Map<java.lang.String, com.oracle.truffle.js.runtime.Symbol> symbolRegistry;
    descriptor: Ljava/util/Map;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/js/runtime/Symbol;>;

  private final java.lang.Object nodeFactory;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.util.TimeProfiler timeProfiler;
    descriptor: Lcom/oracle/truffle/js/runtime/util/TimeProfiler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory$BoundProto moduleNamespaceFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$BoundProto;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.Object regexEngine;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal()

  private java.lang.Object tRegexEmptyResult;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal()

  private final com.oracle.truffle.api.object.Shape regExpGroupsEmptyShape;
    descriptor: Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.js.runtime.PrepareStackTraceCallback prepareStackTraceCallback;
    descriptor: Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption prepareStackTraceCallbackNotUsedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.js.runtime.PromiseRejectionTracker promiseRejectionTracker;
    descriptor: Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption promiseRejectionTrackerNotUsedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.js.runtime.PromiseHook promiseHook;
    descriptor: Lcom/oracle/truffle/js/runtime/PromiseHook;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption promiseHookNotUsedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.js.runtime.ImportMetaInitializer importMetaInitializer;
    descriptor: Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption importMetaInitializerNotUsedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.js.runtime.ImportModuleDynamicallyCallback importModuleDynamicallyCallback;
    descriptor: Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.truffle.api.Assumption importModuleDynamicallyCallbackNotUsedAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.CallTarget emptyFunctionCallTarget;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.CallTarget speciesGetterFunctionCallTarget;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile com.oracle.truffle.api.CallTarget notConstructibleCallTargetCache;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.oracle.truffle.api.CallTarget generatorNotConstructibleCallTargetCache;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.oracle.truffle.api.CallTarget boundFunctionCallTargetCache;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.oracle.truffle.api.CallTarget boundFunctionConstructTargetCache;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.oracle.truffle.api.CallTarget boundFunctionConstructNewTargetCache;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionData[] builtinFunctionData;
    descriptor: [Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal(dimensions = 1)

  private volatile com.oracle.truffle.js.runtime.builtins.JSFunctionData boundFunctionData;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.oracle.truffle.js.runtime.builtins.JSFunctionData boundConstructorFunctionData;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  final com.oracle.truffle.js.runtime.builtins.JSFunctionData throwerFunctionData;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.js.runtime.builtins.JSFunctionData protoGetterFunctionData;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.js.runtime.builtins.JSFunctionData protoSetterFunctionData;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0010) ACC_FINAL

  private java.util.Map<com.oracle.truffle.api.object.Shape, com.oracle.truffle.js.runtime.objects.JSShapeData> shapeDataMap;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/js/runtime/objects/JSShapeData;>;

  final com.oracle.truffle.api.Assumption noChildRealmsAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0010) ACC_FINAL

  private final com.oracle.truffle.api.Assumption singleRealmAssumption;
    descriptor: Lcom/oracle/truffle/api/Assumption;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean isMultiContext;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.atomic.AtomicInteger realmInit;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final int REALM_UNINITIALIZED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int REALM_INITIALIZING;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int REALM_INITIALIZED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private final com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.js.runtime.JSRealm> contextRef;
    descriptor: Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/js/runtime/JSRealm;>;

  private com.oracle.truffle.api.instrumentation.AllocationReporter allocationReporter;
    descriptor: Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal()

  private final com.oracle.truffle.js.runtime.JSContextOptions contextOptions;
    descriptor: Lcom/oracle/truffle/js/runtime/JSContextOptions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<com.oracle.truffle.js.runtime.builtins.Builtin, com.oracle.truffle.js.runtime.builtins.JSFunctionData> builtinFunctionDataMap;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lcom/oracle/truffle/js/runtime/builtins/Builtin;Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;>;

  private final com.oracle.truffle.js.runtime.objects.JSPrototypeData nullPrototypeData;
    descriptor: Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.objects.JSPrototypeData inObjectPrototypeData;
    descriptor: Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory functionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory constructorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory strictFunctionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory strictConstructorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory generatorFunctionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory asyncFunctionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory asyncGeneratorFunctionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSFunctionFactory boundFunctionFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final com.oracle.truffle.js.runtime.builtins.PrototypeSupplier functionPrototypeSupplier;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final com.oracle.truffle.js.runtime.builtins.PrototypeSupplier asyncFunctionPrototypeSupplier;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final com.oracle.truffle.js.runtime.builtins.PrototypeSupplier generatorFunctionPrototypeSupplier;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final com.oracle.truffle.js.runtime.builtins.PrototypeSupplier asyncGeneratorFunctionPrototypeSupplier;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory ordinaryObjectFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory arrayFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory lazyRegexArrayFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory lazyRegexIndicesArrayFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory booleanFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory numberFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory bigIntFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory stringFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory regExpFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory dateFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory nonStrictArgumentsFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory strictArgumentsFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory callSiteFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory[] errorObjectFactories;
    descriptor: [Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal(dimensions = 1)

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory symbolFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory mapFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory setFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory weakRefFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory weakMapFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory weakSetFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory proxyFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory promiseFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory dataViewFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory arrayBufferFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory directArrayBufferFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory sharedArrayBufferFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory finalizationRegistryFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory[] typedArrayFactories;
    descriptor: [Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal(dimensions = 1)

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory enumerateIteratorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory forInIteratorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory generatorObjectFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory asyncGeneratorObjectFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory asyncFromSyncIteratorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory collatorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory numberFormatFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory pluralRulesFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory dateTimeFormatFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory listFormatFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory relativeTimeFormatFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory segmenterFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory segmentIteratorFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory displayNamesFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory localeFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory javaImporterFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory javaPackageFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory jsAdapterFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory dictionaryObjectFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.builtins.JSObjectFactory globalObjectFactory;
    descriptor: Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private java.util.Locale locale;
    descriptor: Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$CompilationFinal()

  private final com.oracle.truffle.js.runtime.objects.PropertyProxy argumentsPropertyProxy;
    descriptor: Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.objects.PropertyProxy callerPropertyProxy;
    descriptor: Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.js.runtime.JSContext$SharedRootNode sharedRootNode;
    descriptor: Lcom/oracle/truffle/js/runtime/JSContext$SharedRootNode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.lang.String REGEX_LANGUAGE_ID;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "regex"

  private static final java.lang.String REGEX_OPTION_U180E_WHITESPACE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "U180EWhitespace"

  private static final java.lang.String REGEX_OPTION_REGRESSION_TEST_MODE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "RegressionTestMode"

  private static final java.lang.String REGEX_OPTION_DUMP_AUTOMATA;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DumpAutomata"

  private static final java.lang.String REGEX_OPTION_STEP_EXECUTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "StepExecution"

  private static final java.lang.String REGEX_OPTION_ALWAYS_EAGER;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "AlwaysEager"

  private static final java.lang.String REGEX_OPTION_FEATURE_SET_TREGEX_JONI;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FeatureSet=TRegexJoni"

  private com.oracle.truffle.api.object.DynamicObject parentPromise;
    descriptor: Lcom/oracle/truffle/api/object/DynamicObject;
    flags: (0x0002) ACC_PRIVATE

  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 139
            ldc Lcom/oracle/truffle/js/runtime/JSContext;
            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.runtime.JSContext.$assertionsDisabled:Z
         3: .line 339
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getFunctionPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            putstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
         4: .line 340
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getAsyncFunctionPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            putstatic com.oracle.truffle.js.runtime.JSContext.asyncFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
         5: .line 341
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getGeneratorFunctionPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            putstatic com.oracle.truffle.js.runtime.JSContext.generatorFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
         6: .line 342
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getAsyncGeneratorFunctionPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            putstatic com.oracle.truffle.js.runtime.JSContext.asyncGeneratorFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
         7: .line 952
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(com.oracle.truffle.js.runtime.Evaluator, com.oracle.truffle.js.runtime.JSContextOptions, com.oracle.truffle.js.lang.JavaScriptLanguage, com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/js/runtime/Evaluator;Lcom/oracle/truffle/js/runtime/JSContextOptions;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=13, args_size=5
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.Evaluator evaluator
        start local 2 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
        start local 3 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
        start local 4 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 412
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 313
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
         2: .line 323
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionDataMap:Ljava/util/Map;
         3: .line 325
            aload 0 /* this */
            new com.oracle.truffle.js.runtime.objects.JSPrototypeData
            dup
            invokespecial com.oracle.truffle.js.runtime.objects.JSPrototypeData.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.nullPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
         4: .line 326
            aload 0 /* this */
            new com.oracle.truffle.js.runtime.objects.JSPrototypeData
            dup
            invokespecial com.oracle.truffle.js.runtime.objects.JSPrototypeData.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.inObjectPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
         5: .line 413
            aload 0 /* this */
            aload 2 /* contextOptions */
            putfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
         6: .line 415
            aload 4 /* env */
            ifnull 9
         7: .line 416
            aload 0 /* this */
            aload 4 /* env */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.setAllocationReporter:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
         8: .line 417
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            aload 4 /* env */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.setOptionValues:(Lorg/graalvm/options/OptionValues;)V
         9: .line 420
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env
      StackMap stack:
            aload 0 /* this */
            aload 3 /* lang */
            putfield com.oracle.truffle.js.runtime.JSContext.language:Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
        10: .line 421
            aload 0 /* this */
            aload 3 /* lang */
            invokestatic com.oracle.truffle.js.runtime.JSContext.getContextReference:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
            putfield com.oracle.truffle.js.runtime.JSContext.contextRef:Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
        11: .line 422
            aload 0 /* this */
            aload 4 /* env */
            putfield com.oracle.truffle.js.runtime.JSContext.truffleLanguageEnv:Lcom/oracle/truffle/api/TruffleLanguage$Env;
        12: .line 424
            aload 0 /* this */
            new com.oracle.truffle.js.runtime.JSContext$SharedRootNode
            dup
            invokespecial com.oracle.truffle.js.runtime.JSContext$SharedRootNode.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.sharedRootNode:Lcom/oracle/truffle/js/runtime/JSContext$SharedRootNode;
        13: .line 426
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createEmptyShape:()Lcom/oracle/truffle/api/object/Shape;
            putfield com.oracle.truffle.js.runtime.JSContext.emptyShape:Lcom/oracle/truffle/api/object/Shape;
        14: .line 427
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createEmptyShapePrototypeInObject:()Lcom/oracle/truffle/api/object/Shape;
            putfield com.oracle.truffle.js.runtime.JSContext.emptyShapePrototypeInObject:Lcom/oracle/truffle/api/object/Shape;
        15: .line 428
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createPromiseShapePrototypeInObject:()Lcom/oracle/truffle/api/object/Shape;
            putfield com.oracle.truffle.js.runtime.JSContext.promiseShapePrototypeInObject:Lcom/oracle/truffle/api/object/Shape;
        16: .line 429
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createGlobalScopeShape:()Lcom/oracle/truffle/api/object/Shape;
            putfield com.oracle.truffle.js.runtime.JSContext.globalScopeShape:Lcom/oracle/truffle/api/object/Shape;
        17: .line 431
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "noSuchPropertyUnusedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.noSuchPropertyUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
        18: .line 432
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "noSuchMethodUnusedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.noSuchMethodUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
        19: .line 433
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "arrayPrototypeNoElementsAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.arrayPrototypeNoElementsAssumption:Lcom/oracle/truffle/api/Assumption;
        20: .line 434
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "typedArrayNotDetachedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.typedArrayNotDetachedAssumption:Lcom/oracle/truffle/api/Assumption;
        21: .line 435
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "fastArrayAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.fastArrayAssumption:Lcom/oracle/truffle/api/Assumption;
        22: .line 436
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "fastArgumentsObjectAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.fastArgumentsObjectAssumption:Lcom/oracle/truffle/api/Assumption;
        23: .line 437
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "regExpStaticResultUnusedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.regExpStaticResultUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
        24: .line 439
            aload 0 /* this */
            aload 1 /* evaluator */
            putfield com.oracle.truffle.js.runtime.JSContext.evaluator:Lcom/oracle/truffle/js/runtime/Evaluator;
        25: .line 440
            aload 0 /* this */
            aload 1 /* evaluator */
            invokeinterface com.oracle.truffle.js.runtime.Evaluator.getDefaultNodeFactory:()Ljava/lang/Object;
            putfield com.oracle.truffle.js.runtime.JSContext.nodeFactory:Ljava/lang/Object;
        26: .line 442
            aload 0 /* this */
            aload 0 /* this */
            getstatic com.oracle.truffle.js.runtime.objects.Null.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.builtins.JSModuleNamespace.makeInitialShape:(Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/object/Shape;
            invokestatic com.oracle.truffle.js.runtime.builtins.JSObjectFactory.createBound:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$BoundProto;
            putfield com.oracle.truffle.js.runtime.JSContext.moduleNamespaceFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$BoundProto;
        27: .line 444
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "prepareStackTraceCallbackNotUsedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
        28: .line 445
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "promiseHookNotUsedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.promiseHookNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
        29: .line 446
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "promiseRejectionTrackerNotUsedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTrackerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
        30: .line 447
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "importMetaInitializerNotUsedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
        31: .line 448
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "importModuleDynamicallyCallbackNotUsedAssumption"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
        32: .line 450
            aload 0 /* this */
            aload 3 /* lang */
            invokestatic com.oracle.truffle.js.runtime.JSContext.createEmptyFunctionCallTarget:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/CallTarget;
            putfield com.oracle.truffle.js.runtime.JSContext.emptyFunctionCallTarget:Lcom/oracle/truffle/api/CallTarget;
        33: .line 451
            aload 0 /* this */
            aload 3 /* lang */
            invokestatic com.oracle.truffle.js.runtime.JSContext.createSpeciesGetterFunctionCallTarget:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/CallTarget;
            putfield com.oracle.truffle.js.runtime.JSContext.speciesGetterFunctionCallTarget:Lcom/oracle/truffle/api/CallTarget;
        34: .line 453
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey.values:()[Lcom/oracle/truffle/js/runtime/JSContext$BuiltinFunctionKey;
            arraylength
            anewarray com.oracle.truffle.js.runtime.builtins.JSFunctionData
            putfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionData:[Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        35: .line 455
            aload 0 /* this */
            aload 2 /* contextOptions */
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isProfileTime:()Z
            ifeq 36
            new com.oracle.truffle.js.runtime.util.TimeProfiler
            dup
            invokespecial com.oracle.truffle.js.runtime.util.TimeProfiler.<init>:()V
            goto 37
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
        36: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.util.TimeProfiler
        37: putfield com.oracle.truffle.js.runtime.JSContext.timeProfiler:Lcom/oracle/truffle/js/runtime/util/TimeProfiler;
        38: .line 457
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "single realm"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.singleRealmAssumption:Lcom/oracle/truffle/api/Assumption;
        39: .line 458
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            ldc "no child realms"
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createAssumption:(Ljava/lang/String;)Lcom/oracle/truffle/api/Assumption;
            putfield com.oracle.truffle.js.runtime.JSContext.noChildRealmsAssumption:Lcom/oracle/truffle/api/Assumption;
        40: .line 460
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.throwTypeErrorFunction:()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            putfield com.oracle.truffle.js.runtime.JSContext.throwerFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        41: .line 461
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionAnnexB:()Z
            istore 5 /* annexB */
        start local 5 // boolean annexB
        42: .line 462
            aload 0 /* this */
            iload 5 /* annexB */
            ifeq 43
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.protoGetterFunction:()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            goto 44
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
        43: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSFunctionData
        44: putfield com.oracle.truffle.js.runtime.JSContext.protoGetterFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        45: .line 463
            aload 0 /* this */
            iload 5 /* annexB */
            ifeq 46
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.protoSetterFunction:()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            goto 47
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
        46: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSFunctionData
        47: putfield com.oracle.truffle.js.runtime.JSContext.protoSetterFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        48: .line 465
            aload 0 /* this */
            aload 3 /* lang */
            invokevirtual com.oracle.truffle.js.lang.JavaScriptLanguage.isMultiContext:()Z
            putfield com.oracle.truffle.js.runtime.JSContext.isMultiContext:Z
        49: .line 468
            getstatic com.oracle.truffle.js.runtime.builtins.JSOrdinary.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSOrdinary;
            astore 6 /* objectPrototypeSupplier */
        start local 6 // com.oracle.truffle.js.runtime.builtins.PrototypeSupplier objectPrototypeSupplier
        50: .line 469
            getstatic com.oracle.truffle.js.runtime.builtins.JSOrdinary.SHAPE_SUPPLIER:Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
            astore 7 /* ordinaryObjectShapeSupplier */
        start local 7 // com.oracle.truffle.js.runtime.util.CompilableBiFunction ordinaryObjectShapeSupplier
        51: .line 470
            new com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;)V
            astore 8 /* builder */
        start local 8 // com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder builder
        52: .line 472
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.functionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        53: .line 473
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_0
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.constructorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        54: .line 474
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.strictFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        55: .line 475
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.strictConstructorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        56: .line 477
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.asyncFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            iconst_1
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.asyncFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        57: .line 478
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.generatorFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_0
            iconst_1
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.generatorFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        58: .line 479
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.asyncGeneratorFunctionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_0
            iconst_1
            iconst_0
            iconst_1
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.asyncGeneratorFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        59: .line 481
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.JSContext.functionPrototypeSupplier:Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
            iconst_1
            iconst_0
            iconst_0
            iconst_1
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.function:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;ZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.boundFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
        60: .line 483
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSOrdinary.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSOrdinary;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.ordinaryObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        61: .line 484
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArray.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArray;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.arrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        62: .line 485
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArray.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArray;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.lazyRegexArrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        63: .line 486
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArray.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArray;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.lazyRegexIndicesArrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        64: .line 487
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSBoolean.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSBoolean;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.booleanFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        65: .line 488
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSNumber.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSNumber;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.numberFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        66: .line 489
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSBigInt.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSBigInt;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.bigIntFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        67: .line 490
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSString.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSString;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.stringFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        68: .line 491
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSRegExp.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSRegExp;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.regExpFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        69: .line 492
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSDate.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSDate;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.dateFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        70: .line 494
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSSymbol.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSSymbol;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.symbolFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        71: .line 495
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSMap.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSMap;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.mapFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        72: .line 496
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSSet.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSSet;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.setFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        73: .line 497
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSWeakRef.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSWeakRef;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.weakRefFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        74: .line 498
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSWeakMap.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSWeakMap;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.weakMapFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        75: .line 499
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSWeakSet.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSWeakSet;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.weakSetFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        76: .line 500
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSProxy.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSProxy;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.proxyFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        77: .line 501
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSPromise.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSPromise;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.promiseFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        78: .line 502
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSDataView.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSDataView;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.dataViewFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        79: .line 503
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.HEAP_INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArrayBuffer;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.arrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        80: .line 504
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.DIRECT_INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArrayBuffer;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.directArrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        81: .line 505
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionSharedArrayBuffer:()Z
            ifeq 82
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSSharedArrayBuffer.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSSharedArrayBuffer;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            goto 83
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
        82: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSObjectFactory
        83: putfield com.oracle.truffle.js.runtime.JSContext.sharedArrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        84: .line 506
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSFinalizationRegistry.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSFinalizationRegistry;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.finalizationRegistryFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        85: .line 507
            aload 0 /* this */
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.array.TypedArray.factories:(Lcom/oracle/truffle/js/runtime/JSContext;)[Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
            arraylength
            anewarray com.oracle.truffle.js.runtime.builtins.JSObjectFactory
            putfield com.oracle.truffle.js.runtime.JSContext.typedArrayFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        86: .line 508
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.array.TypedArray.factories:(Lcom/oracle/truffle/js/runtime/JSContext;)[Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 90
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder top int int com.oracle.truffle.js.runtime.array.TypedArrayFactory[]
      StackMap stack:
        87: aload 12
            iload 10
            aaload
            astore 9 /* factory */
        start local 9 // com.oracle.truffle.js.runtime.array.TypedArrayFactory factory
        88: .line 509
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.typedArrayFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aload 9 /* factory */
            invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getFactoryIndex:()I
            aload 8 /* builder */
            aload 9 /* factory */
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/JSContext.lambda$4(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aastore
        end local 9 // com.oracle.truffle.js.runtime.array.TypedArrayFactory factory
        89: .line 508
            iinc 10 1
      StackMap locals:
      StackMap stack:
        90: iload 10
            iload 11
            if_icmplt 87
        91: .line 512
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.JSErrorType.errorTypes:()[Lcom/oracle/truffle/js/runtime/JSErrorType;
            arraylength
            anewarray com.oracle.truffle.js.runtime.builtins.JSObjectFactory
            putfield com.oracle.truffle.js.runtime.JSContext.errorObjectFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        92: .line 513
            invokestatic com.oracle.truffle.js.runtime.JSErrorType.errorTypes:()[Lcom/oracle/truffle/js/runtime/JSErrorType;
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 96
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder top int int com.oracle.truffle.js.runtime.JSErrorType[]
      StackMap stack:
        93: aload 12
            iload 10
            aaload
            astore 9 /* type */
        start local 9 // com.oracle.truffle.js.runtime.JSErrorType type
        94: .line 514
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.errorObjectFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aload 9 /* type */
            invokevirtual com.oracle.truffle.js.runtime.JSErrorType.ordinal:()I
            aload 8 /* builder */
            aload 9 /* type */
            getstatic com.oracle.truffle.js.runtime.builtins.JSError.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSError;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic apply(Lcom/oracle/truffle/js/runtime/builtins/JSError;)Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSError.makeInitialShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (5)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aastore
        end local 9 // com.oracle.truffle.js.runtime.JSErrorType type
        95: .line 513
            iinc 10 1
      StackMap locals:
      StackMap stack:
        96: iload 10
            iload 11
            if_icmplt 93
        97: .line 517
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getCallSitePrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSError.makeInitialCallSiteShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.callSiteFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        98: .line 518
            aload 0 /* this */
            aload 8 /* builder */
            aload 6 /* objectPrototypeSupplier */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArgumentsArray.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArgumentsArray;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.nonStrictArgumentsFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
        99: .line 519
            aload 0 /* this */
            aload 8 /* builder */
            aload 6 /* objectPrototypeSupplier */
            getstatic com.oracle.truffle.js.runtime.builtins.JSArgumentsArray.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSArgumentsArray;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.strictArgumentsFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       100: .line 520
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getEnumerateIteratorPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSFunction.makeInitialEnumerateIteratorShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.enumerateIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       101: .line 521
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getForInIteratorPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSFunction.makeInitialForInIteratorShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.forInIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       102: .line 523
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getGeneratorObjectPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            aload 7 /* ordinaryObjectShapeSupplier */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.generatorObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       103: .line 524
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getAsyncGeneratorObjectPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            aload 7 /* ordinaryObjectShapeSupplier */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.asyncGeneratorObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       104: .line 525
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getAsyncFromSyncIteratorPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            aload 7 /* ordinaryObjectShapeSupplier */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.asyncFromSyncIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       105: .line 527
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSCollator.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSCollator;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.collatorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       106: .line 528
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSNumberFormat.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSNumberFormat;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.numberFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       107: .line 529
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSDateTimeFormat.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSDateTimeFormat;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.dateTimeFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       108: .line 530
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSPluralRules.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSPluralRules;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.pluralRulesFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       109: .line 531
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSListFormat.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSListFormat;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.listFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       110: .line 532
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSRelativeTimeFormat.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSRelativeTimeFormat;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.relativeTimeFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       111: .line 533
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSSegmenter.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSSegmenter;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.segmenterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       112: .line 534
            aload 0 /* this */
            aload 8 /* builder */
            invokedynamic getIntrinsicDefaultProto()Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
              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/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
                  com/oracle/truffle/js/runtime/JSRealm.getSegmentIteratorPrototype()Lcom/oracle/truffle/api/object/DynamicObject; (5)
                  (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/api/object/DynamicObject;
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/intl/JSSegmenter.makeInitialSegmentIteratorShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.segmentIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       113: .line 535
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSDisplayNames.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSDisplayNames;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.displayNamesFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       114: .line 536
            aload 0 /* this */
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.intl.JSLocale.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/intl/JSLocale;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.localeFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       115: .line 538
            aload 0 /* this */
            aload 8 /* builder */
            aload 6 /* objectPrototypeSupplier */
            getstatic com.oracle.truffle.js.runtime.java.JavaPackage.INSTANCE:Lcom/oracle/truffle/js/runtime/java/JavaPackage;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic apply(Lcom/oracle/truffle/js/runtime/java/JavaPackage;)Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/java/JavaPackage.makeInitialShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (5)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.javaPackageFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       116: .line 539
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionNashornCompatibilityMode:()Z
            istore 10 /* nashornCompat */
        start local 10 // boolean nashornCompat
       117: .line 540
            aload 0 /* this */
            iload 10 /* nashornCompat */
            ifeq 118
            aload 8 /* builder */
            getstatic com.oracle.truffle.js.runtime.builtins.JSAdapter.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSAdapter;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            goto 119
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder top int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
       118: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder top int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSObjectFactory
       119: putfield com.oracle.truffle.js.runtime.JSContext.jsAdapterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       120: .line 541
            aload 0 /* this */
            iload 10 /* nashornCompat */
            ifeq 121
            aload 8 /* builder */
            invokestatic com.oracle.truffle.js.runtime.java.JavaImporter.instance:()Lcom/oracle/truffle/js/runtime/java/JavaImporter;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            goto 122
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.JSContext
       121: aconst_null
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.Evaluator com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.js.lang.JavaScriptLanguage com.oracle.truffle.api.TruffleLanguage$Env int com.oracle.truffle.js.runtime.builtins.PrototypeSupplier com.oracle.truffle.js.runtime.util.CompilableBiFunction com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder top int
      StackMap stack: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSObjectFactory
       122: putfield com.oracle.truffle.js.runtime.JSContext.javaImporterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       123: .line 543
            aload 0 /* this */
            aload 8 /* builder */
            aload 6 /* objectPrototypeSupplier */
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSDictionary.makeDictionaryShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.dictionaryObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       124: .line 545
            aload 0 /* this */
            aload 8 /* builder */
            aload 6 /* objectPrototypeSupplier */
            invokedynamic apply()Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/truffle/js/runtime/builtins/JSGlobal.makeGlobalObjectShape(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape; (6)
                  (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.create:(Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            putfield com.oracle.truffle.js.runtime.JSContext.globalObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
       125: .line 547
            aload 0 /* this */
            aload 8 /* builder */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder.finish:()I
            putfield com.oracle.truffle.js.runtime.JSContext.factoryCount:I
       126: .line 549
            aload 0 /* this */
            new com.oracle.truffle.js.runtime.builtins.JSFunction$ArgumentsProxyProperty
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.runtime.builtins.JSFunction$ArgumentsProxyProperty.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;)V
            putfield com.oracle.truffle.js.runtime.JSContext.argumentsPropertyProxy:Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
       127: .line 550
            aload 0 /* this */
            new com.oracle.truffle.js.runtime.builtins.JSFunction$CallerProxyProperty
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.runtime.builtins.JSFunction$CallerProxyProperty.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;)V
            putfield com.oracle.truffle.js.runtime.JSContext.callerPropertyProxy:Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
       128: .line 552
            aload 0 /* this */
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.builtins.JSRegExp.makeInitialGroupsObjectShape:(Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/object/Shape;
            putfield com.oracle.truffle.js.runtime.JSContext.regExpGroupsEmptyShape:Lcom/oracle/truffle/api/object/Shape;
       129: .line 553
            return
        end local 10 // boolean nashornCompat
        end local 8 // com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder builder
        end local 7 // com.oracle.truffle.js.runtime.util.CompilableBiFunction ordinaryObjectShapeSupplier
        end local 6 // com.oracle.truffle.js.runtime.builtins.PrototypeSupplier objectPrototypeSupplier
        end local 5 // boolean annexB
        end local 4 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 3 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
        end local 2 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
        end local 1 // com.oracle.truffle.js.runtime.Evaluator evaluator
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0  130     0                         this  Lcom/oracle/truffle/js/runtime/JSContext;
            0  130     1                    evaluator  Lcom/oracle/truffle/js/runtime/Evaluator;
            0  130     2               contextOptions  Lcom/oracle/truffle/js/runtime/JSContextOptions;
            0  130     3                         lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            0  130     4                          env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
           42  130     5                       annexB  Z
           50  130     6      objectPrototypeSupplier  Lcom/oracle/truffle/js/runtime/builtins/PrototypeSupplier;
           51  130     7  ordinaryObjectShapeSupplier  Lcom/oracle/truffle/js/runtime/util/CompilableBiFunction<Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;>;
           52  130     8                      builder  Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$IntrinsicBuilder;
           88   89     9                      factory  Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
           94   95     9                         type  Lcom/oracle/truffle/js/runtime/JSErrorType;
          117  130    10                nashornCompat  Z
    MethodParameters:
                Name  Flags
      evaluator       
      contextOptions  
      lang            
      env             

  private static com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.js.runtime.JSRealm> getContextReference(com.oracle.truffle.js.lang.JavaScriptLanguage);
    descriptor: (Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
         0: .line 557
            aload 0 /* lang */
            invokevirtual com.oracle.truffle.js.lang.JavaScriptLanguage.getContextReference:()Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
            areturn
        end local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
    Signature: (Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/js/runtime/JSRealm;>;
    MethodParameters:
      Name  Flags
      lang  

  public final com.oracle.truffle.js.runtime.Evaluator getEvaluator();
    descriptor: ()Lcom/oracle/truffle/js/runtime/Evaluator;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 561
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.evaluator:Lcom/oracle/truffle/js/runtime/Evaluator;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public java.lang.Object getNodeFactory();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 565
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.nodeFactory:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.JSParserOptions getParserOptions();
    descriptor: ()Lcom/oracle/truffle/js/runtime/JSParserOptions;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 569
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getParserOptions:()Lcom/oracle/truffle/js/runtime/JSParserOptions;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final java.lang.Object getEmbedderData();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 573
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.embedderData:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void setEmbedderData(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // java.lang.Object embedderData
         0: .line 577
            aload 0 /* this */
            aload 1 /* embedderData */
            putfield com.oracle.truffle.js.runtime.JSContext.embedderData:Ljava/lang/Object;
         1: .line 578
            return
        end local 1 // java.lang.Object embedderData
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  embedderData  Ljava/lang/Object;
    MethodParameters:
              Name  Flags
      embedderData  

  public final com.oracle.truffle.api.Assumption getNoSuchPropertyUnusedAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 581
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.noSuchPropertyUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getNoSuchMethodUnusedAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 585
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.noSuchMethodUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getArrayPrototypeNoElementsAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 589
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.arrayPrototypeNoElementsAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getFastArrayAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 593
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.fastArrayAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getFastArgumentsObjectAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 597
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.fastArgumentsObjectAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getTypedArrayNotDetachedAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 601
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.typedArrayNotDetachedAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.Assumption getRegExpStaticResultUnusedAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 605
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.regExpStaticResultUnusedAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public static com.oracle.truffle.js.runtime.JSContext createContext(com.oracle.truffle.js.runtime.Evaluator, com.oracle.truffle.js.runtime.JSContextOptions, com.oracle.truffle.js.lang.JavaScriptLanguage, com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/js/runtime/Evaluator;Lcom/oracle/truffle/js/runtime/JSContextOptions;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/js/runtime/JSContext;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.Evaluator evaluator
        start local 1 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
        start local 2 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
        start local 3 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 609
            new com.oracle.truffle.js.runtime.JSContext
            dup
            aload 0 /* evaluator */
            aload 1 /* contextOptions */
            aload 2 /* lang */
            aload 3 /* env */
            invokespecial com.oracle.truffle.js.runtime.JSContext.<init>:(Lcom/oracle/truffle/js/runtime/Evaluator;Lcom/oracle/truffle/js/runtime/JSContextOptions;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
            areturn
        end local 3 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 2 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
        end local 1 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
        end local 0 // com.oracle.truffle.js.runtime.Evaluator evaluator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0       evaluator  Lcom/oracle/truffle/js/runtime/Evaluator;
            0    1     1  contextOptions  Lcom/oracle/truffle/js/runtime/JSContextOptions;
            0    1     2            lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            0    1     3             env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
    MethodParameters:
                Name  Flags
      evaluator       
      contextOptions  
      lang            
      env             

  public com.oracle.truffle.js.runtime.JSRealm createRealm(com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/js/runtime/JSRealm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 613
            getstatic com.oracle.truffle.js.runtime.JSRealm.CREATING_CHILD_REALM:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            if_acmpeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* isTop */
        start local 2 // boolean isTop
         3: .line 614
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            ifne 4
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
            iconst_0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
            ifne 5
         4: .line 615
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.singleRealmAssumption:Lcom/oracle/truffle/api/Assumption;
            ldc "single realm assumption"
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:(Ljava/lang/String;)V
         5: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            putfield com.oracle.truffle.js.runtime.JSContext.truffleLanguageEnv:Lcom/oracle/truffle/api/TruffleLanguage$Env;
         6: .line 619
            iload 2 /* isTop */
            ifne 8
         7: .line 620
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.noChildRealmsAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:()V
         8: .line 622
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.js.runtime.JSRealm
            dup
            aload 0 /* this */
            aload 1 /* env */
            invokespecial com.oracle.truffle.js.runtime.JSRealm.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
            astore 3 /* newRealm */
        start local 3 // com.oracle.truffle.js.runtime.JSRealm newRealm
         9: .line 623
            aload 3 /* newRealm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.setupGlobals:()V
        10: .line 625
            iload 2 /* isTop */
            ifeq 18
        11: .line 626
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isTest262Mode:()Z
            ifne 12
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isTestV8Mode:()Z
            ifeq 14
        12: .line 627
      StackMap locals: com.oracle.truffle.js.runtime.JSRealm
      StackMap stack:
            aload 3 /* newRealm */
            new com.oracle.truffle.js.runtime.util.DebugJSAgent
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.canAgentBlock:()Z
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getOptions:()Lorg/graalvm/options/OptionValues;
            invokespecial com.oracle.truffle.js.runtime.util.DebugJSAgent.<init>:(ZLorg/graalvm/options/OptionValues;)V
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.setAgent:(Lcom/oracle/truffle/js/runtime/JSAgent;)V
        13: .line 628
            goto 15
        14: .line 629
      StackMap locals:
      StackMap stack:
            aload 3 /* newRealm */
            new com.oracle.truffle.js.runtime.MainJSAgent
            dup
            invokespecial com.oracle.truffle.js.runtime.MainJSAgent.<init>:()V
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.setAgent:(Lcom/oracle/truffle/js/runtime/JSAgent;)V
        15: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isV8RealmBuiltin:()Z
            ifeq 18
        16: .line 632
            aload 3 /* newRealm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.initRealmList:()V
        17: .line 633
            aload 3 /* newRealm */
            aload 3 /* newRealm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.addToRealmList:(Lcom/oracle/truffle/js/runtime/JSRealm;)V
        18: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
            iconst_2
            invokevirtual java.util.concurrent.atomic.AtomicInteger.set:(I)V
        19: .line 638
            aload 3 /* newRealm */
            areturn
        end local 3 // com.oracle.truffle.js.runtime.JSRealm newRealm
        end local 2 // boolean isTop
        end local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lcom/oracle/truffle/js/runtime/JSContext;
            0   20     1       env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
            3   20     2     isTop  Z
            9   20     3  newRealm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
      Name  Flags
      env   

  public final com.oracle.truffle.api.object.Shape createEmptyShape();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 642
            aload 0 /* this */
            getstatic com.oracle.truffle.js.runtime.builtins.JSOrdinary.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSOrdinary;
            invokevirtual com.oracle.truffle.js.runtime.JSContext.makeEmptyShapeWithNullPrototype:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private com.oracle.truffle.api.object.Shape createEmptyShapePrototypeInObject();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 646
            aload 0 /* this */
            getstatic com.oracle.truffle.js.runtime.builtins.JSOrdinary.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSOrdinary;
            invokevirtual com.oracle.truffle.js.runtime.JSContext.makeEmptyShapeWithPrototypeInObject:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private com.oracle.truffle.api.object.Shape createPromiseShapePrototypeInObject();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 650
            aload 0 /* this */
            getstatic com.oracle.truffle.js.runtime.builtins.JSPromise.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSPromise;
            invokevirtual com.oracle.truffle.js.runtime.JSContext.makeEmptyShapeWithPrototypeInObject:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.object.Shape makeEmptyShapeWithNullPrototype(com.oracle.truffle.js.runtime.builtins.JSClass);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.JSClass jsclass
         0: .line 654
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.nullPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
            aload 1 /* jsclass */
            invokevirtual com.oracle.truffle.js.runtime.objects.JSPrototypeData.getProtoChildTree:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            astore 2 /* protoChildTree */
        start local 2 // com.oracle.truffle.api.object.Shape protoChildTree
         1: .line 655
            aload 2 /* protoChildTree */
            ifnull 3
         2: .line 656
            aload 2 /* protoChildTree */
            areturn
         3: .line 658
      StackMap locals: com.oracle.truffle.api.object.Shape
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.nullPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
            aload 1 /* jsclass */
            aload 1 /* jsclass */
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.objects.JSShape.makeEmptyRoot:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.objects.JSPrototypeData.getOrAddProtoChildTree:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;Lcom/oracle/truffle/api/object/Shape;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 2 // com.oracle.truffle.api.object.Shape protoChildTree
        end local 1 // com.oracle.truffle.js.runtime.builtins.JSClass jsclass
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    4     1         jsclass  Lcom/oracle/truffle/js/runtime/builtins/JSClass;
            1    4     2  protoChildTree  Lcom/oracle/truffle/api/object/Shape;
    MethodParameters:
         Name  Flags
      jsclass  

  public final com.oracle.truffle.api.object.Shape makeEmptyShapeWithPrototypeInObject(com.oracle.truffle.js.runtime.builtins.JSClass);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.JSClass jsclass
         0: .line 662
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.inObjectPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
            aload 1 /* jsclass */
            invokevirtual com.oracle.truffle.js.runtime.objects.JSPrototypeData.getProtoChildTree:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            astore 2 /* protoChildTree */
        start local 2 // com.oracle.truffle.api.object.Shape protoChildTree
         1: .line 663
            aload 2 /* protoChildTree */
            ifnull 3
         2: .line 664
            aload 2 /* protoChildTree */
            areturn
         3: .line 666
      StackMap locals: com.oracle.truffle.api.object.Shape
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.inObjectPrototypeData:Lcom/oracle/truffle/js/runtime/objects/JSPrototypeData;
            aload 1 /* jsclass */
            aload 0 /* this */
            aload 1 /* jsclass */
            invokestatic com.oracle.truffle.js.runtime.objects.JSShape.makeEmptyRootWithInstanceProto:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/runtime/builtins/JSClass;)Lcom/oracle/truffle/api/object/Shape;
            invokevirtual com.oracle.truffle.js.runtime.objects.JSPrototypeData.getOrAddProtoChildTree:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;Lcom/oracle/truffle/api/object/Shape;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 2 // com.oracle.truffle.api.object.Shape protoChildTree
        end local 1 // com.oracle.truffle.js.runtime.builtins.JSClass jsclass
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    4     1         jsclass  Lcom/oracle/truffle/js/runtime/builtins/JSClass;
            1    4     2  protoChildTree  Lcom/oracle/truffle/api/object/Shape;
    MethodParameters:
         Name  Flags
      jsclass  

  private com.oracle.truffle.api.object.Shape createGlobalScopeShape();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 670
            getstatic com.oracle.truffle.js.runtime.builtins.JSGlobal.INSTANCE:Lcom/oracle/truffle/js/runtime/builtins/JSGlobal;
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.objects.JSShape.makeEmptyRoot:(Lcom/oracle/truffle/js/runtime/builtins/JSClass;Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final java.util.Map<java.lang.String, com.oracle.truffle.js.runtime.Symbol> getSymbolRegistry();
    descriptor: ()Ljava/util/Map;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 674
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.symbolRegistry:Ljava/util/Map;
            ifnonnull 2
         1: .line 675
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createSymbolRegistry:()V
         2: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.symbolRegistry:Ljava/util/Map;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/js/runtime/Symbol;>;

  private synchronized void createSymbolRegistry();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 682
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.symbolRegistry:Ljava/util/Map;
            ifnonnull 2
         1: .line 683
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.oracle.truffle.js.runtime.JSContext.symbolRegistry:Ljava/util/Map;
         2: .line 685
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public final void promiseEnqueueJob(com.oracle.truffle.js.runtime.JSRealm, com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSRealm;Lcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 2 // com.oracle.truffle.api.object.DynamicObject job
         0: .line 691
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePromiseQueueNotUsedAssumption:()V
         1: .line 692
            aload 1 /* realm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getAgent:()Lcom/oracle/truffle/js/runtime/JSAgent;
            aload 2 /* job */
            invokevirtual com.oracle.truffle.js.runtime.JSAgent.enqueuePromiseJob:(Lcom/oracle/truffle/api/object/DynamicObject;)V
         2: .line 693
            return
        end local 2 // com.oracle.truffle.api.object.DynamicObject job
        end local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    3     2    job  Lcom/oracle/truffle/api/object/DynamicObject;
    MethodParameters:
       Name  Flags
      realm  
      job    

  private void invalidatePromiseQueueNotUsedAssumption();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 696
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.language:Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            invokevirtual com.oracle.truffle.js.lang.JavaScriptLanguage.getPromiseJobsQueueEmptyAssumption:()Lcom/oracle/truffle/api/Assumption;
            astore 1 /* promiseJobsQueueEmptyAssumption */
        start local 1 // com.oracle.truffle.api.Assumption promiseJobsQueueEmptyAssumption
         1: .line 697
            aload 1 /* promiseJobsQueueEmptyAssumption */
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 4
         2: .line 698
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         3: .line 699
            aload 1 /* promiseJobsQueueEmptyAssumption */
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:()V
         4: .line 701
      StackMap locals: com.oracle.truffle.api.Assumption
      StackMap stack:
            return
        end local 1 // com.oracle.truffle.api.Assumption promiseJobsQueueEmptyAssumption
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0    5     0                             this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    5     1  promiseJobsQueueEmptyAssumption  Lcom/oracle/truffle/api/Assumption;

  public final void processAllPendingPromiseJobs(com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSRealm;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 704
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.language:Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            invokevirtual com.oracle.truffle.js.lang.JavaScriptLanguage.getPromiseJobsQueueEmptyAssumption:()Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifne 2
         1: .line 705
            aload 1 /* realm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getAgent:()Lcom/oracle/truffle/js/runtime/JSAgent;
            iconst_0
            invokevirtual com.oracle.truffle.js.runtime.JSAgent.processAllPromises:(Z)V
         2: .line 707
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
       Name  Flags
      realm  

  public boolean addWeakRefTargetToSet(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // java.lang.Object target
         0: .line 710
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePromiseQueueNotUsedAssumption:()V
         1: .line 711
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getJSAgent:()Lcom/oracle/truffle/js/runtime/JSAgent;
            aload 1 /* target */
            invokevirtual com.oracle.truffle.js.runtime.JSAgent.addWeakRefTargetToSet:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object target
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  target  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      target  

  public void registerFinalizationRegistry(com.oracle.truffle.js.runtime.builtins.JSFinalizationRegistryObject);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/JSFinalizationRegistryObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.JSFinalizationRegistryObject finalizationRegistry
         0: .line 715
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePromiseQueueNotUsedAssumption:()V
         1: .line 716
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getJSAgent:()Lcom/oracle/truffle/js/runtime/JSAgent;
            aload 1 /* finalizationRegistry */
            invokevirtual com.oracle.truffle.js.runtime.JSAgent.registerFinalizationRegistry:(Lcom/oracle/truffle/js/runtime/builtins/JSFinalizationRegistryObject;)V
         2: .line 717
            return
        end local 1 // com.oracle.truffle.js.runtime.builtins.JSFinalizationRegistryObject finalizationRegistry
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    3     0                  this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  finalizationRegistry  Lcom/oracle/truffle/js/runtime/builtins/JSFinalizationRegistryObject;
    MethodParameters:
                      Name  Flags
      finalizationRegistry  

  public com.oracle.truffle.js.runtime.util.TimeProfiler getTimeProfiler();
    descriptor: ()Lcom/oracle/truffle/js/runtime/util/TimeProfiler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 720
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.timeProfiler:Lcom/oracle/truffle/js/runtime/util/TimeProfiler;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.JSRealm getRealm();
    descriptor: ()Lcom/oracle/truffle/js/runtime/JSRealm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 727
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            iconst_2
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            ldc "getRealm() while initializing Realm"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextRef:Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
            checkcast com.oracle.truffle.js.runtime.JSRealm
            astore 1 /* currentRealm */
        start local 1 // com.oracle.truffle.js.runtime.JSRealm currentRealm
         2: .line 729
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 3
            aload 1 /* currentRealm */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 730
      StackMap locals: com.oracle.truffle.js.runtime.JSRealm
      StackMap stack:
            aload 1 /* currentRealm */
            areturn
        end local 1 // com.oracle.truffle.js.runtime.JSRealm currentRealm
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/oracle/truffle/js/runtime/JSContext;
            2    4     1  currentRealm  Lcom/oracle/truffle/js/runtime/JSRealm;

  public final com.oracle.truffle.api.object.Shape getEmptyShapeNullPrototype();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 734
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.emptyShape:Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.object.Shape getEmptyShapePrototypeInObject();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 738
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.emptyShapePrototypeInObject:Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.object.Shape getPromiseShapePrototypeInObject();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 742
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseShapePrototypeInObject:Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.object.Shape getGlobalScopeShape();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 746
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.globalScopeShape:Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getOrdinaryObjectFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 750
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.ordinaryObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getArrayFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 754
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.arrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getLazyRegexArrayFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 758
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.lazyRegexArrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getLazyRegexIndicesArrayFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 762
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.lazyRegexIndicesArrayFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getStringFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 766
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.stringFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getBooleanFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 770
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.booleanFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getNumberFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 774
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.numberFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getBigIntFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 778
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.bigIntFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getSymbolFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 782
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.symbolFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getArrayBufferViewFactory(com.oracle.truffle.js.runtime.array.TypedArrayFactory);
    descriptor: (Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.array.TypedArrayFactory factory
         0: .line 786
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.typedArrayFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aload 1 /* factory */
            invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getFactoryIndex:()I
            aaload
            areturn
        end local 1 // com.oracle.truffle.js.runtime.array.TypedArrayFactory factory
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    1     1  factory  Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
    MethodParameters:
         Name  Flags
      factory  

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getArrayBufferFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 790
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.arrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDirectArrayBufferFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 794
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.directArrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getRegExpFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 798
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.regExpFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDateFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 802
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.dateFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getEnumerateIteratorFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 806
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.enumerateIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getForInIteratorFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 810
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.forInIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getMapFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 814
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.mapFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getFinalizationRegistryFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 818
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.finalizationRegistryFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getWeakRefFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 822
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.weakRefFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getWeakMapFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 826
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.weakMapFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getSetFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 830
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.setFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getWeakSetFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 834
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.weakSetFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDataViewFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 838
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.dataViewFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getProxyFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 842
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.proxyFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getSharedArrayBufferFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 846
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionSharedArrayBuffer:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.sharedArrayBufferFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getNonStrictArgumentsFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 851
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.nonStrictArgumentsFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getStrictArgumentsFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 855
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.strictArgumentsFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getCallSiteFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 859
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.callSiteFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getErrorFactory(com.oracle.truffle.js.runtime.JSErrorType);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;)Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.JSErrorType type
         0: .line 863
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.errorObjectFactories:[Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            aload 1 /* type */
            invokevirtual com.oracle.truffle.js.runtime.JSErrorType.ordinal:()I
            aaload
            areturn
        end local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    1     1  type  Lcom/oracle/truffle/js/runtime/JSErrorType;
    MethodParameters:
      Name  Flags
      type  

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getPromiseFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 867
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory$BoundProto getModuleNamespaceFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$BoundProto;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 871
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.moduleNamespaceFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$BoundProto;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getGeneratorObjectFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 875
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.generatorObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getAsyncGeneratorObjectFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 879
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.asyncGeneratorObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getAsyncFromSyncIteratorFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 883
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.asyncFromSyncIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getCollatorFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 887
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.collatorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getNumberFormatFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 891
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.numberFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getPluralRulesFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 895
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.pluralRulesFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getListFormatFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 899
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.listFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getRelativeTimeFormatFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 903
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.relativeTimeFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getSegmenterFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 907
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.segmenterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getSegmentIteratorFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 911
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.segmentIteratorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDisplayNamesFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 915
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.displayNamesFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getLocaleFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 919
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.localeFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDateTimeFormatFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 923
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.dateTimeFormatFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getJavaImporterFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 927
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.javaImporterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getJSAdapterFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 931
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.jsAdapterFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.js.runtime.builtins.JSObjectFactory getJavaPackageFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 935
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.javaPackageFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.builtins.JSObjectFactory getDictionaryObjectFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 939
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.dictionaryObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.builtins.JSObjectFactory getGlobalObjectFactory();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 943
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.globalObjectFactory:Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private static java.lang.String createRegexEngineOptions(com.oracle.truffle.js.runtime.JSContextOptions);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContextOptions;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
         0: .line 955
            new java.lang.StringBuilder
            dup
            bipush 30
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* options */
        start local 1 // java.lang.StringBuilder options
         1: .line 959
            aload 0 /* contextOptions */
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexRegressionTestMode:()Z
            ifeq 3
         2: .line 960
            aload 1 /* options */
            ldc "RegressionTestMode=true,"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 962
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* contextOptions */
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexDumpAutomata:()Z
            ifeq 5
         4: .line 963
            aload 1 /* options */
            ldc "DumpAutomata=true,"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 965
      StackMap locals:
      StackMap stack:
            aload 0 /* contextOptions */
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexStepExecution:()Z
            ifeq 7
         6: .line 966
            aload 1 /* options */
            ldc "StepExecution=true,"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 968
      StackMap locals:
      StackMap stack:
            aload 0 /* contextOptions */
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexAlwaysEager:()Z
            ifeq 9
         8: .line 969
            aload 1 /* options */
            ldc "AlwaysEager=true,"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 971
      StackMap locals:
      StackMap stack:
            aload 1 /* options */
            ldc "FeatureSet=TRegexJoni,"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 972
            aload 1 /* options */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder options
        end local 0 // com.oracle.truffle.js.runtime.JSContextOptions contextOptions
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0  contextOptions  Lcom/oracle/truffle/js/runtime/JSContextOptions;
            1   11     1         options  Ljava/lang/StringBuilder;
    MethodParameters:
                Name  Flags
      contextOptions  

  public java.lang.Object getRegexEngine();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 976
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.regexEngine:Ljava/lang/Object;
            ifnonnull 3
         1: .line 977
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         2: .line 978
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getContextOptions:()Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokestatic com.oracle.truffle.js.runtime.JSContext.createTRegexEngine:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Lcom/oracle/truffle/js/runtime/JSContextOptions;)Ljava/lang/Object;
            putfield com.oracle.truffle.js.runtime.JSContext.regexEngine:Ljava/lang/Object;
         3: .line 980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.regexEngine:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public java.lang.Object getTRegexEmptyResult();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 984
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.tRegexEmptyResult:Ljava/lang/Object;
            ifnonnull 4
         1: .line 985
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         2: .line 986
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.util.TRegexUtil$InvokeExecMethodNode.getUncached:()Lcom/oracle/truffle/js/runtime/util/TRegexUtil$InvokeExecMethodNode;
            invokestatic com.oracle.truffle.js.runtime.util.TRegexUtil$CompileRegexNode.getUncached:()Lcom/oracle/truffle/js/runtime/util/TRegexUtil$CompileRegexNode;
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRegexEngine:()Ljava/lang/Object;
            ldc "[]"
            ldc ""
            invokevirtual com.oracle.truffle.js.runtime.util.TRegexUtil$CompileRegexNode.execute:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            ldc ""
            lconst_0
            invokevirtual com.oracle.truffle.js.runtime.util.TRegexUtil$InvokeExecMethodNode.execute:(Ljava/lang/Object;Ljava/lang/String;J)Ljava/lang/Object;
            putfield com.oracle.truffle.js.runtime.JSContext.tRegexEmptyResult:Ljava/lang/Object;
         3: .line 987
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 4
            invokestatic com.oracle.truffle.js.runtime.util.TRegexUtil$TRegexResultAccessor.getUncached:()Lcom/oracle/truffle/js/runtime/util/TRegexUtil$TRegexResultAccessor;
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.tRegexEmptyResult:Ljava/lang/Object;
            invokevirtual com.oracle.truffle.js.runtime.util.TRegexUtil$TRegexResultAccessor.isMatch:(Ljava/lang/Object;)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 989
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.tRegexEmptyResult:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public static java.lang.Object createTRegexEngine(com.oracle.truffle.api.TruffleLanguage$Env, com.oracle.truffle.js.runtime.JSContextOptions);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;Lcom/oracle/truffle/js/runtime/JSContextOptions;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // com.oracle.truffle.api.TruffleLanguage$Env env
        start local 1 // com.oracle.truffle.js.runtime.JSContextOptions options
         0: .line 994
            ldc "regex"
            ldc ""
            ldc "TRegex Engine Builder Request"
            invokestatic com.oracle.truffle.api.source.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lcom/oracle/truffle/api/source/Source$LiteralBuilder;
            iconst_1
            invokevirtual com.oracle.truffle.api.source.Source$LiteralBuilder.internal:(Z)Lcom/oracle/truffle/api/source/Source$LiteralBuilder;
            invokevirtual com.oracle.truffle.api.source.Source$LiteralBuilder.build:()Lcom/oracle/truffle/api/source/Source;
            astore 2 /* engineBuilderRequest */
        start local 2 // com.oracle.truffle.api.source.Source engineBuilderRequest
         1: .line 995
            aload 0 /* env */
            aload 2 /* engineBuilderRequest */
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.parseInternal:(Lcom/oracle/truffle/api/source/Source;[Ljava/lang/String;)Lcom/oracle/truffle/api/CallTarget;
            iconst_0
            anewarray java.lang.Object
            invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* regexEngineBuilder */
        start local 3 // java.lang.Object regexEngineBuilder
         2: .line 996
            aload 1 /* options */
            invokestatic com.oracle.truffle.js.runtime.JSContext.createRegexEngineOptions:(Lcom/oracle/truffle/js/runtime/JSContextOptions;)Ljava/lang/String;
            astore 4 /* regexOptions */
        start local 4 // java.lang.String regexOptions
         3: .line 998
            invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
            invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:()Lcom/oracle/truffle/api/library/Library;
            checkcast com.oracle.truffle.api.interop.InteropLibrary
            aload 3 /* regexEngineBuilder */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* regexOptions */
            aastore
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         4: areturn
         5: .line 999
      StackMap locals: com.oracle.truffle.api.TruffleLanguage$Env com.oracle.truffle.js.runtime.JSContextOptions com.oracle.truffle.api.source.Source java.lang.Object java.lang.String
      StackMap stack: com.oracle.truffle.api.interop.InteropException
            astore 5 /* e */
        start local 5 // com.oracle.truffle.api.interop.InteropException e
         6: .line 1000
            aload 5 /* e */
            invokestatic com.oracle.truffle.js.runtime.Errors.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 5 // com.oracle.truffle.api.interop.InteropException e
        end local 4 // java.lang.String regexOptions
        end local 3 // java.lang.Object regexEngineBuilder
        end local 2 // com.oracle.truffle.api.source.Source engineBuilderRequest
        end local 1 // com.oracle.truffle.js.runtime.JSContextOptions options
        end local 0 // com.oracle.truffle.api.TruffleLanguage$Env env
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    7     0                   env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
            0    7     1               options  Lcom/oracle/truffle/js/runtime/JSContextOptions;
            1    7     2  engineBuilderRequest  Lcom/oracle/truffle/api/source/Source;
            2    7     3    regexEngineBuilder  Ljava/lang/Object;
            3    7     4          regexOptions  Ljava/lang/String;
            6    7     5                     e  Lcom/oracle/truffle/api/interop/InteropException;
      Exception table:
        from    to  target  type
           3     4       5  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           3     4       5  Class com.oracle.truffle.api.interop.UnsupportedTypeException
           3     4       5  Class com.oracle.truffle.api.interop.ArityException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      env      
      options  

  public com.oracle.truffle.api.object.Shape getRegExpGroupsEmptyShape();
    descriptor: ()Lcom/oracle/truffle/api/object/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1005
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.regExpGroupsEmptyShape:Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public void setSymbolRegistry(java.util.Map<java.lang.String, com.oracle.truffle.js.runtime.Symbol>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // java.util.Map newSymbolRegistry
         0: .line 1009
            aload 0 /* this */
            aload 1 /* newSymbolRegistry */
            putfield com.oracle.truffle.js.runtime.JSContext.symbolRegistry:Ljava/util/Map;
         1: .line 1010
            return
        end local 1 // java.util.Map newSymbolRegistry
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  newSymbolRegistry  Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/js/runtime/Symbol;>;
    Signature: (Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/js/runtime/Symbol;>;)V
    MethodParameters:
                   Name  Flags
      newSymbolRegistry  

  public java.util.Map<com.oracle.truffle.api.object.Shape, com.oracle.truffle.js.runtime.objects.JSShapeData> getShapeDataMap();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1013
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1014
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.shapeDataMap:Ljava/util/Map;
            astore 1 /* map */
        start local 1 // java.util.Map map
         2: .line 1015
            aload 1 /* map */
            ifnonnull 4
         3: .line 1016
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.createShapeDataMap:()Ljava/util/Map;
            astore 1 /* map */
         4: .line 1018
      StackMap locals: java.util.Map
      StackMap stack:
            aload 1 /* map */
            areturn
        end local 1 // java.util.Map map
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            2    5     1   map  Ljava/util/Map<Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/js/runtime/objects/JSShapeData;>;
    Signature: ()Ljava/util/Map<Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/js/runtime/objects/JSShapeData;>;

  private java.util.Map<com.oracle.truffle.api.object.Shape, com.oracle.truffle.js.runtime.objects.JSShapeData> createShapeDataMap();
    descriptor: ()Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1022
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
         1: .line 1023
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            astore 1 /* map */
        start local 1 // java.util.Map map
         2: .line 1024
            aload 0 /* this */
            aload 1 /* map */
            putfield com.oracle.truffle.js.runtime.JSContext.shapeDataMap:Ljava/util/Map;
         3: .line 1025
            aload 1 /* map */
            areturn
        end local 1 // java.util.Map map
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            2    4     1   map  Ljava/util/Map<Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/js/runtime/objects/JSShapeData;>;
    Signature: ()Ljava/util/Map<Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/js/runtime/objects/JSShapeData;>;

  public com.oracle.truffle.js.lang.JavaScriptLanguage getLanguage();
    descriptor: ()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1029
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.language:Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private com.oracle.truffle.api.TruffleLanguage$Env getEnv();
    descriptor: ()Lcom/oracle/truffle/api/TruffleLanguage$Env;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1033
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.truffleLanguageEnv:Lcom/oracle/truffle/api/TruffleLanguage$Env;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.api.CallTarget getEmptyFunctionCallTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1037
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.emptyFunctionCallTarget:Lcom/oracle/truffle/api/CallTarget;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private static com.oracle.truffle.api.CallTarget createEmptyFunctionCallTarget(com.oracle.truffle.js.lang.JavaScriptLanguage);
    descriptor: (Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/CallTarget;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
         0: .line 1042
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$1
            dup
            aload 0 /* lang */
            aconst_null
            aconst_null
            invokespecial com.oracle.truffle.js.runtime.JSContext$1.<init>:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            areturn
        end local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
    MethodParameters:
      Name  Flags
      lang  

  public com.oracle.truffle.api.CallTarget getSpeciesGetterFunctionCallTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1051
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.speciesGetterFunctionCallTarget:Lcom/oracle/truffle/api/CallTarget;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private static com.oracle.truffle.api.CallTarget createSpeciesGetterFunctionCallTarget(com.oracle.truffle.js.lang.JavaScriptLanguage);
    descriptor: (Lcom/oracle/truffle/js/lang/JavaScriptLanguage;)Lcom/oracle/truffle/api/CallTarget;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
         0: .line 1055
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$2
            dup
            aload 0 /* lang */
            aconst_null
            aconst_null
            invokespecial com.oracle.truffle.js.runtime.JSContext$2.<init>:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            areturn
        end local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
    MethodParameters:
      Name  Flags
      lang  

  public com.oracle.truffle.api.CallTarget getNotConstructibleCallTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1065
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.notConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.CallTarget result
         1: .line 1066
            aload 1 /* result */
            ifnonnull 10
         2: .line 1067
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1068
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.notConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         4: .line 1069
            aload 1 /* result */
            ifnonnull 6
         5: .line 1070
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLanguage:()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            iconst_0
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.JSContext.createNotConstructibleCallTarget:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;ZLcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/RootCallTarget;
            dup_x1
            putfield com.oracle.truffle.js.runtime.JSContext.notConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         6: .line 1067
      StackMap locals: com.oracle.truffle.api.CallTarget com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 1074
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget result
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1   11     1  result  Lcom/oracle/truffle/api/CallTarget;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public com.oracle.truffle.api.CallTarget getGeneratorNotConstructibleCallTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1079
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.generatorNotConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.CallTarget result
         1: .line 1080
            aload 1 /* result */
            ifnonnull 10
         2: .line 1081
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1082
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.generatorNotConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         4: .line 1083
            aload 1 /* result */
            ifnonnull 6
         5: .line 1084
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLanguage:()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            iconst_1
            aload 0 /* this */
            invokestatic com.oracle.truffle.js.runtime.JSContext.createNotConstructibleCallTarget:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;ZLcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/RootCallTarget;
            dup_x1
            putfield com.oracle.truffle.js.runtime.JSContext.generatorNotConstructibleCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         6: .line 1081
      StackMap locals: com.oracle.truffle.api.CallTarget com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 1088
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget result
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1   11     1  result  Lcom/oracle/truffle/api/CallTarget;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  private static com.oracle.truffle.api.RootCallTarget createNotConstructibleCallTarget(com.oracle.truffle.js.lang.JavaScriptLanguage, boolean, com.oracle.truffle.js.runtime.JSContext);
    descriptor: (Lcom/oracle/truffle/js/lang/JavaScriptLanguage;ZLcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/api/RootCallTarget;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
        start local 1 // boolean generator
        start local 2 // com.oracle.truffle.js.runtime.JSContext context
         0: .line 1092
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$3
            dup
            aload 0 /* lang */
            aconst_null
            aconst_null
            iload 1 /* generator */
            aload 2 /* context */
            invokespecial com.oracle.truffle.js.runtime.JSContext$3.<init>:(Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;ZLcom/oracle/truffle/js/runtime/JSContext;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            areturn
        end local 2 // com.oracle.truffle.js.runtime.JSContext context
        end local 1 // boolean generator
        end local 0 // com.oracle.truffle.js.lang.JavaScriptLanguage lang
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       lang  Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            0    1     1  generator  Z
            0    1     2    context  Lcom/oracle/truffle/js/runtime/JSContext;
    MethodParameters:
           Name  Flags
      lang       
      generator  
      context    

  public com.oracle.truffle.api.CallTarget getBoundFunctionCallTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1106
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.CallTarget result
         1: .line 1107
            aload 1 /* result */
            ifnonnull 10
         2: .line 1108
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1109
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         4: .line 1110
            aload 1 /* result */
            ifnonnull 6
         5: .line 1111
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 0 /* this */
            iconst_0
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunction.createBoundRootNode:(Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/api/nodes/RootNode;
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            dup_x1
            putfield com.oracle.truffle.js.runtime.JSContext.boundFunctionCallTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         6: .line 1108
      StackMap locals: com.oracle.truffle.api.CallTarget com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 1115
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget result
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1   11     1  result  Lcom/oracle/truffle/api/CallTarget;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public com.oracle.truffle.api.CallTarget getBoundFunctionConstructTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1120
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.CallTarget result
         1: .line 1121
            aload 1 /* result */
            ifnonnull 10
         2: .line 1122
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1123
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         4: .line 1124
            aload 1 /* result */
            ifnonnull 6
         5: .line 1125
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 0 /* this */
            iconst_1
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunction.createBoundRootNode:(Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/api/nodes/RootNode;
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            dup_x1
            putfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         6: .line 1122
      StackMap locals: com.oracle.truffle.api.CallTarget com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 1129
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget result
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1   11     1  result  Lcom/oracle/truffle/api/CallTarget;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public com.oracle.truffle.api.CallTarget getBoundFunctionConstructNewTarget();
    descriptor: ()Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1134
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructNewTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.CallTarget result
         1: .line 1135
            aload 1 /* result */
            ifnonnull 10
         2: .line 1136
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1137
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructNewTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         4: .line 1138
            aload 1 /* result */
            ifnonnull 6
         5: .line 1139
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 0 /* this */
            iconst_1
            iconst_1
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunction.createBoundRootNode:(Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/api/nodes/RootNode;
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            dup_x1
            putfield com.oracle.truffle.js.runtime.JSContext.boundFunctionConstructNewTargetCache:Lcom/oracle/truffle/api/CallTarget;
            astore 1 /* result */
         6: .line 1136
      StackMap locals: com.oracle.truffle.api.CallTarget com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 1143
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget result
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1   11     1  result  Lcom/oracle/truffle/api/CallTarget;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public com.oracle.truffle.js.runtime.builtins.JSFunctionData getBoundFunctionData(boolean);
    descriptor: (Z)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=17, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // boolean constructor
         0: .line 1147
            iload 1 /* constructor */
            ifeq 1
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundConstructorFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.builtins.JSFunctionData
         2: astore 2 /* result */
        start local 2 // com.oracle.truffle.js.runtime.builtins.JSFunctionData result
         3: .line 1148
            aload 2 /* result */
            ifnonnull 22
         4: .line 1149
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         5: .line 1150
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         6: .line 1151
            iload 1 /* constructor */
            ifeq 7
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundConstructorFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            goto 8
      StackMap locals: com.oracle.truffle.js.runtime.builtins.JSFunctionData com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
         7: aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.builtins.JSFunctionData
         8: astore 2 /* result */
         9: .line 1152
            aload 2 /* result */
            ifnonnull 18
        10: .line 1153
            aload 0 /* this */
        11: .line 1154
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getBoundFunctionCallTarget:()Lcom/oracle/truffle/api/CallTarget;
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getBoundFunctionConstructTarget:()Lcom/oracle/truffle/api/CallTarget;
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getBoundFunctionConstructNewTarget:()Lcom/oracle/truffle/api/CallTarget;
        12: .line 1155
            iconst_0
            ldc "bound"
            iload 1 /* constructor */
            iconst_0
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            iconst_1
            iconst_0
            iconst_1
        13: .line 1153
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunctionData.create:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/CallTarget;Lcom/oracle/truffle/api/CallTarget;Lcom/oracle/truffle/api/CallTarget;ILjava/lang/String;ZZZZZZZZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            astore 2 /* result */
        14: .line 1156
            iload 1 /* constructor */
            ifeq 17
        15: .line 1157
            aload 0 /* this */
            aload 2 /* result */
            putfield com.oracle.truffle.js.runtime.JSContext.boundConstructorFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        16: .line 1158
            goto 18
        17: .line 1159
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* result */
            putfield com.oracle.truffle.js.runtime.JSContext.boundFunctionData:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
        18: .line 1150
      StackMap locals:
      StackMap stack:
            aload 3
            monitorexit
        19: goto 22
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: aload 3
            monitorexit
        21: athrow
        22: .line 1164
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // com.oracle.truffle.js.runtime.builtins.JSFunctionData result
        end local 1 // boolean constructor
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Lcom/oracle/truffle/js/runtime/JSContext;
            0   23     1  constructor  Z
            3   23     2       result  Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
      Exception table:
        from    to  target  type
           6    19      20  any
          20    21      20  any
    MethodParameters:
             Name  Flags
      constructor  

  public com.oracle.truffle.js.runtime.JSAgent getJSAgent();
    descriptor: ()Lcom/oracle/truffle/js/runtime/JSAgent;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1168
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getAgent:()Lcom/oracle/truffle/js/runtime/JSAgent;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public int getEcmaScriptVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1172
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getEcmaScriptVersion:()I
            istore 1 /* version */
        start local 1 // int version
         1: .line 1173
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 3
            iload 1 /* version */
            iconst_5
            if_icmplt 2
            iload 1 /* version */
            bipush 13
            if_icmple 3
      StackMap locals: int
      StackMap stack:
         2: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1174
      StackMap locals:
      StackMap stack:
            iload 1 /* version */
            ireturn
        end local 1 // int version
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    4     1  version  I

  public int getPropertyCacheLimit();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1178
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getPropertyCacheLimit:()I
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public int getFunctionCacheLimit();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1182
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getFunctionCacheLimit:()I
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  void setAllocationReporter(com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 1186
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
         1: .line 1187
            aload 0 /* this */
            aload 1 /* env */
            ldc Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.instrumentation.AllocationReporter
            putfield com.oracle.truffle.js.runtime.JSContext.allocationReporter:Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
         2: .line 1188
            return
        end local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1   env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
    MethodParameters:
      Name  Flags
      env   

  public final com.oracle.truffle.api.instrumentation.AllocationReporter getAllocationReporter();
    descriptor: ()Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1191
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.realmInit:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            iconst_2
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            ldc "getAllocationReporter() during Realm initialization"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.allocationReporter:Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final <T> T trackAllocation();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // java.lang.Object object
         0: .line 1196
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getAllocationReporter:()Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
            astore 2 /* reporter */
        start local 2 // com.oracle.truffle.api.instrumentation.AllocationReporter reporter
         1: .line 1197
            aload 2 /* reporter */
            ifnull 4
         2: .line 1198
            aload 2 /* reporter */
            aconst_null
            lconst_0
            ldc -9223372036854775808
            invokevirtual com.oracle.truffle.api.instrumentation.AllocationReporter.onEnter:(Ljava/lang/Object;JJ)V
         3: .line 1199
            aload 2 /* reporter */
            aload 1 /* object */
            lconst_0
            ldc -9223372036854775808
            invokevirtual com.oracle.truffle.api.instrumentation.AllocationReporter.onReturnValue:(Ljava/lang/Object;JJ)V
         4: .line 1201
      StackMap locals: com.oracle.truffle.api.instrumentation.AllocationReporter
      StackMap stack:
            aload 1 /* object */
            areturn
        end local 2 // com.oracle.truffle.api.instrumentation.AllocationReporter reporter
        end local 1 // java.lang.Object object
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    5     1    object  TT;
            1    5     2  reporter  Lcom/oracle/truffle/api/instrumentation/AllocationReporter;
    Signature: <T:Ljava/lang/Object;>(TT;)TT;
    MethodParameters:
        Name  Flags
      object  

  public boolean isOptionAnnexB();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1205
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isAnnexB:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionIntl402();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1209
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option intl-402 accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isIntl402:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionRegexpMatchIndices();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1214
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexpMatchIndices:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionRegexpStaticResult();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1218
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option static-regex-result accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexpStaticResult:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionRegexpStaticResultInContextInit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1223
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isRegexpStaticResult:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionArraySortInherited();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1227
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option array-sort-inherited accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isArraySortInherited:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionSharedArrayBuffer();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1232
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isSharedArrayBuffer:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionAtomics();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1236
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isAtomics:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionV8CompatibilityMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1240
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option v8-compat accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isV8CompatibilityMode:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionV8CompatibilityModeInContextInit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1251
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isV8CompatibilityMode:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionNashornCompatibilityMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1255
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isNashornCompatibilityMode:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionDebugBuiltin();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1259
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isDebugBuiltin:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionDirectByteBuffer();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1263
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option direct-byte-buffer accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isDirectByteBuffer:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionParseOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1268
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isParseOnly:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionDisableEval();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1272
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isDisableEval:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionDisableWith();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1276
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isDisableWith:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionAsyncStackTraces();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1280
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isAsyncStackTraces:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public long getTimerResolution();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1284
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            ifnull 1
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.isPreInitialization:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "Patchable option timer-resolution accessed during context pre-initialization."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getTimerResolution:()J
            lreturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public long getFunctionArgumentsLimit();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1289
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getFunctionArgumentsLimit:()J
            lreturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public int getStringLengthLimit();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1293
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getStringLengthLimit:()I
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean usePromiseResolve();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1297
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isAwaitOptimization:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void setPrepareStackTraceCallback(com.oracle.truffle.js.runtime.PrepareStackTraceCallback);
    descriptor: (Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.PrepareStackTraceCallback callback
         0: .line 1301
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePrepareStackTraceCallbackNotUsedAssumption:()V
         1: .line 1302
            aload 0 /* this */
            aload 1 /* callback */
            putfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallback:Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;
         2: .line 1303
            return
        end local 1 // com.oracle.truffle.js.runtime.PrepareStackTraceCallback callback
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  callback  Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;
    MethodParameters:
          Name  Flags
      callback  

  public final com.oracle.truffle.js.runtime.PrepareStackTraceCallback getPrepareStackTraceCallback();
    descriptor: ()Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1306
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallback:Lcom/oracle/truffle/js/runtime/PrepareStackTraceCallback;
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.PrepareStackTraceCallback
         2: areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private void invalidatePrepareStackTraceCallbackNotUsedAssumption();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1310
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 3
         1: .line 1311
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         2: .line 1312
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.prepareStackTraceCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            ldc "prepare stack trace callback unused"
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:(Ljava/lang/String;)V
         3: .line 1314
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void setPromiseRejectionTracker(com.oracle.truffle.js.runtime.PromiseRejectionTracker);
    descriptor: (Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.PromiseRejectionTracker tracker
         0: .line 1317
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePromiseRejectionTrackerNotUsedAssumption:()V
         1: .line 1318
            aload 0 /* this */
            aload 1 /* tracker */
            putfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
         2: .line 1319
            return
        end local 1 // com.oracle.truffle.js.runtime.PromiseRejectionTracker tracker
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  tracker  Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
    MethodParameters:
         Name  Flags
      tracker  

  private void invalidatePromiseRejectionTrackerNotUsedAssumption();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1322
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTrackerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 3
         1: .line 1323
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         2: .line 1324
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTrackerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            ldc "promise rejection tracker unused"
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:(Ljava/lang/String;)V
         3: .line 1326
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public void notifyPromiseRejectionTracker(com.oracle.truffle.api.object.DynamicObject, int, java.lang.Object);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
        start local 2 // int operation
        start local 3 // java.lang.Object value
         0: .line 1329
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTrackerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifne 11
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
            ifnull 11
         1: .line 1330
            iload 2 /* operation */
            tableswitch { // 0 - 3
                    0: 2
                    1: 4
                    2: 6
                    3: 8
              default: 10
          }
         2: .line 1332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* promise */
            aload 3 /* value */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invokePromiseRejected:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         3: .line 1333
            goto 11
         4: .line 1335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* promise */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invokePromiseRejectionHandled:(Lcom/oracle/truffle/api/object/DynamicObject;)V
         5: .line 1336
            goto 11
         6: .line 1338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* promise */
            aload 3 /* value */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invokePromiseRejectedAfterResolved:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         7: .line 1339
            goto 11
         8: .line 1341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* promise */
            aload 3 /* value */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invokePromiseResolvedAfterResolved:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         9: .line 1342
            goto 11
        10: .line 1344
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 11
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown operation: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* operation */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        11: .line 1347
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object value
        end local 2 // int operation
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/oracle/truffle/js/runtime/JSContext;
            0   12     1    promise  Lcom/oracle/truffle/api/object/DynamicObject;
            0   12     2  operation  I
            0   12     3      value  Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      promise    
      operation  
      value      

  private void invokePromiseRejected(com.oracle.truffle.api.object.DynamicObject, java.lang.Object);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
        start local 2 // java.lang.Object value
         0: .line 1351
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
            aload 1 /* promise */
            aload 2 /* value */
            invokeinterface com.oracle.truffle.js.runtime.PromiseRejectionTracker.promiseRejected:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         1: .line 1352
            return
        end local 2 // java.lang.Object value
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  promise  Lcom/oracle/truffle/api/object/DynamicObject;
            0    2     2    value  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      promise  
      value    

  private void invokePromiseRejectionHandled(com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
         0: .line 1356
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
            aload 1 /* promise */
            invokeinterface com.oracle.truffle.js.runtime.PromiseRejectionTracker.promiseRejectionHandled:(Lcom/oracle/truffle/api/object/DynamicObject;)V
         1: .line 1357
            return
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  promise  Lcom/oracle/truffle/api/object/DynamicObject;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      promise  

  private void invokePromiseRejectedAfterResolved(com.oracle.truffle.api.object.DynamicObject, java.lang.Object);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
        start local 2 // java.lang.Object value
         0: .line 1361
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
            aload 1 /* promise */
            aload 2 /* value */
            invokeinterface com.oracle.truffle.js.runtime.PromiseRejectionTracker.promiseRejectedAfterResolved:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         1: .line 1362
            return
        end local 2 // java.lang.Object value
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  promise  Lcom/oracle/truffle/api/object/DynamicObject;
            0    2     2    value  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      promise  
      value    

  private void invokePromiseResolvedAfterResolved(com.oracle.truffle.api.object.DynamicObject, java.lang.Object);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
        start local 2 // java.lang.Object value
         0: .line 1366
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseRejectionTracker:Lcom/oracle/truffle/js/runtime/PromiseRejectionTracker;
            aload 1 /* promise */
            aload 2 /* value */
            invokeinterface com.oracle.truffle.js.runtime.PromiseRejectionTracker.promiseResolvedAfterResolved:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)V
         1: .line 1367
            return
        end local 2 // java.lang.Object value
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  promise  Lcom/oracle/truffle/api/object/DynamicObject;
            0    2     2    value  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      promise  
      value    

  public final void setPromiseHook(com.oracle.truffle.js.runtime.PromiseHook);
    descriptor: (Lcom/oracle/truffle/js/runtime/PromiseHook;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.PromiseHook promiseHook
         0: .line 1370
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.invalidatePromiseHookNotUsedAssumption:()V
         1: .line 1371
            aload 0 /* this */
            aload 1 /* promiseHook */
            putfield com.oracle.truffle.js.runtime.JSContext.promiseHook:Lcom/oracle/truffle/js/runtime/PromiseHook;
         2: .line 1372
            return
        end local 1 // com.oracle.truffle.js.runtime.PromiseHook promiseHook
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  promiseHook  Lcom/oracle/truffle/js/runtime/PromiseHook;
    MethodParameters:
             Name  Flags
      promiseHook  

  private void invalidatePromiseHookNotUsedAssumption();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1375
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseHookNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 3
         1: .line 1376
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         2: .line 1377
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseHookNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            ldc "promise hook unused"
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:(Ljava/lang/String;)V
         3: .line 1379
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void notifyPromiseHook(int, com.oracle.truffle.api.object.DynamicObject);
    descriptor: (ILcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // int changeType
        start local 2 // com.oracle.truffle.api.object.DynamicObject promise
         0: .line 1385
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseHookNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifne 8
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseHook:Lcom/oracle/truffle/js/runtime/PromiseHook;
            ifnull 8
         1: .line 1386
            iload 1 /* changeType */
            iconst_m1
            if_icmpne 4
         2: .line 1388
            aload 0 /* this */
            aload 2 /* promise */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.storeParentPromise:(Lcom/oracle/truffle/api/object/DynamicObject;)V
         3: .line 1389
            goto 8
         4: .line 1390
      StackMap locals:
      StackMap stack:
            iload 1 /* changeType */
            ifne 5
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.fetchParentPromise:()Lcom/oracle/truffle/api/object/DynamicObject;
            goto 6
      StackMap locals:
      StackMap stack:
         5: getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.object.DynamicObject
         6: astore 3 /* parent */
        start local 3 // com.oracle.truffle.api.object.DynamicObject parent
         7: .line 1391
            aload 0 /* this */
            iload 1 /* changeType */
            aload 2 /* promise */
            aload 3 /* parent */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.notifyPromiseHookImpl:(ILcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/DynamicObject;)V
        end local 3 // com.oracle.truffle.api.object.DynamicObject parent
         8: .line 1394
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.oracle.truffle.api.object.DynamicObject promise
        end local 1 // int changeType
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    9     1  changeType  I
            0    9     2     promise  Lcom/oracle/truffle/api/object/DynamicObject;
            7    8     3      parent  Lcom/oracle/truffle/api/object/DynamicObject;
    MethodParameters:
            Name  Flags
      changeType  
      promise     

  private void storeParentPromise(com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject promise
         0: .line 1397
            aload 0 /* this */
            aload 1 /* promise */
            putfield com.oracle.truffle.js.runtime.JSContext.parentPromise:Lcom/oracle/truffle/api/object/DynamicObject;
         1: .line 1398
            return
        end local 1 // com.oracle.truffle.api.object.DynamicObject promise
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  promise  Lcom/oracle/truffle/api/object/DynamicObject;
    MethodParameters:
         Name  Flags
      promise  

  private com.oracle.truffle.api.object.DynamicObject fetchParentPromise();
    descriptor: ()Lcom/oracle/truffle/api/object/DynamicObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1401
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.parentPromise:Lcom/oracle/truffle/api/object/DynamicObject;
            astore 1 /* parent */
        start local 1 // com.oracle.truffle.api.object.DynamicObject parent
         1: .line 1402
            aload 1 /* parent */
            ifnonnull 4
         2: .line 1403
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            astore 1 /* parent */
         3: .line 1404
            goto 5
         4: .line 1405
      StackMap locals: com.oracle.truffle.api.object.DynamicObject
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.oracle.truffle.js.runtime.JSContext.parentPromise:Lcom/oracle/truffle/api/object/DynamicObject;
         5: .line 1407
      StackMap locals:
      StackMap stack:
            aload 1 /* parent */
            areturn
        end local 1 // com.oracle.truffle.api.object.DynamicObject parent
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    6     1  parent  Lcom/oracle/truffle/api/object/DynamicObject;

  private void notifyPromiseHookImpl(int, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.DynamicObject);
    descriptor: (ILcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // int changeType
        start local 2 // com.oracle.truffle.api.object.DynamicObject promise
        start local 3 // com.oracle.truffle.api.object.DynamicObject parent
         0: .line 1412
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.promiseHook:Lcom/oracle/truffle/js/runtime/PromiseHook;
            iload 1 /* changeType */
            aload 2 /* promise */
            aload 3 /* parent */
            invokeinterface com.oracle.truffle.js.runtime.PromiseHook.promiseChanged:(ILcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/DynamicObject;)V
         1: .line 1413
            return
        end local 3 // com.oracle.truffle.api.object.DynamicObject parent
        end local 2 // com.oracle.truffle.api.object.DynamicObject promise
        end local 1 // int changeType
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  changeType  I
            0    2     2     promise  Lcom/oracle/truffle/api/object/DynamicObject;
            0    2     3      parent  Lcom/oracle/truffle/api/object/DynamicObject;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
            Name  Flags
      changeType  
      promise     
      parent      

  public final void setImportMetaInitializer(com.oracle.truffle.js.runtime.ImportMetaInitializer);
    descriptor: (Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.ImportMetaInitializer importMetaInitializer
         0: .line 1416
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            ldc "ImportMetaInitializer unused"
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:(Ljava/lang/String;)V
         1: .line 1417
            aload 0 /* this */
            aload 1 /* importMetaInitializer */
            putfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializer:Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;
         2: .line 1418
            return
        end local 1 // com.oracle.truffle.js.runtime.ImportMetaInitializer importMetaInitializer
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                   this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  importMetaInitializer  Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;
    MethodParameters:
                       Name  Flags
      importMetaInitializer  

  public final boolean hasImportMetaInitializerBeenSet();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1421
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializerNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void notifyImportMetaInitializer(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.objects.JSModuleRecord);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/objects/JSModuleRecord;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.object.DynamicObject importMeta
        start local 2 // com.oracle.truffle.js.runtime.objects.JSModuleRecord module
         0: .line 1426
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializer:Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;
            ifnull 2
         1: .line 1427
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importMetaInitializer:Lcom/oracle/truffle/js/runtime/ImportMetaInitializer;
            aload 1 /* importMeta */
            aload 2 /* module */
            invokeinterface com.oracle.truffle.js.runtime.ImportMetaInitializer.initializeImportMeta:(Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/objects/JSModuleRecord;)V
         2: .line 1429
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.oracle.truffle.js.runtime.objects.JSModuleRecord module
        end local 1 // com.oracle.truffle.api.object.DynamicObject importMeta
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  importMeta  Lcom/oracle/truffle/api/object/DynamicObject;
            0    3     2      module  Lcom/oracle/truffle/js/runtime/objects/JSModuleRecord;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
            Name  Flags
      importMeta  
      module      

  public final void setImportModuleDynamicallyCallback(com.oracle.truffle.js.runtime.ImportModuleDynamicallyCallback);
    descriptor: (Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.ImportModuleDynamicallyCallback callback
         0: .line 1432
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.invalidate:()V
         1: .line 1433
            aload 0 /* this */
            aload 1 /* callback */
            putfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallback:Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;
         2: .line 1434
            return
        end local 1 // com.oracle.truffle.js.runtime.ImportModuleDynamicallyCallback callback
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  callback  Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;
    MethodParameters:
          Name  Flags
      callback  

  public final boolean hasImportModuleDynamicallyCallbackBeenSet();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1437
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallbackNotUsedAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final com.oracle.truffle.api.object.DynamicObject hostImportModuleDynamically(com.oracle.truffle.js.runtime.JSRealm, com.oracle.truffle.js.runtime.objects.ScriptOrModule, java.lang.String);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSRealm;Lcom/oracle/truffle/js/runtime/objects/ScriptOrModule;Ljava/lang/String;)Lcom/oracle/truffle/api/object/DynamicObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 2 // com.oracle.truffle.js.runtime.objects.ScriptOrModule referrer
        start local 3 // java.lang.String specifier
         0: .line 1448
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallback:Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;
            ifnull 2
         1: .line 1449
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.importModuleDynamicallyCallback:Lcom/oracle/truffle/js/runtime/ImportModuleDynamicallyCallback;
            aload 1 /* realm */
            aload 2 /* referrer */
            aload 3 /* specifier */
            invokeinterface com.oracle.truffle.js.runtime.ImportModuleDynamicallyCallback.importModuleDynamically:(Lcom/oracle/truffle/js/runtime/JSRealm;Lcom/oracle/truffle/js/runtime/objects/ScriptOrModule;Ljava/lang/String;)Lcom/oracle/truffle/api/object/DynamicObject;
            areturn
         2: .line 1451
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.String specifier
        end local 2 // com.oracle.truffle.js.runtime.objects.ScriptOrModule referrer
        end local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1      realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    3     2   referrer  Lcom/oracle/truffle/js/runtime/objects/ScriptOrModule;
            0    3     3  specifier  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
           Name  Flags
      realm      
      referrer   
      specifier  

  public final com.oracle.truffle.js.runtime.builtins.JSFunctionData getOrCreateBuiltinFunctionData(com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey, java.util.function.Function<com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.runtime.builtins.JSFunctionData>);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContext$BuiltinFunctionKey;Ljava/util/function/Function;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey key
        start local 2 // java.util.function.Function factory
         0: .line 1456
            aload 1 /* key */
            invokevirtual com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey.ordinal:()I
            istore 3 /* index */
        start local 3 // int index
         1: .line 1457
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionData:[Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            iload 3 /* index */
            aaload
            astore 4 /* functionData */
        start local 4 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
         2: .line 1458
            aload 4 /* functionData */
            ifnull 4
         3: .line 1459
            aload 4 /* functionData */
            areturn
         4: .line 1461
      StackMap locals: int com.oracle.truffle.js.runtime.builtins.JSFunctionData
      StackMap stack:
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         5: .line 1462
            aload 0 /* this */
            dup
            astore 5
            monitorenter
         6: .line 1463
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionData:[Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            iload 3 /* index */
            aaload
            astore 4 /* functionData */
         7: .line 1464
            aload 4 /* functionData */
            ifnonnull 10
         8: .line 1465
            aload 2 /* factory */
            aload 0 /* this */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.js.runtime.builtins.JSFunctionData
            astore 4 /* functionData */
         9: .line 1466
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionData:[Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            iload 3 /* index */
            aload 4 /* functionData */
            aastore
        10: .line 1468
      StackMap locals: com.oracle.truffle.js.runtime.JSContext
      StackMap stack:
            aload 4 /* functionData */
            aload 5
            monitorexit
        11: areturn
        12: .line 1462
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 5
            monitorexit
        13: athrow
        end local 4 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
        end local 3 // int index
        end local 2 // java.util.function.Function factory
        end local 1 // com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey key
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lcom/oracle/truffle/js/runtime/JSContext;
            0   14     1           key  Lcom/oracle/truffle/js/runtime/JSContext$BuiltinFunctionKey;
            0   14     2       factory  Ljava/util/function/Function<Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;>;
            1   14     3         index  I
            2   14     4  functionData  Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
      Exception table:
        from    to  target  type
           6    11      12  any
          12    13      12  any
    Signature: (Lcom/oracle/truffle/js/runtime/JSContext$BuiltinFunctionKey;Ljava/util/function/Function<Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;>;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    MethodParameters:
         Name  Flags
      key      
      factory  

  public final com.oracle.truffle.js.runtime.builtins.JSFunctionData getBuiltinFunctionData(com.oracle.truffle.js.runtime.builtins.Builtin);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/Builtin;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.Builtin key
         0: .line 1473
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
         1: .line 1474
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionDataMap:Ljava/util/Map;
            aload 1 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.js.runtime.builtins.JSFunctionData
            areturn
        end local 1 // com.oracle.truffle.js.runtime.builtins.Builtin key
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1   key  Lcom/oracle/truffle/js/runtime/builtins/Builtin;
    MethodParameters:
      Name  Flags
      key   

  public final void putBuiltinFunctionData(com.oracle.truffle.js.runtime.builtins.Builtin, com.oracle.truffle.js.runtime.builtins.JSFunctionData);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/Builtin;Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.Builtin key
        start local 2 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
         0: .line 1478
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
         1: .line 1479
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.builtinFunctionDataMap:Ljava/util/Map;
            aload 1 /* key */
            aload 2 /* functionData */
            invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1480
            return
        end local 2 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
        end local 1 // com.oracle.truffle.js.runtime.builtins.Builtin key
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1           key  Lcom/oracle/truffle/js/runtime/builtins/Builtin;
            0    3     2  functionData  Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    MethodParameters:
              Name  Flags
      key           
      functionData  

  public final boolean neverCreatedChildRealms();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1483
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.noChildRealmsAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final boolean isSingleRealm();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1487
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isMultiContext:()Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.singleRealmAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final void assumeSingleRealm();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1491
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.singleRealmAssumption:Lcom/oracle/truffle/api/Assumption;
            invokeinterface com.oracle.truffle.api.Assumption.check:()V
         1: .line 1492
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
    Exceptions:
      throws com.oracle.truffle.api.nodes.InvalidAssumptionException

  public final com.oracle.truffle.api.Assumption getSingleRealmAssumption();
    descriptor: ()Lcom/oracle/truffle/api/Assumption;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1495
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.singleRealmAssumption:Lcom/oracle/truffle/api/Assumption;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.JSContextOptions getContextOptions();
    descriptor: ()Lcom/oracle/truffle/js/runtime/JSContextOptions;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1499
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public final boolean isMultiContext();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1503
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.isMultiContext:Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.builtins.JSFunctionFactory getFunctionFactory(com.oracle.truffle.js.runtime.builtins.JSFunctionData);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
         0: .line 1507
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.isBuiltin:()Z
            istore 2 /* isBuiltin */
        start local 2 // boolean isBuiltin
         1: .line 1508
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.hasStrictFunctionProperties:()Z
            istore 3 /* strictFunctionProperties */
        start local 3 // boolean strictFunctionProperties
         2: .line 1509
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.isConstructor:()Z
            istore 4 /* isConstructor */
        start local 4 // boolean isConstructor
         3: .line 1510
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.isGenerator:()Z
            istore 5 /* isGenerator */
        start local 5 // boolean isGenerator
         4: .line 1511
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.isAsync:()Z
            istore 6 /* isAsync */
        start local 6 // boolean isAsync
         5: .line 1512
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 7
            iload 2 /* isBuiltin */
            ifeq 7
            iload 5 /* isGenerator */
            ifne 6
            iload 6 /* isAsync */
            ifeq 7
      StackMap locals: com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.builtins.JSFunctionData int int int int int
      StackMap stack:
         6: new java.lang.AssertionError
            dup
            ldc "built-in functions are never generator or async functions!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 1513
      StackMap locals:
      StackMap stack:
            iload 6 /* isAsync */
            ifeq 11
         8: .line 1514
            iload 5 /* isGenerator */
            ifeq 10
         9: .line 1515
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.asyncGeneratorFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        10: .line 1517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.asyncFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        11: .line 1519
      StackMap locals:
      StackMap stack:
            iload 5 /* isGenerator */
            ifeq 13
        12: .line 1520
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.generatorFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        13: .line 1521
      StackMap locals:
      StackMap stack:
            iload 4 /* isConstructor */
            ifeq 17
            iload 2 /* isBuiltin */
            ifne 17
        14: .line 1522
            iload 3 /* strictFunctionProperties */
            ifeq 16
        15: .line 1523
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.strictConstructorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        16: .line 1525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.constructorFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        17: .line 1529
      StackMap locals:
      StackMap stack:
            iload 3 /* strictFunctionProperties */
            ifeq 19
        18: .line 1530
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.strictFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        19: .line 1532
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.functionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        end local 6 // boolean isAsync
        end local 5 // boolean isGenerator
        end local 4 // boolean isConstructor
        end local 3 // boolean strictFunctionProperties
        end local 2 // boolean isBuiltin
        end local 1 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   20     0                      this  Lcom/oracle/truffle/js/runtime/JSContext;
            0   20     1              functionData  Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            1   20     2                 isBuiltin  Z
            2   20     3  strictFunctionProperties  Z
            3   20     4             isConstructor  Z
            4   20     5               isGenerator  Z
            5   20     6                   isAsync  Z
    MethodParameters:
              Name  Flags
      functionData  

  public com.oracle.truffle.js.runtime.builtins.JSFunctionFactory getBoundFunctionFactory(com.oracle.truffle.js.runtime.builtins.JSFunctionData);
    descriptor: (Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
         0: .line 1538
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 1 /* functionData */
            invokevirtual com.oracle.truffle.js.runtime.builtins.JSFunctionData.isStrict:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.boundFunctionFactory:Lcom/oracle/truffle/js/runtime/builtins/JSFunctionFactory;
            areturn
        end local 1 // com.oracle.truffle.js.runtime.builtins.JSFunctionData functionData
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    2     1  functionData  Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    MethodParameters:
              Name  Flags
      functionData  

  com.oracle.truffle.js.runtime.builtins.JSObjectFactory$RealmData newObjectFactoryRealmData();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSObjectFactory$RealmData;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1543
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isMultiContext:()Z
            ifeq 2
         1: .line 1544
            aconst_null
            areturn
         2: .line 1546
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.js.runtime.builtins.JSObjectFactory$RealmData
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.factoryCount:I
            invokespecial com.oracle.truffle.js.runtime.builtins.JSObjectFactory$RealmData.<init>:(I)V
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private com.oracle.truffle.js.runtime.builtins.JSFunctionData throwTypeErrorFunction();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1551
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$4
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLanguage:()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            aconst_null
            aconst_null
            invokespecial com.oracle.truffle.js.runtime.JSContext$4.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            astore 1 /* throwTypeErrorCallTarget */
        start local 1 // com.oracle.truffle.api.CallTarget throwTypeErrorCallTarget
         1: .line 1557
            aload 0 /* this */
            aload 1 /* throwTypeErrorCallTarget */
            aload 1 /* throwTypeErrorCallTarget */
            iconst_0
            ldc ""
            iconst_0
            iconst_0
            iconst_0
            iconst_1
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunctionData.create:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/CallTarget;Lcom/oracle/truffle/api/CallTarget;ILjava/lang/String;ZZZZ)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget throwTypeErrorCallTarget
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    2     1  throwTypeErrorCallTarget  Lcom/oracle/truffle/api/CallTarget;

  private com.oracle.truffle.js.runtime.builtins.JSFunctionData protoSetterFunction();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1561
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$5
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLanguage:()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            aconst_null
            aconst_null
            invokespecial com.oracle.truffle.js.runtime.JSContext$5.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            astore 1 /* callTarget */
        start local 1 // com.oracle.truffle.api.CallTarget callTarget
         1: .line 1583
            aload 0 /* this */
            aload 1 /* callTarget */
            iconst_0
            ldc "set __proto__"
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunctionData.createCallOnly:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/CallTarget;ILjava/lang/String;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget callTarget
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    2     1  callTarget  Lcom/oracle/truffle/api/CallTarget;

  private com.oracle.truffle.js.runtime.builtins.JSFunctionData protoGetterFunction();
    descriptor: ()Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1587
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.js.runtime.JSContext$6
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLanguage:()Lcom/oracle/truffle/js/lang/JavaScriptLanguage;
            aconst_null
            aconst_null
            invokespecial com.oracle.truffle.js.runtime.JSContext$6.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/lang/JavaScriptLanguage;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            astore 1 /* callTarget */
        start local 1 // com.oracle.truffle.api.CallTarget callTarget
         1: .line 1600
            aload 0 /* this */
            aload 1 /* callTarget */
            iconst_0
            ldc "get __proto__"
            invokestatic com.oracle.truffle.js.runtime.builtins.JSFunctionData.createCallOnly:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/CallTarget;ILjava/lang/String;)Lcom/oracle/truffle/js/runtime/builtins/JSFunctionData;
            areturn
        end local 1 // com.oracle.truffle.api.CallTarget callTarget
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    2     1  callTarget  Lcom/oracle/truffle/api/CallTarget;

  public void checkEvalAllowed();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1604
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.isOptionDisableEval:()Z
            ifeq 2
         1: .line 1605
            invokestatic com.oracle.truffle.js.runtime.Errors.createEvalDisabled:()Lcom/oracle/truffle/js/runtime/JSException;
            athrow
         2: .line 1607
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionLoadFromURL();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1610
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isLoadFromURL:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public boolean isOptionLoadFromClasspath();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1614
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.contextOptions:Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isLoadFromClasspath:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public java.util.Locale getLocale();
    descriptor: ()Ljava/util/Locale;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1618
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.locale:Ljava/util/Locale;
            astore 1 /* loc */
        start local 1 // java.util.Locale loc
         1: .line 1619
            aload 1 /* loc */
            ifnonnull 5
         2: .line 1620
            invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
         3: .line 1621
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getLocaleImpl:()Ljava/util/Locale;
            astore 1 /* loc */
         4: .line 1622
            aload 0 /* this */
            aload 1 /* loc */
            putfield com.oracle.truffle.js.runtime.JSContext.locale:Ljava/util/Locale;
         5: .line 1624
      StackMap locals: java.util.Locale
      StackMap stack:
            aload 1 /* loc */
            areturn
        end local 1 // java.util.Locale loc
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    6     1   loc  Ljava/util/Locale;

  private java.util.Locale getLocaleImpl();
    descriptor: ()Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1629
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getContextOptions:()Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.getLocale:()Ljava/lang/String;
            astore 1 /* name */
        start local 1 // java.lang.String name
         1: .line 1630
            aload 1 /* name */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
         2: .line 1631
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            areturn
         3: .line 1633
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* name */
            invokestatic java.util.Locale.forLanguageTag:(Ljava/lang/String;)Ljava/util/Locale;
            areturn
        end local 1 // java.lang.String name
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            1    4     1  name  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public com.oracle.truffle.js.runtime.objects.PropertyProxy getArgumentsPropertyProxy();
    descriptor: ()Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1638
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.argumentsPropertyProxy:Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public com.oracle.truffle.js.runtime.objects.PropertyProxy getCallerPropertyProxy();
    descriptor: ()Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1642
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.callerPropertyProxy:Lcom/oracle/truffle/js/runtime/objects/PropertyProxy;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  public <T extends com.oracle.truffle.api.nodes.Node> T adoptNode();
    descriptor: (Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
        start local 1 // com.oracle.truffle.api.nodes.Node node
         0: .line 1646
            getstatic com.oracle.truffle.js.runtime.JSContext.$assertionsDisabled:Z
            ifne 1
            aload 1 /* node */
            invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1647
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSContext.sharedRootNode:Lcom/oracle/truffle/js/runtime/JSContext$SharedRootNode;
            aload 1 /* node */
            invokevirtual com.oracle.truffle.js.runtime.JSContext$SharedRootNode.insertAccessor:(Lcom/oracle/truffle/api/nodes/Node;)V
         2: .line 1648
            aload 1 /* node */
            areturn
        end local 1 // com.oracle.truffle.api.nodes.Node node
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     1  node  TT;
    Signature: <T:Lcom/oracle/truffle/api/nodes/Node;>(TT;)TT;
    MethodParameters:
      Name  Flags
      node  

  public boolean isOptionTopLevelAwait();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSContext this
         0: .line 1664
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getContextOptions:()Lcom/oracle/truffle/js/runtime/JSContextOptions;
            invokevirtual com.oracle.truffle.js.runtime.JSContextOptions.isTopLevelAwait:()Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSContext;

  private static com.oracle.truffle.api.object.Shape lambda$4(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSContext c
        start local 1 // com.oracle.truffle.api.object.DynamicObject p
         0: .line 509
            aload 0 /* c */
            aload 1 /* p */
            invokestatic com.oracle.truffle.js.runtime.builtins.JSArrayBufferView.makeInitialArrayBufferViewShape:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
            areturn
        end local 1 // com.oracle.truffle.api.object.DynamicObject p
        end local 0 // com.oracle.truffle.js.runtime.JSContext c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Lcom/oracle/truffle/js/runtime/JSContext;
            0    1     1     p  Lcom/oracle/truffle/api/object/DynamicObject;
}
SourceFile: "JSContext.java"
NestMembers:
  com.oracle.truffle.js.runtime.JSContext$1  com.oracle.truffle.js.runtime.JSContext$2  com.oracle.truffle.js.runtime.JSContext$3  com.oracle.truffle.js.runtime.JSContext$4  com.oracle.truffle.js.runtime.JSContext$5  com.oracle.truffle.js.runtime.JSContext$6  com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey  com.oracle.truffle.js.runtime.JSContext$SharedRootNode
InnerClasses:
  public abstract CompilationFinal = com.oracle.truffle.api.CompilerDirectives$CompilationFinal of com.oracle.truffle.api.CompilerDirectives
  public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
  public abstract ContextReference = com.oracle.truffle.api.TruffleLanguage$ContextReference of com.oracle.truffle.api.TruffleLanguage
  public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
  public final LiteralBuilder = com.oracle.truffle.api.source.Source$LiteralBuilder of com.oracle.truffle.api.source.Source
  com.oracle.truffle.js.runtime.JSContext$1
  com.oracle.truffle.js.runtime.JSContext$2
  com.oracle.truffle.js.runtime.JSContext$3
  com.oracle.truffle.js.runtime.JSContext$4
  com.oracle.truffle.js.runtime.JSContext$5
  com.oracle.truffle.js.runtime.JSContext$6
  public final BuiltinFunctionKey = com.oracle.truffle.js.runtime.JSContext$BuiltinFunctionKey of com.oracle.truffle.js.runtime.JSContext
  final SharedRootNode = com.oracle.truffle.js.runtime.JSContext$SharedRootNode of com.oracle.truffle.js.runtime.JSContext
  public ArgumentsProxyProperty = com.oracle.truffle.js.runtime.builtins.JSFunction$ArgumentsProxyProperty of com.oracle.truffle.js.runtime.builtins.JSFunction
  public CallerProxyProperty = com.oracle.truffle.js.runtime.builtins.JSFunction$CallerProxyProperty of com.oracle.truffle.js.runtime.builtins.JSFunction
  public final BoundProto = com.oracle.truffle.js.runtime.builtins.JSObjectFactory$BoundProto of com.oracle.truffle.js.runtime.builtins.JSObjectFactory
  public final IntrinsicBuilder = com.oracle.truffle.js.runtime.builtins.JSObjectFactory$IntrinsicBuilder of com.oracle.truffle.js.runtime.builtins.JSObjectFactory
  public final RealmData = com.oracle.truffle.js.runtime.builtins.JSObjectFactory$RealmData of com.oracle.truffle.js.runtime.builtins.JSObjectFactory
  public abstract CompileRegexNode = com.oracle.truffle.js.runtime.util.TRegexUtil$CompileRegexNode of com.oracle.truffle.js.runtime.util.TRegexUtil
  public abstract InvokeExecMethodNode = com.oracle.truffle.js.runtime.util.TRegexUtil$InvokeExecMethodNode of com.oracle.truffle.js.runtime.util.TRegexUtil
  public final TRegexResultAccessor = com.oracle.truffle.js.runtime.util.TRegexUtil$TRegexResultAccessor of com.oracle.truffle.js.runtime.util.TRegexUtil
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles