public final class com.oracle.truffle.js.runtime.JSException extends com.oracle.truffle.js.runtime.GraalJSException
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.js.runtime.JSException
  super_class: com.oracle.truffle.js.runtime.GraalJSException
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2139936643139844157

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

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

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

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

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

  private void <init>(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, java.lang.Throwable, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.js.runtime.JSRealm, int);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Ljava/lang/Throwable;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 2 // java.lang.String message
        start local 3 // java.lang.Throwable cause
        start local 4 // com.oracle.truffle.api.nodes.Node originatingNode
        start local 5 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 6 // int stackTraceLimit
         0: .line 77
            aload 0 /* this */
            aload 2 /* message */
            aload 3 /* cause */
            aload 4 /* originatingNode */
            iload 6 /* stackTraceLimit */
            invokespecial com.oracle.truffle.js.runtime.GraalJSException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Lcom/oracle/truffle/api/nodes/Node;I)V
         1: .line 78
            ldc "JSException constructor"
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
         2: .line 79
            aload 0 /* this */
            aload 1 /* type */
            putfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
         3: .line 80
            aload 0 /* this */
            aconst_null
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
         4: .line 81
            aload 0 /* this */
            aload 5 /* realm */
            putfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
         5: .line 82
            aload 0 /* this */
            iconst_0
            putfield com.oracle.truffle.js.runtime.JSException.isIncompleteSource:Z
         6: .line 83
            return
        end local 6 // int stackTraceLimit
        end local 5 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 4 // com.oracle.truffle.api.nodes.Node originatingNode
        end local 3 // java.lang.Throwable cause
        end local 2 // java.lang.String message
        end local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lcom/oracle/truffle/js/runtime/JSException;
            0    7     1             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    7     2          message  Ljava/lang/String;
            0    7     3            cause  Ljava/lang/Throwable;
            0    7     4  originatingNode  Lcom/oracle/truffle/api/nodes/Node;
            0    7     5            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    7     6  stackTraceLimit  I
    MethodParameters:
                 Name  Flags
      type             
      message          
      cause            
      originatingNode  
      realm            
      stackTraceLimit  

  private void <init>(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.JSRealm, int);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 2 // java.lang.String message
        start local 3 // com.oracle.truffle.api.nodes.Node originatingNode
        start local 4 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        start local 5 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 6 // int stackTraceLimit
         0: .line 86
            aload 0 /* this */
            aload 2 /* message */
            aload 3 /* originatingNode */
            iload 6 /* stackTraceLimit */
            invokespecial com.oracle.truffle.js.runtime.GraalJSException.<init>:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;I)V
         1: .line 87
            ldc "JSException constructor"
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
         2: .line 88
            aload 0 /* this */
            aload 1 /* type */
            putfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
         3: .line 89
            aload 0 /* this */
            aload 4 /* exceptionObj */
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
         4: .line 90
            aload 0 /* this */
            aload 5 /* realm */
            putfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
         5: .line 91
            aload 0 /* this */
            iconst_0
            putfield com.oracle.truffle.js.runtime.JSException.isIncompleteSource:Z
         6: .line 92
            return
        end local 6 // int stackTraceLimit
        end local 5 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 4 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 3 // com.oracle.truffle.api.nodes.Node originatingNode
        end local 2 // java.lang.String message
        end local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lcom/oracle/truffle/js/runtime/JSException;
            0    7     1             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    7     2          message  Ljava/lang/String;
            0    7     3  originatingNode  Lcom/oracle/truffle/api/nodes/Node;
            0    7     4     exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
            0    7     5            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    7     6  stackTraceLimit  I
    MethodParameters:
                 Name  Flags
      type             
      message          
      originatingNode  
      exceptionObj     
      realm            
      stackTraceLimit  

  private void <init>(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.source.SourceSection, com.oracle.truffle.js.runtime.JSRealm, int, boolean);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/js/runtime/JSRealm;IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 2 // java.lang.String message
        start local 3 // com.oracle.truffle.api.source.SourceSection sourceLocation
        start local 4 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 5 // int stackTraceLimit
        start local 6 // boolean isIncompleteSource
         0: .line 95
            aload 0 /* this */
            aload 2 /* message */
            aload 3 /* sourceLocation */
            iload 5 /* stackTraceLimit */
            invokespecial com.oracle.truffle.js.runtime.GraalJSException.<init>:(Ljava/lang/String;Lcom/oracle/truffle/api/source/SourceSection;I)V
         1: .line 96
            ldc "JSException constructor"
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
         2: .line 97
            aload 0 /* this */
            aload 1 /* type */
            putfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
         3: .line 98
            aload 0 /* this */
            aconst_null
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
         4: .line 99
            aload 0 /* this */
            aload 4 /* realm */
            putfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
         5: .line 100
            aload 0 /* this */
            iload 6 /* isIncompleteSource */
            putfield com.oracle.truffle.js.runtime.JSException.isIncompleteSource:Z
         6: .line 101
            return
        end local 6 // boolean isIncompleteSource
        end local 5 // int stackTraceLimit
        end local 4 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 3 // com.oracle.truffle.api.source.SourceSection sourceLocation
        end local 2 // java.lang.String message
        end local 1 // com.oracle.truffle.js.runtime.JSErrorType type
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    7     0                this  Lcom/oracle/truffle/js/runtime/JSException;
            0    7     1                type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    7     2             message  Ljava/lang/String;
            0    7     3      sourceLocation  Lcom/oracle/truffle/api/source/SourceSection;
            0    7     4               realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    7     5     stackTraceLimit  I
            0    7     6  isIncompleteSource  Z
    MethodParameters:
                    Name  Flags
      type                
      message             
      sourceLocation      
      realm               
      stackTraceLimit     
      isIncompleteSource  

  public static com.oracle.truffle.js.runtime.JSException createCapture(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.JSRealm, int, com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;ILcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=6
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        start local 3 // com.oracle.truffle.js.runtime.JSRealm realm
        start local 4 // int stackTraceLimit
        start local 5 // com.oracle.truffle.api.object.DynamicObject skipFramesUpTo
         0: .line 105
            new com.oracle.truffle.js.runtime.JSException
            dup
            aload 0 /* type */
            aload 1 /* message */
            aconst_null
            aload 2 /* exceptionObj */
            aload 3 /* realm */
            iload 4 /* stackTraceLimit */
            invokespecial com.oracle.truffle.js.runtime.JSException.<init>:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
            aload 5 /* skipFramesUpTo */
            iconst_1
            invokestatic com.oracle.truffle.js.runtime.JSException.fillInStackTrace:(Lcom/oracle/truffle/js/runtime/GraalJSException;Lcom/oracle/truffle/api/object/DynamicObject;Z)Lcom/oracle/truffle/js/runtime/GraalJSException;
            checkcast com.oracle.truffle.js.runtime.JSException
            areturn
        end local 5 // com.oracle.truffle.api.object.DynamicObject skipFramesUpTo
        end local 4 // int stackTraceLimit
        end local 3 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    1     1          message  Ljava/lang/String;
            0    1     2     exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
            0    1     3            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            0    1     4  stackTraceLimit  I
            0    1     5   skipFramesUpTo  Lcom/oracle/truffle/api/object/DynamicObject;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
                 Name  Flags
      type             
      message          
      exceptionObj     
      realm            
      stackTraceLimit  
      skipFramesUpTo   

  public static com.oracle.truffle.js.runtime.JSException createCapture(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        start local 3 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 110
            aload 0 /* type */
            aload 1 /* message */
            aload 2 /* exceptionObj */
            aload 3 /* realm */
            aload 3 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.getStackTraceLimit:(Lcom/oracle/truffle/js/runtime/JSRealm;)I
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            invokestatic com.oracle.truffle.js.runtime.JSException.createCapture:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;ILcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/js/runtime/JSException;
            areturn
        end local 3 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    1     1       message  Ljava/lang/String;
            0    1     2  exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
            0    1     3         realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
              Name  Flags
      type          
      message       
      exceptionObj  
      realm         

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        start local 3 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 114
            aload 0 /* type */
            aload 1 /* message */
            aconst_null
            aload 2 /* exceptionObj */
            aload 3 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.create:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/js/runtime/JSException;
            areturn
        end local 3 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 2 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    1     1       message  Ljava/lang/String;
            0    1     2  exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
            0    1     3         realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
              Name  Flags
      type          
      message       
      exceptionObj  
      realm         

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.nodes.Node originatingNode
        start local 3 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        start local 4 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 119
            new com.oracle.truffle.js.runtime.JSException
            dup
            aload 0 /* type */
            aload 1 /* message */
            aload 2 /* originatingNode */
            aload 3 /* exceptionObj */
            aload 4 /* realm */
            aload 4 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.getStackTraceLimit:(Lcom/oracle/truffle/js/runtime/JSRealm;)I
            invokespecial com.oracle.truffle.js.runtime.JSException.<init>:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.JSException.fillInStackTrace:(Lcom/oracle/truffle/js/runtime/GraalJSException;Lcom/oracle/truffle/api/object/DynamicObject;Z)Lcom/oracle/truffle/js/runtime/GraalJSException;
            checkcast com.oracle.truffle.js.runtime.JSException
            areturn
        end local 4 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 3 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 2 // com.oracle.truffle.api.nodes.Node originatingNode
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    1     1          message  Ljava/lang/String;
            0    1     2  originatingNode  Lcom/oracle/truffle/api/nodes/Node;
            0    1     3     exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
            0    1     4            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
                 Name  Flags
      type             
      message          
      originatingNode  
      exceptionObj     
      realm            

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
         0: .line 123
            aload 0 /* type */
            aload 1 /* message */
            aconst_null
            invokestatic com.oracle.truffle.js.runtime.JSException.create:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/js/runtime/JSException;
            areturn
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    1     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      type     
      message  

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.nodes.Node);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.nodes.Node originatingNode
         0: .line 127
            invokestatic com.oracle.truffle.js.lang.JavaScriptLanguage.getCurrentJSRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            astore 3 /* realm */
        start local 3 // com.oracle.truffle.js.runtime.JSRealm realm
         1: .line 128
            new com.oracle.truffle.js.runtime.JSException
            dup
            aload 0 /* type */
            aload 1 /* message */
            aload 2 /* originatingNode */
            aconst_null
            aload 3 /* realm */
            aload 3 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.getStackTraceLimit:(Lcom/oracle/truffle/js/runtime/JSRealm;)I
            invokespecial com.oracle.truffle.js.runtime.JSException.<init>:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.JSException.fillInStackTrace:(Lcom/oracle/truffle/js/runtime/GraalJSException;Lcom/oracle/truffle/api/object/DynamicObject;Z)Lcom/oracle/truffle/js/runtime/GraalJSException;
            checkcast com.oracle.truffle.js.runtime.JSException
            areturn
        end local 3 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 2 // com.oracle.truffle.api.nodes.Node originatingNode
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    2     1          message  Ljava/lang/String;
            0    2     2  originatingNode  Lcom/oracle/truffle/api/nodes/Node;
            1    2     3            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
                 Name  Flags
      type             
      message          
      originatingNode  

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, java.lang.Throwable, com.oracle.truffle.api.nodes.Node);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Ljava/lang/Throwable;Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // java.lang.Throwable cause
        start local 3 // com.oracle.truffle.api.nodes.Node originatingNode
         0: .line 132
            invokestatic com.oracle.truffle.js.lang.JavaScriptLanguage.getCurrentJSRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            astore 4 /* realm */
        start local 4 // com.oracle.truffle.js.runtime.JSRealm realm
         1: .line 133
            new com.oracle.truffle.js.runtime.JSException
            dup
            aload 0 /* type */
            aload 1 /* message */
            aload 2 /* cause */
            aload 3 /* originatingNode */
            aload 4 /* realm */
            aload 4 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.getStackTraceLimit:(Lcom/oracle/truffle/js/runtime/JSRealm;)I
            invokespecial com.oracle.truffle.js.runtime.JSException.<init>:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Ljava/lang/Throwable;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/js/runtime/JSRealm;I)V
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.JSException.fillInStackTrace:(Lcom/oracle/truffle/js/runtime/GraalJSException;Lcom/oracle/truffle/api/object/DynamicObject;Z)Lcom/oracle/truffle/js/runtime/GraalJSException;
            checkcast com.oracle.truffle.js.runtime.JSException
            areturn
        end local 4 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 3 // com.oracle.truffle.api.nodes.Node originatingNode
        end local 2 // java.lang.Throwable cause
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    2     1          message  Ljava/lang/String;
            0    2     2            cause  Ljava/lang/Throwable;
            0    2     3  originatingNode  Lcom/oracle/truffle/api/nodes/Node;
            1    2     4            realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
                 Name  Flags
      type             
      message          
      cause            
      originatingNode  

  public static com.oracle.truffle.js.runtime.JSException create(com.oracle.truffle.js.runtime.JSErrorType, java.lang.String, com.oracle.truffle.api.source.SourceSection, boolean);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/source/SourceSection;Z)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSErrorType type
        start local 1 // java.lang.String message
        start local 2 // com.oracle.truffle.api.source.SourceSection sourceLocation
        start local 3 // boolean isIncompleteSource
         0: .line 137
            invokestatic com.oracle.truffle.js.lang.JavaScriptLanguage.getCurrentJSRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            astore 4 /* realm */
        start local 4 // com.oracle.truffle.js.runtime.JSRealm realm
         1: .line 138
            new com.oracle.truffle.js.runtime.JSException
            dup
            aload 0 /* type */
            aload 1 /* message */
            aload 2 /* sourceLocation */
            aload 4 /* realm */
            aload 4 /* realm */
            invokestatic com.oracle.truffle.js.runtime.JSException.getStackTraceLimit:(Lcom/oracle/truffle/js/runtime/JSRealm;)I
            iload 3 /* isIncompleteSource */
            invokespecial com.oracle.truffle.js.runtime.JSException.<init>:(Lcom/oracle/truffle/js/runtime/JSErrorType;Ljava/lang/String;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/js/runtime/JSRealm;IZ)V
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            iconst_0
            invokestatic com.oracle.truffle.js.runtime.JSException.fillInStackTrace:(Lcom/oracle/truffle/js/runtime/GraalJSException;Lcom/oracle/truffle/api/object/DynamicObject;Z)Lcom/oracle/truffle/js/runtime/GraalJSException;
            checkcast com.oracle.truffle.js.runtime.JSException
            areturn
        end local 4 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 3 // boolean isIncompleteSource
        end local 2 // com.oracle.truffle.api.source.SourceSection sourceLocation
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSErrorType type
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                type  Lcom/oracle/truffle/js/runtime/JSErrorType;
            0    2     1             message  Ljava/lang/String;
            0    2     2      sourceLocation  Lcom/oracle/truffle/api/source/SourceSection;
            0    2     3  isIncompleteSource  Z
            1    2     4               realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
                    Name  Flags
      type                
      message             
      sourceLocation      
      isIncompleteSource  

  public static int getStackTraceLimit(com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSRealm;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 142
            aload 0 /* realm */
            getstatic com.oracle.truffle.js.runtime.JSErrorType.Error:Lcom/oracle/truffle/js/runtime/JSErrorType;
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getErrorConstructor:(Lcom/oracle/truffle/js/runtime/JSErrorType;)Lcom/oracle/truffle/api/object/DynamicObject;
            astore 1 /* errorConstructor */
        start local 1 // com.oracle.truffle.api.object.DynamicObject errorConstructor
         1: .line 143
            aload 1 /* errorConstructor */
            ldc "stackTraceLimit"
            invokestatic com.oracle.truffle.js.runtime.objects.JSObject.get:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* stackTraceLimit */
        start local 2 // java.lang.Object stackTraceLimit
         2: .line 144
            aload 2 /* stackTraceLimit */
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.toInteger:(Ljava/lang/Object;)J
            lstore 3 /* limit */
        start local 3 // long limit
         3: .line 145
            lload 3 /* limit */
            ldc 2147483647
            lcmp
            ifle 4
            ldc 2147483647
            goto 5
      StackMap locals: com.oracle.truffle.api.object.DynamicObject java.lang.Object long
      StackMap stack:
         4: lload 3 /* limit */
            l2i
      StackMap locals:
      StackMap stack: int
         5: istore 5 /* intLimit */
        start local 5 // int intLimit
         6: .line 146
            iconst_0
            iload 5 /* intLimit */
            invokestatic java.lang.Math.max:(II)I
            ireturn
        end local 5 // int intLimit
        end local 3 // long limit
        end local 2 // java.lang.Object stackTraceLimit
        end local 1 // com.oracle.truffle.api.object.DynamicObject errorConstructor
        end local 0 // com.oracle.truffle.js.runtime.JSRealm realm
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0             realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            1    7     1  errorConstructor  Lcom/oracle/truffle/api/object/DynamicObject;
            2    7     2   stackTraceLimit  Ljava/lang/Object;
            3    7     3             limit  J
            6    7     5          intLimit  I
    MethodParameters:
       Name  Flags
      realm  

  public java.lang.String getMessage();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 152
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getRawMessage:()Ljava/lang/String;
            astore 1 /* message */
        start local 1 // java.lang.String message
         1: .line 153
            aload 1 /* message */
            ifnull 2
            aload 1 /* message */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
      StackMap locals: java.lang.String
      StackMap stack:
         2: aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
            invokevirtual com.oracle.truffle.js.runtime.JSErrorType.name:()Ljava/lang/String;
            goto 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
            invokevirtual com.oracle.truffle.js.runtime.JSErrorType.name:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: areturn
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/oracle/truffle/js/runtime/JSException;
            1    5     1  message  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public java.lang.String getRawMessage();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 157
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.runtime.GraalJSException.getMessage:()Ljava/lang/String;
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSException;

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

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

  public void setErrorObject(com.oracle.truffle.api.object.DynamicObject);
    descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.api.object.DynamicObject exceptionObj
         0: .line 170
            aload 0 /* this */
            aload 1 /* exceptionObj */
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
         1: .line 171
            return
        end local 1 // com.oracle.truffle.api.object.DynamicObject exceptionObj
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lcom/oracle/truffle/js/runtime/JSException;
            0    2     1  exceptionObj  Lcom/oracle/truffle/api/object/DynamicObject;
    MethodParameters:
              Name  Flags
      exceptionObj  

  public java.lang.Object getErrorObjectEager();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 176
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
            astore 1 /* jserror */
        start local 1 // com.oracle.truffle.api.object.DynamicObject jserror
         1: .line 177
            aload 1 /* jserror */
            ifnonnull 9
         2: .line 178
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
            ifnull 3
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
            goto 4
      StackMap locals: com.oracle.truffle.api.object.DynamicObject
      StackMap stack:
         3: invokestatic com.oracle.truffle.js.lang.JavaScriptLanguage.getCurrentJSRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.JSRealm
         4: astore 2 /* innerRealm */
        start local 2 // com.oracle.truffle.js.runtime.JSRealm innerRealm
         5: .line 179
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getRawMessage:()Ljava/lang/String;
            astore 3 /* message */
        start local 3 // java.lang.String message
         6: .line 180
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* innerRealm */
            aload 3 /* message */
            ifnonnull 7
            ldc ""
            goto 8
      StackMap locals: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.js.runtime.JSRealm java.lang.String
      StackMap stack: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSRealm
         7: aload 3 /* message */
      StackMap locals: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.js.runtime.JSRealm java.lang.String
      StackMap stack: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSRealm java.lang.String
         8: invokestatic com.oracle.truffle.js.runtime.builtins.JSError.createFromJSException:(Lcom/oracle/truffle/js/runtime/JSException;Lcom/oracle/truffle/js/runtime/JSRealm;Ljava/lang/String;)Lcom/oracle/truffle/api/object/DynamicObject;
            dup
            astore 1 /* jserror */
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
        end local 3 // java.lang.String message
        end local 2 // com.oracle.truffle.js.runtime.JSRealm innerRealm
         9: .line 182
      StackMap locals:
      StackMap stack:
            aload 1 /* jserror */
            areturn
        end local 1 // com.oracle.truffle.api.object.DynamicObject jserror
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/oracle/truffle/js/runtime/JSException;
            1   10     1     jserror  Lcom/oracle/truffle/api/object/DynamicObject;
            5    9     2  innerRealm  Lcom/oracle/truffle/js/runtime/JSRealm;
            6    9     3     message  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()

  public java.lang.Object getErrorObjectEager(com.oracle.truffle.js.runtime.JSContext);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.js.runtime.JSContext context
         0: .line 188
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
            astore 2 /* jserror */
        start local 2 // com.oracle.truffle.api.object.DynamicObject jserror
         1: .line 189
            aload 2 /* jserror */
            ifnonnull 9
         2: .line 190
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
            ifnull 3
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
            goto 4
      StackMap locals: com.oracle.truffle.api.object.DynamicObject
      StackMap stack:
         3: aload 1 /* context */
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
      StackMap locals:
      StackMap stack: com.oracle.truffle.js.runtime.JSRealm
         4: astore 3 /* innerRealm */
        start local 3 // com.oracle.truffle.js.runtime.JSRealm innerRealm
         5: .line 191
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getRawMessage:()Ljava/lang/String;
            astore 4 /* message */
        start local 4 // java.lang.String message
         6: .line 192
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* innerRealm */
            aload 4 /* message */
            ifnonnull 7
            ldc ""
            goto 8
      StackMap locals: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.js.runtime.JSRealm java.lang.String
      StackMap stack: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSRealm
         7: aload 4 /* message */
      StackMap locals: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.js.runtime.JSRealm java.lang.String
      StackMap stack: com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSException com.oracle.truffle.js.runtime.JSRealm java.lang.String
         8: invokestatic com.oracle.truffle.js.runtime.builtins.JSError.createFromJSException:(Lcom/oracle/truffle/js/runtime/JSException;Lcom/oracle/truffle/js/runtime/JSRealm;Ljava/lang/String;)Lcom/oracle/truffle/api/object/DynamicObject;
            dup
            astore 2 /* jserror */
            putfield com.oracle.truffle.js.runtime.JSException.exceptionObj:Lcom/oracle/truffle/api/object/DynamicObject;
        end local 4 // java.lang.String message
        end local 3 // com.oracle.truffle.js.runtime.JSRealm innerRealm
         9: .line 194
      StackMap locals:
      StackMap stack:
            aload 2 /* jserror */
            areturn
        end local 2 // com.oracle.truffle.api.object.DynamicObject jserror
        end local 1 // com.oracle.truffle.js.runtime.JSContext context
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/oracle/truffle/js/runtime/JSException;
            0   10     1     context  Lcom/oracle/truffle/js/runtime/JSContext;
            1   10     2     jserror  Lcom/oracle/truffle/api/object/DynamicObject;
            5    9     3  innerRealm  Lcom/oracle/truffle/js/runtime/JSRealm;
            6    9     4     message  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      context  

  public com.oracle.truffle.js.runtime.JSException setRealm(com.oracle.truffle.js.runtime.JSRealm);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSRealm;)Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.js.runtime.JSRealm realm
         0: .line 198
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
            ifnonnull 5
         1: .line 199
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.useCallerRealm:Z
            ifeq 4
         2: .line 201
            aload 0 /* this */
            iconst_0
            putfield com.oracle.truffle.js.runtime.JSException.useCallerRealm:Z
         3: .line 202
            goto 5
         4: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* realm */
            putfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
         5: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/oracle/truffle/js/runtime/JSException;
            0    6     1  realm  Lcom/oracle/truffle/js/runtime/JSRealm;
    MethodParameters:
       Name  Flags
      realm  

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

  public com.oracle.truffle.js.runtime.JSException useCallerRealm();
    descriptor: ()Lcom/oracle/truffle/js/runtime/JSException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 214
            aload 0 /* this */
            iconst_1
            putfield com.oracle.truffle.js.runtime.JSException.useCallerRealm:Z
         1: .line 215
            aload 0 /* this */
            aconst_null
            putfield com.oracle.truffle.js.runtime.JSException.realm:Lcom/oracle/truffle/js/runtime/JSRealm;
         2: .line 216
            aload 0 /* this */
            areturn
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSException;

  public com.oracle.truffle.api.interop.ExceptionType getExceptionType();
    descriptor: ()Lcom/oracle/truffle/api/interop/ExceptionType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 221
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.type:Lcom/oracle/truffle/js/runtime/JSErrorType;
            getstatic com.oracle.truffle.js.runtime.JSErrorType.SyntaxError:Lcom/oracle/truffle/js/runtime/JSErrorType;
            if_acmpne 1
            getstatic com.oracle.truffle.api.interop.ExceptionType.PARSE_ERROR:Lcom/oracle/truffle/api/interop/ExceptionType;
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic com.oracle.truffle.api.interop.ExceptionType.RUNTIME_ERROR:Lcom/oracle/truffle/api/interop/ExceptionType;
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.interop.ExceptionType
         2: areturn
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/runtime/JSException;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()

  public boolean isExceptionIncompleteSource();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 226
            aload 0 /* this */
            getfield com.oracle.truffle.js.runtime.JSException.isIncompleteSource:Z
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSException;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()

  public boolean hasMembers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.runtime.JSException this
         0: .line 232
            iconst_1
            ireturn
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/runtime/JSException;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()

  public java.lang.Object getMembers(boolean, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (ZLcom/oracle/truffle/api/interop/InteropLibrary;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // boolean internal
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 238
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            iload 1 /* internal */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getMembers:(Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // boolean internal
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1     internal  Z
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnsupportedMessageException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      internal     
      delegateLib  

  public boolean isMemberReadable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 244
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberReadable:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean isMemberModifiable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 250
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberModifiable:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean isMemberInsertable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 256
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberInsertable:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean isMemberRemovable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 262
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberRemovable:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean isMemberInvocable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 268
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberInvocable:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean hasMemberReadSideEffects(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 274
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasMemberReadSideEffects:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public boolean hasMemberWriteSideEffects(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 280
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasMemberWriteSideEffects:(Ljava/lang/Object;Ljava/lang/String;)Z
            ireturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public java.lang.Object readMember(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 286
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnknownIdentifierException, com.oracle.truffle.api.interop.UnsupportedMessageException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public void writeMember(java.lang.String, java.lang.Object, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object value
        start local 3 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 293
            aload 3 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.writeMember:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 294
            return
        end local 3 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    2     1          key  Ljava/lang/String;
            0    2     2        value  Ljava/lang/Object;
            0    2     3  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnknownIdentifierException, com.oracle.truffle.api.interop.UnsupportedTypeException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
      2:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      value        
      delegateLib  

  public void removeMember(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 299
            aload 2 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.removeMember:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 300
            return
        end local 2 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    2     1          key  Ljava/lang/String;
            0    2     2  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnknownIdentifierException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      delegateLib  

  public java.lang.Object invokeMember(java.lang.String, java.lang.Object[], com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
        start local 3 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 306
            aload 3 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.invokeMember:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1          key  Ljava/lang/String;
            0    1     2         args  [Ljava/lang/Object;
            0    1     3  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnknownIdentifierException, com.oracle.truffle.api.interop.ArityException, com.oracle.truffle.api.interop.UnsupportedTypeException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
      2:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      key          
      args         
      delegateLib  

  public boolean hasMetaObject(com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 312
            aload 1 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasMetaObject:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      delegateLib  

  public java.lang.Object getMetaObject(com.oracle.truffle.api.interop.InteropLibrary);
    descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.runtime.JSException this
        start local 1 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
         0: .line 318
            aload 1 /* delegateLib */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObjectEager:()Ljava/lang/Object;
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getMetaObject:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // com.oracle.truffle.api.interop.InteropLibrary delegateLib
        end local 0 // com.oracle.truffle.js.runtime.JSException this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/truffle/js/runtime/JSException;
            0    1     1  delegateLib  Lcom/oracle/truffle/api/interop/InteropLibrary;
    Exceptions:
      throws com.oracle.truffle.api.interop.UnsupportedMessageException
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportMessage()
    RuntimeInvisibleParameterAnnotations: 
      0:
        com.oracle.truffle.api.library.CachedLibrary(limit = "InteropLibraryLimit")
        com.oracle.truffle.api.dsl.Cached$Shared(value = "delegateLib")
    MethodParameters:
             Name  Flags
      delegateLib  

  public java.lang.Object getErrorObject();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.oracle.truffle.js.runtime.JSException.getErrorObject:()Lcom/oracle/truffle/api/object/DynamicObject;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JSException.java"
InnerClasses:
  public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
  public abstract Shared = com.oracle.truffle.api.dsl.Cached$Shared of com.oracle.truffle.api.dsl.Cached
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.library.ExportLibrary(value = Lcom/oracle/truffle/api/interop/InteropLibrary;)
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.dsl.ImportStatic(value = {Lcom/oracle/truffle/js/runtime/JSConfig;})