public abstract class sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine extends sun.jvm.hotspot.utilities.soql.MapScriptObject
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine
  super_class: sun.jvm.hotspot.utilities.soql.MapScriptObject
{
  private java.io.BufferedReader inReader;
    descriptor: Ljava/io/BufferedReader;
    flags: (0x0002) ACC_PRIVATE

  protected final boolean debug;
    descriptor: Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

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

  private javax.script.ScriptEngine engine;
    descriptor: Ljavax/script/ScriptEngine;
    flags: (0x0002) ACC_PRIVATE

  public void startConsole();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 53
            aload 0 /* this */
            iconst_1
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.start:(Z)V
         1: .line 54
            return
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 61
            aload 0 /* this */
            iconst_0
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.start:(Z)V
         1: .line 62
            return
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  public void defineFunction(java.lang.Object, java.lang.reflect.Method);
    descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Method;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object target
        start local 2 // java.lang.reflect.Method method
         0: .line 68
            aload 0 /* this */
            aload 1 /* target */
            aload 2 /* method */
            iconst_0
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.putFunction:(Ljava/lang/Object;Ljava/lang/reflect/Method;Z)V
         1: .line 69
            return
        end local 2 // java.lang.reflect.Method method
        end local 1 // java.lang.Object target
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    2     1  target  Ljava/lang/Object;
            0    2     2  method  Ljava/lang/reflect/Method;
    MethodParameters:
        Name  Flags
      target  
      method  

  public java.lang.Object call(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object[] args
         0: .line 76
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            checkcast javax.script.Invocable
            astore 3 /* invocable */
        start local 3 // javax.script.Invocable invocable
         1: .line 78
            aload 3 /* invocable */
            aload 1 /* name */
            aload 2 /* args */
            invokeinterface javax.script.Invocable.invokeFunction:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         2: areturn
         3: .line 79
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.String java.lang.Object[] javax.script.Invocable
      StackMap stack: java.lang.RuntimeException
            astore 4 /* re */
        start local 4 // java.lang.RuntimeException re
         4: .line 80
            aload 4 /* re */
            athrow
        end local 4 // java.lang.RuntimeException re
         5: .line 81
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* exp */
        start local 4 // java.lang.Exception exp
         6: .line 82
            new java.lang.RuntimeException
            dup
            aload 4 /* exp */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.Exception exp
        end local 3 // javax.script.Invocable invocable
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String name
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    7     1       name  Ljava/lang/String;
            0    7     2       args  [Ljava/lang/Object;
            1    7     3  invocable  Ljavax/script/Invocable;
            4    5     4         re  Ljava/lang/RuntimeException;
            6    7     4        exp  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.RuntimeException
           1     2       5  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      name  
      args  

  public java.lang.Object address(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 91
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpeq 1
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
         1: .line 92
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         2: .line 93
            aload 2 /* o */
            ifnull 4
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 4
         3: .line 94
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaObject
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaObject.getOop:()Lsun/jvm/hotspot/oops/Oop;
            invokevirtual sun.jvm.hotspot.oops.Oop.getHandle:()Lsun/jvm/hotspot/debugger/OopHandle;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         4: .line 96
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    5     1  args  [Ljava/lang/Object;
            2    5     2     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object classof(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 107
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpeq 2
         1: .line 108
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
         2: .line 110
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         3: .line 111
            aload 2 /* o */
            ifnull 14
         4: .line 112
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 10
         5: .line 113
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaInstance
            ifeq 7
         6: .line 114
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaInstance
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.getJSJavaClass:()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
            areturn
         7: .line 115
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaArray
            ifeq 9
         8: .line 116
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaArray
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaArray.getJSJavaClass:()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
            areturn
         9: .line 118
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        10: .line 120
      StackMap locals:
      StackMap stack:
            aload 2 /* o */
            instanceof java.lang.String
            ifeq 13
        11: .line 121
            aload 2 /* o */
            checkcast java.lang.String
            invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.findInstanceKlass:(Ljava/lang/String;)Lsun/jvm/hotspot/oops/InstanceKlass;
            astore 3 /* ik */
        start local 3 // sun.jvm.hotspot.oops.InstanceKlass ik
        12: .line 122
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getJSJavaFactory:()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
            aload 3 /* ik */
            invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaKlass:(Lsun/jvm/hotspot/oops/Klass;)Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaKlass.getJSJavaClass:()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
            areturn
        end local 3 // sun.jvm.hotspot.oops.InstanceKlass ik
        13: .line 124
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        14: .line 127
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   15     1  args  [Ljava/lang/Object;
            3   15     2     o  Ljava/lang/Object;
           12   13     3    ik  Lsun/jvm/hotspot/oops/InstanceKlass;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object dumpClass(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 138
            aload 1 /* args */
            arraylength
            ifne 2
         1: .line 139
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* clazz */
        start local 2 // java.lang.Object clazz
         3: .line 142
            aload 2 /* clazz */
            ifnonnull 5
         4: .line 143
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
         5: .line 145
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            astore 3 /* ik */
        start local 3 // sun.jvm.hotspot.oops.InstanceKlass ik
         6: .line 146
            aload 2 /* clazz */
            instanceof java.lang.String
            ifeq 18
         7: .line 147
            aload 2 /* clazz */
            checkcast java.lang.String
            astore 4 /* name */
        start local 4 // java.lang.String name
         8: .line 148
            aload 4 /* name */
            ldc "0x"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 16
         9: .line 150
            invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
            astore 5 /* vm */
        start local 5 // sun.jvm.hotspot.runtime.VM vm
        10: .line 151
            aload 5 /* vm */
            invokevirtual sun.jvm.hotspot.runtime.VM.getDebugger:()Lsun/jvm/hotspot/debugger/JVMDebugger;
            aload 4 /* name */
            invokeinterface sun.jvm.hotspot.debugger.JVMDebugger.parseAddress:(Ljava/lang/String;)Lsun/jvm/hotspot/debugger/Address;
            astore 6 /* addr */
        start local 6 // sun.jvm.hotspot.debugger.Address addr
        11: .line 152
            aload 6 /* addr */
            lconst_0
            invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.oops.Metadata.instantiateWrapperFor:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Metadata;
            astore 7 /* metadata */
        start local 7 // sun.jvm.hotspot.oops.Metadata metadata
        12: .line 153
            aload 7 /* metadata */
            instanceof sun.jvm.hotspot.oops.InstanceKlass
            ifeq 15
        13: .line 154
            aload 7 /* metadata */
            checkcast sun.jvm.hotspot.oops.InstanceKlass
            astore 3 /* ik */
        14: .line 155
            goto 24
        15: .line 156
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.Object[] java.lang.Object sun.jvm.hotspot.oops.InstanceKlass java.lang.String sun.jvm.hotspot.runtime.VM sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.oops.Metadata
      StackMap stack:
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
        end local 7 // sun.jvm.hotspot.oops.Metadata metadata
        end local 6 // sun.jvm.hotspot.debugger.Address addr
        end local 5 // sun.jvm.hotspot.runtime.VM vm
        16: .line 159
      StackMap locals:
      StackMap stack:
            aload 2 /* clazz */
            checkcast java.lang.String
            invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.findInstanceKlass:(Ljava/lang/String;)Lsun/jvm/hotspot/oops/InstanceKlass;
            astore 3 /* ik */
        end local 4 // java.lang.String name
        17: .line 161
            goto 24
      StackMap locals:
      StackMap stack:
        18: aload 2 /* clazz */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaClass
            ifeq 23
        19: .line 162
            aload 2 /* clazz */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaClass
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaClass.getJSJavaKlass:()Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
            astore 4 /* jk */
        start local 4 // sun.jvm.hotspot.utilities.soql.JSJavaKlass jk
        20: .line 163
            aload 4 /* jk */
            ifnull 24
            aload 4 /* jk */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
            ifeq 24
        21: .line 164
            aload 4 /* jk */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getInstanceKlass:()Lsun/jvm/hotspot/oops/InstanceKlass;
            astore 3 /* ik */
        end local 4 // sun.jvm.hotspot.utilities.soql.JSJavaKlass jk
        22: .line 166
            goto 24
        23: .line 167
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
        24: .line 170
      StackMap locals:
      StackMap stack:
            aload 3 /* ik */
            ifnonnull 25
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
        25: .line 171
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 4 /* buf */
        start local 4 // java.lang.StringBuffer buf
        26: .line 172
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmple 29
        27: .line 173
            aload 4 /* buf */
            aload 1 /* args */
            iconst_1
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        28: .line 174
            goto 30
        29: .line 175
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 4 /* buf */
            bipush 46
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        30: .line 178
      StackMap locals:
      StackMap stack:
            aload 4 /* buf */
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        31: .line 179
            aload 4 /* buf */
            aload 3 /* ik */
            invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
            invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
            bipush 47
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        32: .line 180
            aload 4 /* buf */
            ldc ".class"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        33: .line 181
            aload 4 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            astore 5 /* fileName */
        start local 5 // java.lang.String fileName
        34: .line 182
            new java.io.File
            dup
            aload 5 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 6 /* file */
        start local 6 // java.io.File file
        35: .line 185
            aload 5 /* fileName */
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 7 /* index */
        start local 7 // int index
        36: .line 186
            new java.io.File
            dup
            aload 5 /* fileName */
            iconst_0
            iload 7 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 8 /* dir */
        start local 8 // java.io.File dir
        37: .line 187
            aload 8 /* dir */
            invokevirtual java.io.File.mkdirs:()Z
            pop
        38: .line 188
            new java.io.FileOutputStream
            dup
            aload 6 /* file */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 9 /* fos */
        start local 9 // java.io.FileOutputStream fos
        39: .line 189
            new sun.jvm.hotspot.tools.jcore.ClassWriter
            dup
            aload 3 /* ik */
            aload 9 /* fos */
            invokespecial sun.jvm.hotspot.tools.jcore.ClassWriter.<init>:(Lsun/jvm/hotspot/oops/InstanceKlass;Ljava/io/OutputStream;)V
            astore 10 /* cw */
        start local 10 // sun.jvm.hotspot.tools.jcore.ClassWriter cw
        40: .line 190
            aload 10 /* cw */
            invokevirtual sun.jvm.hotspot.tools.jcore.ClassWriter.write:()V
        41: .line 191
            aload 9 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 10 // sun.jvm.hotspot.tools.jcore.ClassWriter cw
        end local 9 // java.io.FileOutputStream fos
        end local 8 // java.io.File dir
        end local 7 // int index
        42: .line 192
            goto 46
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.Object[] java.lang.Object sun.jvm.hotspot.oops.InstanceKlass java.lang.StringBuffer java.lang.String java.io.File
      StackMap stack: java.io.IOException
        43: astore 7 /* exp */
        start local 7 // java.io.IOException exp
        44: .line 193
            aload 0 /* this */
            aload 7 /* exp */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 7 /* exp */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        45: .line 194
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            areturn
        end local 7 // java.io.IOException exp
        46: .line 197
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            areturn
        end local 6 // java.io.File file
        end local 5 // java.lang.String fileName
        end local 4 // java.lang.StringBuffer buf
        end local 3 // sun.jvm.hotspot.oops.InstanceKlass ik
        end local 2 // java.lang.Object clazz
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   47     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   47     1      args  [Ljava/lang/Object;
            3   47     2     clazz  Ljava/lang/Object;
            6   47     3        ik  Lsun/jvm/hotspot/oops/InstanceKlass;
            8   17     4      name  Ljava/lang/String;
           10   16     5        vm  Lsun/jvm/hotspot/runtime/VM;
           11   16     6      addr  Lsun/jvm/hotspot/debugger/Address;
           12   16     7  metadata  Lsun/jvm/hotspot/oops/Metadata;
           20   22     4        jk  Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
           26   47     4       buf  Ljava/lang/StringBuffer;
           34   47     5  fileName  Ljava/lang/String;
           35   47     6      file  Ljava/io/File;
           36   42     7     index  I
           37   42     8       dir  Ljava/io/File;
           39   42     9       fos  Ljava/io/FileOutputStream;
           40   42    10        cw  Lsun/jvm/hotspot/tools/jcore/ClassWriter;
           44   46     7       exp  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          35    42      43  Class java.io.IOException
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object dumpHeap(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 205
            ldc "heap.bin"
            astore 2 /* fileName */
        start local 2 // java.lang.String fileName
         1: .line 206
            aload 1 /* args */
            arraylength
            ifle 3
         2: .line 207
            aload 1 /* args */
            iconst_0
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 2 /* fileName */
         3: .line 209
      StackMap locals: java.lang.String
      StackMap stack:
            new sun.jvm.hotspot.tools.JMap
            dup
            invokespecial sun.jvm.hotspot.tools.JMap.<init>:()V
            aload 2 /* fileName */
            invokevirtual sun.jvm.hotspot.tools.JMap.writeHeapHprofBin:(Ljava/lang/String;)Z
            ifeq 4
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            goto 5
      StackMap locals:
      StackMap stack:
         4: getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
      StackMap locals:
      StackMap stack: java.lang.Boolean
         5: areturn
        end local 2 // java.lang.String fileName
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    6     1      args  [Ljava/lang/Object;
            1    6     2  fileName  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      args  

  public void help(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 216
            aload 0 /* this */
            ldc "Function/Variable        Description"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         1: .line 217
            aload 0 /* this */
            ldc "=================        ==========="
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         2: .line 218
            aload 0 /* this */
            ldc "address(jobject)         returns the address of the Java object"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         3: .line 219
            aload 0 /* this */
            ldc "classof(jobject)         returns the class object of the Java object"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         4: .line 220
            aload 0 /* this */
            ldc "dumpClass(jclass,[dir])  writes .class for the given Java Class"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         5: .line 221
            aload 0 /* this */
            ldc "dumpHeap([file])         writes heap in hprof binary format"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         6: .line 222
            aload 0 /* this */
            ldc "help()                   prints this help message"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         7: .line 223
            aload 0 /* this */
            ldc "identityHash(jobject)    returns the hashCode of the Java object"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         8: .line 224
            aload 0 /* this */
            ldc "mirror(jobject)          returns a local mirror of the Java object"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         9: .line 225
            aload 0 /* this */
            ldc "load([file1, file2,...]) loads JavaScript file(s). With no files, reads <stdin>"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        10: .line 226
            aload 0 /* this */
            ldc "object(string)           converts a string address into Java object"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        11: .line 227
            aload 0 /* this */
            ldc "owner(jobject)           returns the owner thread of this monitor or null"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        12: .line 228
            aload 0 /* this */
            ldc "sizeof(jobject)          returns the size of Java object in bytes"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        13: .line 229
            aload 0 /* this */
            ldc "staticof(jclass, field)  returns a static field of the given Java class"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        14: .line 230
            aload 0 /* this */
            ldc "read([prompt])           reads a single line from standard input"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        15: .line 231
            aload 0 /* this */
            ldc "quit()                   quits the interactive load call"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        16: .line 232
            aload 0 /* this */
            ldc "jvm                      the target jvm that is being debugged"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        17: .line 233
            return
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   18     1  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object identityHash(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 240
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpeq 1
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
         1: .line 241
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         2: .line 242
            aload 2 /* o */
            ifnull 4
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 4
         3: .line 243
            new java.lang.Long
            dup
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaObject
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaObject.getOop:()Lsun/jvm/hotspot/oops/Oop;
            invokevirtual sun.jvm.hotspot.oops.Oop.identityHash:()J
            invokespecial java.lang.Long.<init>:(J)V
            areturn
         4: .line 245
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    5     1  args  [Ljava/lang/Object;
            2    5     2     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public void load(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 255
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 256
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* args */
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.processSource:(Ljava/lang/String;)V
         3: .line 255
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            aload 1 /* args */
            arraylength
            if_icmplt 2
        end local 2 // int i
         5: .line 258
            return
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    6     1  args  [Ljava/lang/Object;
            1    5     2     i  I
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object mirror(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 266
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         1: .line 267
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            astore 3 /* res */
        start local 3 // java.lang.Object res
         2: .line 268
            aload 2 /* o */
            ifnull 17
         3: .line 269
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 10
         4: .line 270
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaObject
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaObject.getOop:()Lsun/jvm/hotspot/oops/Oop;
            astore 4 /* oop */
        start local 4 // sun.jvm.hotspot.oops.Oop oop
         5: .line 272
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getObjectReader:()Lsun/jvm/hotspot/utilities/ObjectReader;
            aload 4 /* oop */
            invokevirtual sun.jvm.hotspot.utilities.ObjectReader.readObject:(Lsun/jvm/hotspot/oops/Oop;)Ljava/lang/Object;
            astore 3 /* res */
         6: .line 273
            goto 17
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.Object[] java.lang.Object java.lang.Object sun.jvm.hotspot.oops.Oop
      StackMap stack: java.lang.Exception
         7: astore 5 /* e */
        start local 5 // java.lang.Exception e
         8: .line 274
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.debug:Z
            ifeq 17
            aload 5 /* e */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getErrorStream:()Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        end local 5 // java.lang.Exception e
        end local 4 // sun.jvm.hotspot.oops.Oop oop
         9: .line 276
            goto 17
      StackMap locals:
      StackMap stack:
        10: aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSMetadata
            ifeq 17
        11: .line 277
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSMetadata
            invokevirtual sun.jvm.hotspot.utilities.soql.JSMetadata.getMetadata:()Lsun/jvm/hotspot/oops/Metadata;
            astore 4 /* metadata */
        start local 4 // sun.jvm.hotspot.oops.Metadata metadata
        12: .line 279
            aload 4 /* metadata */
            instanceof sun.jvm.hotspot.oops.InstanceKlass
            ifeq 17
        13: .line 280
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getObjectReader:()Lsun/jvm/hotspot/utilities/ObjectReader;
            aload 4 /* metadata */
            checkcast sun.jvm.hotspot.oops.InstanceKlass
            invokevirtual sun.jvm.hotspot.utilities.ObjectReader.readClass:(Lsun/jvm/hotspot/oops/InstanceKlass;)Ljava/lang/Class;
            astore 3 /* res */
        14: .line 282
            goto 17
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.Object[] java.lang.Object java.lang.Object sun.jvm.hotspot.oops.Metadata
      StackMap stack: java.lang.Exception
        15: astore 5 /* e */
        start local 5 // java.lang.Exception e
        16: .line 283
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.debug:Z
            ifeq 17
            aload 5 /* e */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getErrorStream:()Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        end local 5 // java.lang.Exception e
        end local 4 // sun.jvm.hotspot.oops.Metadata metadata
        17: .line 287
      StackMap locals:
      StackMap stack:
            aload 3 /* res */
            areturn
        end local 3 // java.lang.Object res
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   18     1      args  [Ljava/lang/Object;
            1   18     2         o  Ljava/lang/Object;
            2   18     3       res  Ljava/lang/Object;
            5    9     4       oop  Lsun/jvm/hotspot/oops/Oop;
            8    9     5         e  Ljava/lang/Exception;
           12   17     4  metadata  Lsun/jvm/hotspot/oops/Metadata;
           16   17     5         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.Exception
          12    14      15  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object owner(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 295
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         1: .line 296
            aload 2 /* o */
            ifnull 3
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 3
         2: .line 297
            aload 0 /* this */
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaObject
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getOwningThread:(Lsun/jvm/hotspot/utilities/soql/JSJavaObject;)Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
            areturn
         3: .line 299
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    4     1  args  [Ljava/lang/Object;
            1    4     2     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object object(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 308
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         1: .line 309
            aload 2 /* o */
            ifnull 6
            aload 2 /* o */
            instanceof java.lang.String
            ifeq 6
         2: .line 310
            invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
            astore 3 /* vm */
        start local 3 // sun.jvm.hotspot.runtime.VM vm
         3: .line 311
            aload 3 /* vm */
            invokevirtual sun.jvm.hotspot.runtime.VM.getDebugger:()Lsun/jvm/hotspot/debugger/JVMDebugger;
            aload 2 /* o */
            checkcast java.lang.String
            invokeinterface sun.jvm.hotspot.debugger.JVMDebugger.parseAddress:(Ljava/lang/String;)Lsun/jvm/hotspot/debugger/Address;
            astore 4 /* addr */
        start local 4 // sun.jvm.hotspot.debugger.Address addr
         4: .line 312
            aload 3 /* vm */
            invokevirtual sun.jvm.hotspot.runtime.VM.getObjectHeap:()Lsun/jvm/hotspot/oops/ObjectHeap;
            aload 4 /* addr */
            lconst_0
            invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetToAsOopHandle:(J)Lsun/jvm/hotspot/debugger/OopHandle;
            invokevirtual sun.jvm.hotspot.oops.ObjectHeap.newOop:(Lsun/jvm/hotspot/debugger/OopHandle;)Lsun/jvm/hotspot/oops/Oop;
            astore 5 /* oop */
        start local 5 // sun.jvm.hotspot.oops.Oop oop
         5: .line 313
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getJSJavaFactory:()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
            aload 5 /* oop */
            invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaObject:(Lsun/jvm/hotspot/oops/Oop;)Lsun/jvm/hotspot/utilities/soql/JSJavaObject;
            areturn
        end local 5 // sun.jvm.hotspot.oops.Oop oop
        end local 4 // sun.jvm.hotspot.debugger.Address addr
        end local 3 // sun.jvm.hotspot.runtime.VM vm
         6: .line 315
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    7     1  args  [Ljava/lang/Object;
            1    7     2     o  Ljava/lang/Object;
            3    6     3    vm  Lsun/jvm/hotspot/runtime/VM;
            4    6     4  addr  Lsun/jvm/hotspot/debugger/Address;
            5    6     5   oop  Lsun/jvm/hotspot/oops/Oop;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object sizeof(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 324
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpeq 1
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
         1: .line 325
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* o */
        start local 2 // java.lang.Object o
         2: .line 326
            aload 2 /* o */
            ifnull 4
            aload 2 /* o */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaObject
            ifeq 4
         3: .line 327
            new java.lang.Long
            dup
            aload 2 /* o */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaObject
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaObject.getOop:()Lsun/jvm/hotspot/oops/Oop;
            invokevirtual sun.jvm.hotspot.oops.Oop.getObjectSize:()J
            invokespecial java.lang.Long.<init>:(J)V
            areturn
         4: .line 329
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object o
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    5     1  args  [Ljava/lang/Object;
            2    5     2     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object staticof(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 339
            aload 1 /* args */
            iconst_0
            aaload
            astore 2 /* classname */
        start local 2 // java.lang.Object classname
         1: .line 340
            aload 1 /* args */
            iconst_1
            aaload
            astore 3 /* fieldname */
        start local 3 // java.lang.Object fieldname
         2: .line 341
            aload 3 /* fieldname */
            ifnull 4
            aload 2 /* classname */
            ifnull 4
         3: .line 342
            aload 3 /* fieldname */
            instanceof java.lang.String
            ifne 5
         4: .line 343
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
         5: .line 346
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* ik */
        start local 4 // sun.jvm.hotspot.oops.InstanceKlass ik
         6: .line 347
            aload 2 /* classname */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaClass
            ifeq 12
         7: .line 348
            aload 2 /* classname */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaClass
            astore 5 /* jclass */
        start local 5 // sun.jvm.hotspot.utilities.soql.JSJavaClass jclass
         8: .line 349
            aload 5 /* jclass */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaClass.getJSJavaKlass:()Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
            astore 6 /* jk */
        start local 6 // sun.jvm.hotspot.utilities.soql.JSJavaKlass jk
         9: .line 350
            aload 6 /* jk */
            ifnull 16
            aload 6 /* jk */
            instanceof sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
            ifeq 16
        10: .line 351
            aload 6 /* jk */
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getInstanceKlass:()Lsun/jvm/hotspot/oops/InstanceKlass;
            astore 4 /* ik */
        end local 6 // sun.jvm.hotspot.utilities.soql.JSJavaKlass jk
        end local 5 // sun.jvm.hotspot.utilities.soql.JSJavaClass jclass
        11: .line 353
            goto 16
      StackMap locals: sun.jvm.hotspot.oops.InstanceKlass
      StackMap stack:
        12: aload 2 /* classname */
            instanceof java.lang.String
            ifeq 15
        13: .line 354
            aload 2 /* classname */
            checkcast java.lang.String
            invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.findInstanceKlass:(Ljava/lang/String;)Lsun/jvm/hotspot/oops/InstanceKlass;
            astore 4 /* ik */
        14: .line 355
            goto 16
        15: .line 356
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        16: .line 359
      StackMap locals:
      StackMap stack:
            aload 4 /* ik */
            ifnonnull 18
        17: .line 360
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        18: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getJSJavaFactory:()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
            astore 5 /* factory */
        start local 5 // sun.jvm.hotspot.utilities.soql.JSJavaFactory factory
        19: .line 364
            aload 5 /* factory */
            aload 4 /* ik */
            invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaKlass:(Lsun/jvm/hotspot/oops/Klass;)Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
            checkcast sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
            aload 3 /* fieldname */
            checkcast java.lang.String
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getStaticFieldValue:(Ljava/lang/String;)Ljava/lang/Object;
        20: areturn
        21: .line 365
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.Object[] java.lang.Object java.lang.Object sun.jvm.hotspot.oops.InstanceKlass sun.jvm.hotspot.utilities.soql.JSJavaFactory
      StackMap stack: java.lang.NoSuchFieldException
            pop
        22: .line 366
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.UNDEFINED:Ljava/lang/Object;
            areturn
        end local 5 // sun.jvm.hotspot.utilities.soql.JSJavaFactory factory
        end local 4 // sun.jvm.hotspot.oops.InstanceKlass ik
        end local 3 // java.lang.Object fieldname
        end local 2 // java.lang.Object classname
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   23     1       args  [Ljava/lang/Object;
            1   23     2  classname  Ljava/lang/Object;
            2   23     3  fieldname  Ljava/lang/Object;
            6   23     4         ik  Lsun/jvm/hotspot/oops/InstanceKlass;
            8   11     5     jclass  Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
            9   11     6         jk  Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
           19   23     5    factory  Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
      Exception table:
        from    to  target  type
          19    20      21  Class java.lang.NoSuchFieldException
    MethodParameters:
      Name  Flags
      args  

  public java.lang.Object read(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 374
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getInputReader:()Ljava/io/BufferedReader;
            astore 2 /* in */
        start local 2 // java.io.BufferedReader in
         1: .line 375
            aload 2 /* in */
            ifnonnull 3
         2: .line 376
            aconst_null
            areturn
         3: .line 378
      StackMap locals: java.io.BufferedReader
      StackMap stack:
            aload 1 /* args */
            arraylength
            ifle 6
         4: .line 379
            aload 0 /* this */
            aload 1 /* args */
            iconst_0
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         5: .line 380
            aload 0 /* this */
            ldc ":"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         6: .line 383
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
         7: areturn
         8: .line 384
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* exp */
        start local 3 // java.io.IOException exp
         9: .line 385
            aload 3 /* exp */
            invokevirtual java.io.IOException.printStackTrace:()V
        10: .line 386
            new java.lang.RuntimeException
            dup
            aload 3 /* exp */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.IOException exp
        end local 2 // java.io.BufferedReader in
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   11     1  args  [Ljava/lang/Object;
            1   11     2    in  Ljava/io/BufferedReader;
            9   11     3   exp  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6     7       8  Class java.io.IOException
    MethodParameters:
      Name  Flags
      args  

  public void quit(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 395
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.quit:()V
         1: .line 396
            return
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    2     1  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  

  public void writeln(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 399
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 400
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* args */
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         3: .line 401
            aload 0 /* this */
            ldc " "
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         4: .line 399
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 1 /* args */
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 403
            aload 0 /* this */
            ldc ""
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
         7: .line 404
            return
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    8     1  args  [Ljava/lang/Object;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      args  

  public void write(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.Object[] args
         0: .line 407
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 408
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* args */
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         3: .line 409
            aload 0 /* this */
            ldc " "
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.print:(Ljava/lang/String;)V
         4: .line 407
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 1 /* args */
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 411
            return
        end local 1 // java.lang.Object[] args
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    7     1  args  [Ljava/lang/Object;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      args  

  protected void start(boolean);
    descriptor: (Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // boolean console
         0: .line 415
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            invokeinterface javax.script.ScriptEngine.getContext:()Ljavax/script/ScriptContext;
            astore 2 /* context */
        start local 2 // javax.script.ScriptContext context
         1: .line 416
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getOutputStream:()Ljava/io/PrintStream;
            astore 3 /* out */
        start local 3 // java.io.OutputStream out
         2: .line 417
            aload 3 /* out */
            ifnull 4
         3: .line 418
            aload 2 /* context */
            new java.io.PrintWriter
            dup
            aload 3 /* out */
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;)V
            invokeinterface javax.script.ScriptContext.setWriter:(Ljava/io/Writer;)V
         4: .line 420
      StackMap locals: javax.script.ScriptContext java.io.OutputStream
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getErrorStream:()Ljava/io/PrintStream;
            astore 4 /* err */
        start local 4 // java.io.OutputStream err
         5: .line 421
            aload 4 /* err */
            ifnull 7
         6: .line 422
            aload 2 /* context */
            new java.io.PrintWriter
            dup
            aload 4 /* err */
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;)V
            invokeinterface javax.script.ScriptContext.setErrorWriter:(Ljava/io/Writer;)V
         7: .line 425
      StackMap locals: java.io.OutputStream
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.loadInitFile:()V
         8: .line 428
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.loadUserInitFile:()V
         9: .line 430
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getJSJavaFactory:()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
            astore 5 /* fac */
        start local 5 // sun.jvm.hotspot.utilities.soql.JSJavaFactory fac
        10: .line 431
            aload 5 /* fac */
            ifnull 11
            aload 5 /* fac */
            invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaVM:()Lsun/jvm/hotspot/utilities/soql/JSJavaVM;
            goto 12
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaFactory
      StackMap stack:
        11: aconst_null
      StackMap locals:
      StackMap stack: sun.jvm.hotspot.utilities.soql.JSJavaVM
        12: astore 6 /* jvm */
        start local 6 // sun.jvm.hotspot.utilities.soql.JSJavaVM jvm
        13: .line 434
            aload 0 /* this */
            ldc "main"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aastore
            dup
            iconst_1
            aload 6 /* jvm */
            aastore
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.call:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 437
            iload 1 /* console */
            ifeq 16
        15: .line 438
            aload 0 /* this */
            aconst_null
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.processSource:(Ljava/lang/String;)V
        16: .line 440
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaVM
      StackMap stack:
            return
        end local 6 // sun.jvm.hotspot.utilities.soql.JSJavaVM jvm
        end local 5 // sun.jvm.hotspot.utilities.soql.JSJavaFactory fac
        end local 4 // java.io.OutputStream err
        end local 3 // java.io.OutputStream out
        end local 2 // javax.script.ScriptContext context
        end local 1 // boolean console
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   17     1  console  Z
            1   17     2  context  Ljavax/script/ScriptContext;
            2   17     3      out  Ljava/io/OutputStream;
            5   17     4      err  Ljava/io/OutputStream;
           10   17     5      fac  Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
           13   17     6      jvm  Lsun/jvm/hotspot/utilities/soql/JSJavaVM;
    MethodParameters:
         Name  Flags
      console  

  protected void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // boolean debug
         0: .line 442
            aload 0 /* this */
            invokespecial sun.jvm.hotspot.utilities.soql.MapScriptObject.<init>:()V
         1: .line 443
            aload 0 /* this */
            iload 1 /* debug */
            putfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.debug:Z
         2: .line 444
            new javax.script.ScriptEngineManager
            dup
            invokespecial javax.script.ScriptEngineManager.<init>:()V
            astore 2 /* manager */
        start local 2 // javax.script.ScriptEngineManager manager
         3: .line 445
            aload 0 /* this */
            aload 2 /* manager */
            ldc "javascript"
            invokevirtual javax.script.ScriptEngineManager.getEngineByName:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            putfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
         4: .line 446
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            ifnonnull 6
         5: .line 447
            new java.lang.RuntimeException
            dup
            ldc "can't load JavaScript engine"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 449
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine int javax.script.ScriptEngineManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
            astore 3 /* methods */
        start local 3 // java.lang.reflect.Method[] methods
         7: .line 450
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 17
         9: .line 451
      StackMap locals: java.lang.reflect.Method[] int
      StackMap stack:
            aload 3 /* methods */
            iload 4 /* i */
            aaload
            astore 5 /* m */
        start local 5 // java.lang.reflect.Method m
        10: .line 452
            aload 5 /* m */
            invokevirtual java.lang.reflect.Method.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
            ifne 12
        11: .line 453
            goto 16
        12: .line 455
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 5 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 6 /* argTypes */
        start local 6 // java.lang.Class[] argTypes
        13: .line 456
            aload 6 /* argTypes */
            arraylength
            iconst_1
            if_icmpne 16
        14: .line 457
            aload 6 /* argTypes */
            iconst_0
            aaload
            ldc [Ljava/lang/Object;
            if_acmpne 16
        15: .line 458
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* m */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.putFunction:(Ljava/lang/Object;Ljava/lang/reflect/Method;)V
        end local 6 // java.lang.Class[] argTypes
        end local 5 // java.lang.reflect.Method m
        16: .line 450
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 4 /* i */
            aload 3 /* methods */
            arraylength
            if_icmplt 9
        end local 4 // int i
        18: .line 461
            return
        end local 3 // java.lang.reflect.Method[] methods
        end local 2 // javax.script.ScriptEngineManager manager
        end local 1 // boolean debug
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   19     1     debug  Z
            3   19     2   manager  Ljavax/script/ScriptEngineManager;
            7   19     3   methods  [Ljava/lang/reflect/Method;
            8   18     4         i  I
           10   16     5         m  Ljava/lang/reflect/Method;
           13   16     6  argTypes  [Ljava/lang/Class;
    MethodParameters:
       Name  Flags
      debug  

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 464
            aload 0 /* this */
            iconst_0
            invokespecial sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.<init>:(Z)V
         1: .line 465
            return
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected abstract sun.jvm.hotspot.utilities.ObjectReader getObjectReader();
    descriptor: ()Lsun/jvm/hotspot/utilities/ObjectReader;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract sun.jvm.hotspot.utilities.soql.JSJavaFactory getJSJavaFactory();
    descriptor: ()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected void printPrompt(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String str
         0: .line 470
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 1 /* str */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 471
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.flush:()V
         2: .line 472
            return
        end local 1 // java.lang.String str
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    3     1   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  protected void loadInitFile();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 475
            ldc Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            ldc "sa.js"
            invokevirtual java.lang.Class.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 1 /* is */
        start local 1 // java.io.InputStream is
         1: .line 476
            new java.io.BufferedReader
            dup
            new java.io.InputStreamReader
            dup
            aload 1 /* is */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 2 /* reader */
        start local 2 // java.io.BufferedReader reader
         2: .line 477
            aload 0 /* this */
            aload 2 /* reader */
            ldc "sa.js"
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.evalReader:(Ljava/io/Reader;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 478
            return
        end local 2 // java.io.BufferedReader reader
        end local 1 // java.io.InputStream is
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            1    4     1      is  Ljava/io/InputStream;
            2    4     2  reader  Ljava/io/BufferedReader;

  protected void loadUserInitFile();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 481
            new java.io.File
            dup
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getUserInitFileDir:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getUserInitFileName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 1 /* initFile */
        start local 1 // java.io.File initFile
         1: .line 482
            aload 1 /* initFile */
            invokevirtual java.io.File.exists:()Z
            ifeq 3
            aload 1 /* initFile */
            invokevirtual java.io.File.isFile:()Z
            ifeq 3
         2: .line 484
            aload 0 /* this */
            aload 1 /* initFile */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.processSource:(Ljava/lang/String;)V
         3: .line 486
      StackMap locals: java.io.File
      StackMap stack:
            return
        end local 1 // java.io.File initFile
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            1    4     1  initFile  Ljava/io/File;

  protected java.lang.String getUserInitFileDir();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 489
            ldc "user.home"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected java.lang.String getUserInitFileName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 493
            ldc "jsdb.js"
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected java.io.BufferedReader getInputReader();
    descriptor: ()Ljava/io/BufferedReader;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 497
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.inReader:Ljava/io/BufferedReader;
            ifnonnull 2
         1: .line 498
            aload 0 /* this */
            new java.io.BufferedReader
            dup
            new java.io.InputStreamReader
            dup
            getstatic java.lang.System.in:Ljava/io/InputStream;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            putfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.inReader:Ljava/io/BufferedReader;
         2: .line 500
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.inReader:Ljava/io/BufferedReader;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected java.io.PrintStream getOutputStream();
    descriptor: ()Ljava/io/PrintStream;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 504
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected java.io.PrintStream getErrorStream();
    descriptor: ()Ljava/io/PrintStream;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 508
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected void print(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String name
         0: .line 512
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getOutputStream:()Ljava/io/PrintStream;
            aload 1 /* name */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 513
            return
        end local 1 // java.lang.String name
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  protected void println(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String name
         0: .line 516
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getOutputStream:()Ljava/io/PrintStream;
            aload 1 /* name */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 517
            return
        end local 1 // java.lang.String name
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  protected void printError(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String message
         0: .line 520
            aload 0 /* this */
            aload 1 /* message */
            aconst_null
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
         1: .line 521
            return
        end local 1 // java.lang.String message
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  protected void printError(java.lang.String, java.lang.Exception);
    descriptor: (Ljava/lang/String;Ljava/lang/Exception;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String message
        start local 2 // java.lang.Exception exp
         0: .line 524
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getErrorStream:()Ljava/io/PrintStream;
            aload 1 /* message */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 525
            aload 2 /* exp */
            ifnull 3
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.debug:Z
            ifeq 3
         2: .line 526
            aload 2 /* exp */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getErrorStream:()Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
         3: .line 528
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Exception exp
        end local 1 // java.lang.String message
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    4     1  message  Ljava/lang/String;
            0    4     2      exp  Ljava/lang/Exception;
    MethodParameters:
         Name  Flags
      message  
      exp      

  protected boolean isQuitting();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 531
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.quitting:Z
            ireturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected void quit();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 535
            aload 0 /* this */
            iconst_1
            putfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.quitting:Z
         1: .line 536
            return
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  protected javax.script.ScriptEngine getScriptEngine();
    descriptor: ()Ljavax/script/ScriptEngine;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
         0: .line 539
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;

  private sun.jvm.hotspot.utilities.soql.JSJavaThread getOwningThread(sun.jvm.hotspot.utilities.soql.JSJavaObject);
    descriptor: (Lsun/jvm/hotspot/utilities/soql/JSJavaObject;)Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // sun.jvm.hotspot.utilities.soql.JSJavaObject jo
         0: .line 543
            aload 1 /* jo */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaObject.getOop:()Lsun/jvm/hotspot/oops/Oop;
            astore 2 /* oop */
        start local 2 // sun.jvm.hotspot.oops.Oop oop
         1: .line 544
            aload 2 /* oop */
            invokevirtual sun.jvm.hotspot.oops.Oop.getMark:()Lsun/jvm/hotspot/oops/Mark;
            astore 3 /* mark */
        start local 3 // sun.jvm.hotspot.oops.Mark mark
         2: .line 545
            aconst_null
            astore 4 /* mon */
        start local 4 // sun.jvm.hotspot.runtime.ObjectMonitor mon
         3: .line 546
            aconst_null
            astore 5 /* owner */
        start local 5 // sun.jvm.hotspot.debugger.Address owner
         4: .line 547
            aconst_null
            astore 6 /* owningThread */
        start local 6 // sun.jvm.hotspot.utilities.soql.JSJavaThread owningThread
         5: .line 549
            aload 3 /* mark */
            invokevirtual sun.jvm.hotspot.oops.Mark.hasMonitor:()Z
            ifne 9
         6: .line 551
            aload 3 /* mark */
            invokevirtual sun.jvm.hotspot.oops.Mark.hasLocker:()Z
            ifeq 11
         7: .line 552
            aload 3 /* mark */
            invokevirtual sun.jvm.hotspot.oops.Mark.locker:()Lsun/jvm/hotspot/runtime/BasicLock;
            invokevirtual sun.jvm.hotspot.runtime.BasicLock.getAddress:()Lsun/jvm/hotspot/debugger/Address;
            astore 5 /* owner */
         8: .line 555
            goto 11
         9: .line 557
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine sun.jvm.hotspot.utilities.soql.JSJavaObject sun.jvm.hotspot.oops.Oop sun.jvm.hotspot.oops.Mark sun.jvm.hotspot.runtime.ObjectMonitor sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.utilities.soql.JSJavaThread
      StackMap stack:
            aload 3 /* mark */
            invokevirtual sun.jvm.hotspot.oops.Mark.monitor:()Lsun/jvm/hotspot/runtime/ObjectMonitor;
            astore 4 /* mon */
        10: .line 565
            aload 4 /* mon */
            invokevirtual sun.jvm.hotspot.runtime.ObjectMonitor.owner:()Lsun/jvm/hotspot/debugger/Address;
            astore 5 /* owner */
        11: .line 569
      StackMap locals:
      StackMap stack:
            aload 5 /* owner */
            ifnull 14
        12: .line 570
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getJSJavaFactory:()Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
            astore 7 /* factory */
        start local 7 // sun.jvm.hotspot.utilities.soql.JSJavaFactory factory
        13: .line 571
            aload 7 /* factory */
            invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
            invokevirtual sun.jvm.hotspot.runtime.VM.getThreads:()Lsun/jvm/hotspot/runtime/Threads;
            aload 5 /* owner */
            invokevirtual sun.jvm.hotspot.runtime.Threads.owningThreadFromMonitor:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/runtime/JavaThread;
            invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaThread:(Lsun/jvm/hotspot/runtime/JavaThread;)Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
            astore 6 /* owningThread */
        end local 7 // sun.jvm.hotspot.utilities.soql.JSJavaFactory factory
        14: .line 573
      StackMap locals:
      StackMap stack:
            aload 6 /* owningThread */
            areturn
        end local 6 // sun.jvm.hotspot.utilities.soql.JSJavaThread owningThread
        end local 5 // sun.jvm.hotspot.debugger.Address owner
        end local 4 // sun.jvm.hotspot.runtime.ObjectMonitor mon
        end local 3 // sun.jvm.hotspot.oops.Mark mark
        end local 2 // sun.jvm.hotspot.oops.Oop oop
        end local 1 // sun.jvm.hotspot.utilities.soql.JSJavaObject jo
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   15     1            jo  Lsun/jvm/hotspot/utilities/soql/JSJavaObject;
            1   15     2           oop  Lsun/jvm/hotspot/oops/Oop;
            2   15     3          mark  Lsun/jvm/hotspot/oops/Mark;
            3   15     4           mon  Lsun/jvm/hotspot/runtime/ObjectMonitor;
            4   15     5         owner  Lsun/jvm/hotspot/debugger/Address;
            5   15     6  owningThread  Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
           13   14     7       factory  Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
    MethodParameters:
      Name  Flags
      jo    

  private void processSource(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String filename
         0: .line 582
            aload 1 /* filename */
            ifnonnull 19
         1: .line 583
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.getInputReader:()Ljava/io/BufferedReader;
            pop
         2: .line 584
            ldc "<stdin>"
            astore 2 /* sourceName */
        start local 2 // java.lang.String sourceName
         3: .line 585
            iconst_0
            istore 3 /* lineno */
        start local 3 // int lineno
         4: .line 586
            iconst_0
            istore 4 /* hitEOF */
        start local 4 // boolean hitEOF
         5: .line 588
      StackMap locals: java.lang.String int int
      StackMap stack:
            iload 3 /* lineno */
            istore 5 /* startline */
        start local 5 // int startline
         6: .line 589
            aload 0 /* this */
            ldc "jsdb> "
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printPrompt:(Ljava/lang/String;)V
         7: .line 590
            aload 0 /* this */
            getstatic sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.EMPTY_ARRAY:[Ljava/lang/Object;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.read:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* source */
        start local 6 // java.lang.Object source
         8: .line 591
            aload 6 /* source */
            ifnonnull 11
         9: .line 592
            iconst_1
            istore 4 /* hitEOF */
        10: .line 593
            goto 26
        11: .line 595
      StackMap locals: int java.lang.Object
      StackMap stack:
            iinc 3 /* lineno */ 1
        12: .line 596
            aload 0 /* this */
            aload 6 /* source */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 2 /* sourceName */
            iload 5 /* startline */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.evalString:(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/Object;
            astore 7 /* result */
        start local 7 // java.lang.Object result
        13: .line 597
            aload 7 /* result */
            ifnull 15
        14: .line 598
            aload 0 /* this */
            aload 7 /* result */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;)V
        15: .line 600
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.isQuitting:()Z
            ifeq 17
        16: .line 602
            goto 26
        end local 7 // java.lang.Object result
        end local 6 // java.lang.Object source
        end local 5 // int startline
        17: .line 604
      StackMap locals:
      StackMap stack:
            iload 4 /* hitEOF */
            ifeq 5
        end local 4 // boolean hitEOF
        end local 3 // int lineno
        end local 2 // java.lang.String sourceName
        18: .line 605
            goto 26
        19: .line 606
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* in */
        start local 2 // java.io.Reader in
        20: .line 608
            new java.io.BufferedReader
            dup
            new java.io.FileReader
            dup
            aload 1 /* filename */
            invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 2 /* in */
        21: .line 609
            aload 0 /* this */
            aload 2 /* in */
            aload 1 /* filename */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.evalReader:(Ljava/io/Reader;Ljava/lang/String;)Ljava/lang/Object;
            pop
        22: .line 610
            goto 26
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.lang.String java.io.Reader
      StackMap stack: java.io.FileNotFoundException
        23: astore 3 /* ex */
        start local 3 // java.io.FileNotFoundException ex
        24: .line 611
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "File '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* filename */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' not found"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.println:(Ljava/lang/String;)V
        25: .line 612
            new java.lang.RuntimeException
            dup
            aload 3 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.FileNotFoundException ex
        end local 2 // java.io.Reader in
        26: .line 615
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String filename
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   27     1    filename  Ljava/lang/String;
            3   18     2  sourceName  Ljava/lang/String;
            4   18     3      lineno  I
            5   18     4      hitEOF  Z
            6   17     5   startline  I
            8   17     6      source  Ljava/lang/Object;
           13   17     7      result  Ljava/lang/Object;
           20   26     2          in  Ljava/io/Reader;
           24   26     3          ex  Ljava/io/FileNotFoundException;
      Exception table:
        from    to  target  type
          20    22      23  Class java.io.FileNotFoundException
    MethodParameters:
          Name  Flags
      filename  

  protected java.lang.Object evalString(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.lang.String source
        start local 2 // java.lang.String filename
        start local 3 // int lineNum
         0: .line 619
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            ldc "javax.script.filename"
            aload 2 /* filename */
            invokeinterface javax.script.ScriptEngine.put:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 620
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            aload 1 /* source */
            invokeinterface javax.script.ScriptEngine.eval:(Ljava/lang/String;)Ljava/lang/Object;
         2: areturn
         3: .line 621
      StackMap locals:
      StackMap stack: javax.script.ScriptException
            astore 4 /* sexp */
        start local 4 // javax.script.ScriptException sexp
         4: .line 622
            aload 0 /* this */
            aload 4 /* sexp */
            invokevirtual javax.script.ScriptException.toString:()Ljava/lang/String;
            aload 4 /* sexp */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 4 // javax.script.ScriptException sexp
         5: goto 8
         6: .line 623
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* exp */
        start local 4 // java.lang.Exception exp
         7: .line 624
            aload 0 /* this */
            aload 4 /* exp */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            aload 4 /* exp */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 4 // java.lang.Exception exp
         8: .line 626
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // int lineNum
        end local 2 // java.lang.String filename
        end local 1 // java.lang.String source
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0    9     1    source  Ljava/lang/String;
            0    9     2  filename  Ljava/lang/String;
            0    9     3   lineNum  I
            4    5     4      sexp  Ljavax/script/ScriptException;
            7    8     4       exp  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class javax.script.ScriptException
           0     2       6  Class java.lang.Exception
    MethodParameters:
          Name  Flags
      source    
      filename  
      lineNum   

  private java.lang.Object evalReader(java.io.Reader, java.lang.String);
    descriptor: (Ljava/io/Reader;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
        start local 1 // java.io.Reader in
        start local 2 // java.lang.String filename
         0: .line 631
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            ldc "javax.script.filename"
            aload 2 /* filename */
            invokeinterface javax.script.ScriptEngine.put:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 632
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.engine:Ljavax/script/ScriptEngine;
            aload 1 /* in */
            invokeinterface javax.script.ScriptEngine.eval:(Ljava/io/Reader;)Ljava/lang/Object;
            astore 5
         2: .line 638
            aload 1 /* in */
            invokevirtual java.io.Reader.close:()V
         3: .line 639
            goto 6
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.io.Reader java.lang.String top top java.lang.Object
      StackMap stack: java.io.IOException
         4: astore 6 /* ioe */
        start local 6 // java.io.IOException ioe
         5: .line 640
            aload 0 /* this */
            aload 6 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 6 /* ioe */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 6 // java.io.IOException ioe
         6: .line 632
      StackMap locals:
      StackMap stack:
            aload 5
            areturn
         7: .line 633
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.io.Reader java.lang.String
      StackMap stack: javax.script.ScriptException
            astore 3 /* sexp */
        start local 3 // javax.script.ScriptException sexp
         8: .line 634
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 3 /* sexp */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
         9: .line 635
            aload 0 /* this */
            aload 3 /* sexp */
            invokevirtual javax.script.ScriptException.toString:()Ljava/lang/String;
            aload 3 /* sexp */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 3 // javax.script.ScriptException sexp
        10: .line 638
            aload 1 /* in */
            invokevirtual java.io.Reader.close:()V
        11: .line 639
            goto 21
      StackMap locals:
      StackMap stack: java.io.IOException
        12: astore 6 /* ioe */
        start local 6 // java.io.IOException ioe
        13: .line 640
            aload 0 /* this */
            aload 6 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 6 /* ioe */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 6 // java.io.IOException ioe
        14: goto 21
        15: .line 636
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        16: .line 638
            aload 1 /* in */
            invokevirtual java.io.Reader.close:()V
        17: .line 639
            goto 20
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.io.Reader java.lang.String top java.lang.Throwable
      StackMap stack: java.io.IOException
        18: astore 6 /* ioe */
        start local 6 // java.io.IOException ioe
        19: .line 640
            aload 0 /* this */
            aload 6 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 6 /* ioe */
            invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine.printError:(Ljava/lang/String;Ljava/lang/Exception;)V
        end local 6 // java.io.IOException ioe
        20: .line 642
      StackMap locals:
      StackMap stack:
            aload 4
            athrow
        21: .line 643
      StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine java.io.Reader java.lang.String
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.String filename
        end local 1 // java.io.Reader in
        end local 0 // sun.jvm.hotspot.utilities.soql.JSJavaScriptEngine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lsun/jvm/hotspot/utilities/soql/JSJavaScriptEngine;
            0   22     1        in  Ljava/io/Reader;
            0   22     2  filename  Ljava/lang/String;
            8   10     3      sexp  Ljavax/script/ScriptException;
            5    6     6       ioe  Ljava/io/IOException;
           13   14     6       ioe  Ljava/io/IOException;
           19   20     6       ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.IOException
           0     2       7  Class javax.script.ScriptException
          10    11      12  Class java.io.IOException
           0     2      15  any
           7    10      15  any
          16    17      18  Class java.io.IOException
    MethodParameters:
          Name  Flags
      in        
      filename  
}
SourceFile: "JSJavaScriptEngine.java"