public class jdk.nashorn.tools.Shell implements jdk.nashorn.tools.PartialParser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.nashorn.tools.Shell
  super_class: java.lang.Object
{
  private static final java.lang.String MESSAGE_RESOURCE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.tools.resources.Shell"

  protected static final java.util.ResourceBundle bundle;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  public static final int SUCCESS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int COMMANDLINE_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 100

  public static final int COMPILATION_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 101

  public static final int RUNTIME_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 102

  public static final int IO_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 103

  public static final int INTERNAL_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 104

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 86
            ldc "jdk.nashorn.tools.resources.Shell"
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/ResourceBundle;
            putstatic jdk.nashorn.tools.Shell.bundle:Ljava/util/ResourceBundle;
         1: .line 111
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.tools.Shell this
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 117
            return
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/tools/Shell;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 126
            getstatic java.lang.System.in:Ljava/io/InputStream;
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 0 /* args */
            invokestatic jdk.nashorn.tools.Shell.main:(Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)I
            istore 1 /* exitCode */
        start local 1 // int exitCode
         1: .line 127
            iload 1 /* exitCode */
            ifeq 7
         2: .line 128
            iload 1 /* exitCode */
            invokestatic java.lang.System.exit:(I)V
        end local 1 // int exitCode
         3: .line 130
            goto 7
      StackMap locals:
      StackMap stack: java.io.IOException
         4: astore 1 /* e */
        start local 1 // java.io.IOException e
         5: .line 131
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 1 /* e */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
         6: .line 132
            bipush 103
            invokestatic java.lang.System.exit:(I)V
        end local 1 // java.io.IOException e
         7: .line 134
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      args  [Ljava/lang/String;
            1    3     1  exitCode  I
            5    7     1         e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     3       4  Class java.io.IOException
    MethodParameters:
      Name  Flags
      args  final

  public static int main(java.io.InputStream, java.io.OutputStream, java.io.OutputStream, java.lang.String[]);
    descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.InputStream in
        start local 1 // java.io.OutputStream out
        start local 2 // java.io.OutputStream err
        start local 3 // java.lang.String[] args
         0: .line 150
            new jdk.nashorn.tools.Shell
            dup
            invokespecial jdk.nashorn.tools.Shell.<init>:()V
            aload 0 /* in */
            aload 1 /* out */
            aload 2 /* err */
            aload 3 /* args */
            invokevirtual jdk.nashorn.tools.Shell.run:(Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)I
            ireturn
        end local 3 // java.lang.String[] args
        end local 2 // java.io.OutputStream err
        end local 1 // java.io.OutputStream out
        end local 0 // java.io.InputStream in
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    in  Ljava/io/InputStream;
            0    1     1   out  Ljava/io/OutputStream;
            0    1     2   err  Ljava/io/OutputStream;
            0    1     3  args  [Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    final
      out   final
      err   final
      args  final

  protected final int run(java.io.InputStream, java.io.OutputStream, java.io.OutputStream, java.lang.String[]);
    descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // jdk.nashorn.tools.Shell this
        start local 1 // java.io.InputStream in
        start local 2 // java.io.OutputStream out
        start local 3 // java.io.OutputStream err
        start local 4 // java.lang.String[] args
         0: .line 166
            aload 1 /* in */
            aload 2 /* out */
            aload 3 /* err */
            aload 4 /* args */
            invokestatic jdk.nashorn.tools.Shell.makeContext:(Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)Ljdk/nashorn/internal/runtime/Context;
            astore 5 /* context */
        start local 5 // jdk.nashorn.internal.runtime.Context context
         1: .line 167
            aload 5 /* context */
            ifnonnull 3
         2: .line 168
            bipush 100
            ireturn
         3: .line 171
      StackMap locals: jdk.nashorn.internal.runtime.Context
      StackMap stack:
            aload 5 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.createGlobal:()Ljdk/nashorn/internal/objects/Global;
            astore 6 /* global */
        start local 6 // jdk.nashorn.internal.objects.Global global
         4: .line 172
            aload 5 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            astore 7 /* env */
        start local 7 // jdk.nashorn.internal.runtime.ScriptEnvironment env
         5: .line 173
            aload 7 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getFiles:()Ljava/util/List;
            astore 8 /* files */
        start local 8 // java.util.List files
         6: .line 174
            aload 8 /* files */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         7: .line 175
            aload 0 /* this */
            aload 5 /* context */
            aload 6 /* global */
            invokevirtual jdk.nashorn.tools.Shell.readEvalPrint:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;)I
            ireturn
         8: .line 178
      StackMap locals: jdk.nashorn.internal.objects.Global jdk.nashorn.internal.runtime.ScriptEnvironment java.util.List
      StackMap stack:
            aload 7 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._compile_only:Z
            ifeq 10
         9: .line 179
            aload 5 /* context */
            aload 6 /* global */
            aload 8 /* files */
            invokestatic jdk.nashorn.tools.Shell.compileScripts:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
            ireturn
        10: .line 182
      StackMap locals:
      StackMap stack:
            aload 7 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._fx:Z
            ifeq 12
        11: .line 183
            aload 5 /* context */
            aload 6 /* global */
            aload 8 /* files */
            invokestatic jdk.nashorn.tools.Shell.runFXScripts:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
            ireturn
        12: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* context */
            aload 6 /* global */
            aload 8 /* files */
            invokevirtual jdk.nashorn.tools.Shell.runScripts:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
            ireturn
        end local 8 // java.util.List files
        end local 7 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 6 // jdk.nashorn.internal.objects.Global global
        end local 5 // jdk.nashorn.internal.runtime.Context context
        end local 4 // java.lang.String[] args
        end local 3 // java.io.OutputStream err
        end local 2 // java.io.OutputStream out
        end local 1 // java.io.InputStream in
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Ljdk/nashorn/tools/Shell;
            0   13     1       in  Ljava/io/InputStream;
            0   13     2      out  Ljava/io/OutputStream;
            0   13     3      err  Ljava/io/OutputStream;
            0   13     4     args  [Ljava/lang/String;
            1   13     5  context  Ljdk/nashorn/internal/runtime/Context;
            4   13     6   global  Ljdk/nashorn/internal/objects/Global;
            5   13     7      env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            6   13     8    files  Ljava/util/List<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    final
      out   final
      err   final
      args  final

  private static jdk.nashorn.internal.runtime.Context makeContext(java.io.InputStream, java.io.OutputStream, java.io.OutputStream, java.lang.String[]);
    descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/io/OutputStream;[Ljava/lang/String;)Ljdk/nashorn/internal/runtime/Context;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=17, args_size=4
        start local 0 // java.io.InputStream in
        start local 1 // java.io.OutputStream out
        start local 2 // java.io.OutputStream err
        start local 3 // java.lang.String[] args
         0: .line 200
            aload 1 /* out */
            instanceof java.io.PrintStream
            ifeq 1
            aload 1 /* out */
            checkcast java.io.PrintStream
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.io.PrintStream
            dup
            aload 1 /* out */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
      StackMap locals:
      StackMap stack: java.io.PrintStream
         2: astore 4 /* pout */
        start local 4 // java.io.PrintStream pout
         3: .line 201
            aload 2 /* err */
            instanceof java.io.PrintStream
            ifeq 4
            aload 2 /* err */
            checkcast java.io.PrintStream
            goto 5
      StackMap locals: java.io.PrintStream
      StackMap stack:
         4: new java.io.PrintStream
            dup
            aload 2 /* err */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
      StackMap locals:
      StackMap stack: java.io.PrintStream
         5: astore 5 /* perr */
        start local 5 // java.io.PrintStream perr
         6: .line 202
            new java.io.PrintWriter
            dup
            aload 4 /* pout */
            iconst_1
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
            astore 6 /* wout */
        start local 6 // java.io.PrintWriter wout
         7: .line 203
            new java.io.PrintWriter
            dup
            aload 5 /* perr */
            iconst_1
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
            astore 7 /* werr */
        start local 7 // java.io.PrintWriter werr
         8: .line 206
            new jdk.nashorn.internal.runtime.ErrorManager
            dup
            aload 7 /* werr */
            invokespecial jdk.nashorn.internal.runtime.ErrorManager.<init>:(Ljava/io/PrintWriter;)V
            astore 8 /* errors */
        start local 8 // jdk.nashorn.internal.runtime.ErrorManager errors
         9: .line 208
            new jdk.nashorn.internal.runtime.options.Options
            dup
            ldc "nashorn"
            aload 7 /* werr */
            invokespecial jdk.nashorn.internal.runtime.options.Options.<init>:(Ljava/lang/String;Ljava/io/PrintWriter;)V
            astore 9 /* options */
        start local 9 // jdk.nashorn.internal.runtime.options.Options options
        10: .line 211
            aload 3 /* args */
            ifnull 18
        11: .line 213
            aload 3 /* args */
            invokestatic jdk.nashorn.tools.Shell.preprocessArgs:([Ljava/lang/String;)[Ljava/lang/String;
            astore 10 /* prepArgs */
        start local 10 // java.lang.String[] prepArgs
        12: .line 214
            aload 9 /* options */
            aload 10 /* prepArgs */
            invokevirtual jdk.nashorn.internal.runtime.options.Options.process:([Ljava/lang/String;)V
        end local 10 // java.lang.String[] prepArgs
        13: .line 215
            goto 18
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options
      StackMap stack: java.lang.IllegalArgumentException
        14: astore 10 /* e */
        start local 10 // java.lang.IllegalArgumentException e
        15: .line 216
            aload 7 /* werr */
            getstatic jdk.nashorn.tools.Shell.bundle:Ljava/util/ResourceBundle;
            ldc "shell.usage"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        16: .line 217
            aload 9 /* options */
            aload 10 /* e */
            invokevirtual jdk.nashorn.internal.runtime.options.Options.displayHelp:(Ljava/lang/IllegalArgumentException;)V
        17: .line 218
            aconst_null
            areturn
        end local 10 // java.lang.IllegalArgumentException e
        18: .line 223
      StackMap locals:
      StackMap stack:
            aload 9 /* options */
            ldc "scripting"
            invokevirtual jdk.nashorn.internal.runtime.options.Options.getBoolean:(Ljava/lang/String;)Z
            ifne 38
        19: .line 224
            aload 9 /* options */
            invokevirtual jdk.nashorn.internal.runtime.options.Options.getFiles:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 37
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options top java.util.Iterator
      StackMap stack:
        20: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* fileName */
        start local 10 // java.lang.String fileName
        21: .line 225
            new java.io.File
            dup
            aload 10 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 12 /* firstFile */
        start local 12 // java.io.File firstFile
        22: .line 226
            aload 12 /* firstFile */
            invokevirtual java.io.File.isFile:()Z
            ifeq 37
        23: .line 227
            aconst_null
            astore 13
            aconst_null
            astore 14
        24: new java.io.FileReader
            dup
            aload 12 /* firstFile */
            invokespecial java.io.FileReader.<init>:(Ljava/io/File;)V
            astore 15 /* fr */
        start local 15 // java.io.FileReader fr
        25: .line 228
            aload 15 /* fr */
            invokevirtual java.io.FileReader.read:()I
            istore 16 /* firstChar */
        start local 16 // int firstChar
        26: .line 230
            iload 16 /* firstChar */
            bipush 35
            if_icmpne 30
        27: .line 231
            aload 9 /* options */
            ldc "scripting"
            iconst_1
            invokevirtual jdk.nashorn.internal.runtime.options.Options.set:(Ljava/lang/String;Z)V
        28: .line 234
            aload 15 /* fr */
            ifnull 38
            aload 15 /* fr */
            invokevirtual java.io.FileReader.close:()V
        29: .line 232
            goto 38
        end local 16 // int firstChar
        30: .line 234
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options java.lang.String java.util.Iterator java.io.File java.lang.Throwable java.lang.Throwable java.io.FileReader
      StackMap stack:
            aload 15 /* fr */
            ifnull 37
            aload 15 /* fr */
            invokevirtual java.io.FileReader.close:()V
            goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: astore 13
            aload 15 /* fr */
            ifnull 32
            aload 15 /* fr */
            invokevirtual java.io.FileReader.close:()V
        end local 15 // java.io.FileReader fr
      StackMap locals:
      StackMap stack:
        32: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 14
            aload 13
            ifnonnull 34
            aload 14
            astore 13
            goto 35
      StackMap locals:
      StackMap stack:
        34: aload 13
            aload 14
            if_acmpeq 35
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        35: aload 13
            athrow
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options java.lang.String java.util.Iterator java.io.File
      StackMap stack: java.io.IOException
        36: pop
        end local 12 // java.io.File firstFile
        end local 10 // java.lang.String fileName
        37: .line 224
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        38: .line 241
      StackMap locals: java.io.InputStream java.io.OutputStream java.io.OutputStream java.lang.String[] java.io.PrintStream java.io.PrintStream java.io.PrintWriter java.io.PrintWriter jdk.nashorn.internal.runtime.ErrorManager jdk.nashorn.internal.runtime.options.Options
      StackMap stack:
            new jdk.nashorn.internal.runtime.Context
            dup
            aload 9 /* options */
            aload 8 /* errors */
            aload 6 /* wout */
            aload 7 /* werr */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            invokespecial jdk.nashorn.internal.runtime.Context.<init>:(Ljdk/nashorn/internal/runtime/options/Options;Ljdk/nashorn/internal/runtime/ErrorManager;Ljava/io/PrintWriter;Ljava/io/PrintWriter;Ljava/lang/ClassLoader;)V
            areturn
        end local 9 // jdk.nashorn.internal.runtime.options.Options options
        end local 8 // jdk.nashorn.internal.runtime.ErrorManager errors
        end local 7 // java.io.PrintWriter werr
        end local 6 // java.io.PrintWriter wout
        end local 5 // java.io.PrintStream perr
        end local 4 // java.io.PrintStream pout
        end local 3 // java.lang.String[] args
        end local 2 // java.io.OutputStream err
        end local 1 // java.io.OutputStream out
        end local 0 // java.io.InputStream in
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   39     0         in  Ljava/io/InputStream;
            0   39     1        out  Ljava/io/OutputStream;
            0   39     2        err  Ljava/io/OutputStream;
            0   39     3       args  [Ljava/lang/String;
            3   39     4       pout  Ljava/io/PrintStream;
            6   39     5       perr  Ljava/io/PrintStream;
            7   39     6       wout  Ljava/io/PrintWriter;
            8   39     7       werr  Ljava/io/PrintWriter;
            9   39     8     errors  Ljdk/nashorn/internal/runtime/ErrorManager;
           10   39     9    options  Ljdk/nashorn/internal/runtime/options/Options;
           12   13    10   prepArgs  [Ljava/lang/String;
           15   18    10          e  Ljava/lang/IllegalArgumentException;
           21   37    10   fileName  Ljava/lang/String;
           22   37    12  firstFile  Ljava/io/File;
           25   32    15         fr  Ljava/io/FileReader;
           26   30    16  firstChar  I
      Exception table:
        from    to  target  type
          11    13      14  Class java.lang.IllegalArgumentException
          25    28      31  any
          24    29      33  any
          30    33      33  any
          23    29      36  Class java.io.IOException
          30    36      36  Class java.io.IOException
    MethodParameters:
      Name  Flags
      in    final
      out   final
      err   final
      args  final

  private static java.lang.String[] preprocessArgs(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 271
            aload 0 /* args */
            arraylength
            ifne 2
         1: .line 272
            aload 0 /* args */
            areturn
         2: .line 275
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* processedArgs */
        start local 1 // java.util.List processedArgs
         3: .line 276
            aload 1 /* processedArgs */
            aload 0 /* args */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 282
            aload 0 /* args */
            iconst_0
            aaload
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
            ldc "os.name"
            ldc "generic"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            ldc "Mac OS X"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 6
         5: .line 283
            aload 1 /* processedArgs */
            iconst_0
            aload 1 /* processedArgs */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic jdk.nashorn.tools.Shell.tokenizeString:(Ljava/lang/String;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(ILjava/util/Collection;)Z
            pop
         6: .line 286
      StackMap locals: java.util.List
      StackMap stack:
            iconst_m1
            istore 2 /* shebangFilePos */
        start local 2 // int shebangFilePos
         7: .line 288
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         8: goto 27
         9: .line 289
      StackMap locals: int int
      StackMap stack:
            aload 1 /* processedArgs */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* a */
        start local 4 // java.lang.String a
        10: .line 290
            aload 4 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 26
        11: .line 291
            aload 4 /* a */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 5 /* p */
        start local 5 // java.nio.file.Path p
        12: .line 292
            ldc ""
            astore 6 /* l */
        start local 6 // java.lang.String l
        13: .line 293
            aconst_null
            astore 7
            aconst_null
            astore 8
        14: aload 5 /* p */
            invokestatic java.nio.file.Files.newBufferedReader:(Ljava/nio/file/Path;)Ljava/io/BufferedReader;
            astore 9 /* r */
        start local 9 // java.io.BufferedReader r
        15: .line 294
            aload 9 /* r */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            astore 6 /* l */
        16: .line 295
            aload 9 /* r */
            ifnull 23
            aload 9 /* r */
            invokevirtual java.io.BufferedReader.close:()V
            goto 23
      StackMap locals: java.lang.String[] java.util.List int int java.lang.String java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.io.BufferedReader
      StackMap stack: java.lang.Throwable
        17: astore 7
            aload 9 /* r */
            ifnull 18
            aload 9 /* r */
            invokevirtual java.io.BufferedReader.close:()V
        end local 9 // java.io.BufferedReader r
      StackMap locals:
      StackMap stack:
        18: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 8
            aload 7
            ifnonnull 20
            aload 8
            astore 7
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 7
            aload 8
            if_acmpeq 21
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        21: aload 7
            athrow
      StackMap locals: java.lang.String[] java.util.List int int java.lang.String java.nio.file.Path java.lang.String
      StackMap stack: java.io.IOException
        22: pop
        23: .line 298
      StackMap locals:
      StackMap stack:
            aload 6 /* l */
            ifnull 28
            aload 6 /* l */
            ldc "#!"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 28
        24: .line 299
            iload 3 /* i */
            istore 2 /* shebangFilePos */
        25: .line 303
            goto 28
        end local 6 // java.lang.String l
        end local 5 // java.nio.file.Path p
        end local 4 // java.lang.String a
        26: .line 288
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 3 /* i */
            aload 1 /* processedArgs */
            invokeinterface java.util.List.size:()I
            if_icmplt 9
        end local 3 // int i
        28: .line 306
      StackMap locals:
      StackMap stack:
            iload 2 /* shebangFilePos */
            iconst_m1
            if_icmpeq 30
        29: .line 308
            aload 1 /* processedArgs */
            iload 2 /* shebangFilePos */
            iconst_1
            iadd
            ldc "--"
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        30: .line 310
      StackMap locals:
      StackMap stack:
            aload 1 /* processedArgs */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/nashorn/tools/Shell.lambda$0(I)[Ljava/lang/String; (6)
                  (I)[Ljava/lang/String;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 2 // int shebangFilePos
        end local 1 // java.util.List processedArgs
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   31     0            args  [Ljava/lang/String;
            3   31     1   processedArgs  Ljava/util/List<Ljava/lang/String;>;
            7   31     2  shebangFilePos  I
            8   28     3               i  I
           10   26     4               a  Ljava/lang/String;
           12   26     5               p  Ljava/nio/file/Path;
           13   26     6               l  Ljava/lang/String;
           15   18     9               r  Ljava/io/BufferedReader;
      Exception table:
        from    to  target  type
          15    16      17  any
          14    19      19  any
          13    22      22  Class java.io.IOException
    MethodParameters:
      Name  Flags
      args  final

  public static java.util.List<java.lang.String> tokenizeString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String str
         0: .line 314
            new java.io.StreamTokenizer
            dup
            new java.io.StringReader
            dup
            aload 0 /* str */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            invokespecial java.io.StreamTokenizer.<init>:(Ljava/io/Reader;)V
            astore 1 /* tokenizer */
        start local 1 // java.io.StreamTokenizer tokenizer
         1: .line 315
            aload 1 /* tokenizer */
            invokevirtual java.io.StreamTokenizer.resetSyntax:()V
         2: .line 316
            aload 1 /* tokenizer */
            iconst_0
            sipush 255
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         3: .line 317
            aload 1 /* tokenizer */
            iconst_0
            bipush 32
            invokevirtual java.io.StreamTokenizer.whitespaceChars:(II)V
         4: .line 318
            aload 1 /* tokenizer */
            bipush 35
            invokevirtual java.io.StreamTokenizer.commentChar:(I)V
         5: .line 319
            aload 1 /* tokenizer */
            bipush 34
            invokevirtual java.io.StreamTokenizer.quoteChar:(I)V
         6: .line 320
            aload 1 /* tokenizer */
            bipush 39
            invokevirtual java.io.StreamTokenizer.quoteChar:(I)V
         7: .line 321
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* tokenList */
        start local 2 // java.util.List tokenList
         8: .line 322
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* toAppend */
        start local 3 // java.lang.StringBuilder toAppend
         9: .line 323
            goto 16
        10: .line 324
      StackMap locals: java.io.StreamTokenizer java.util.List java.lang.StringBuilder
      StackMap stack:
            aload 1 /* tokenizer */
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
        11: .line 329
            aload 4 /* s */
            ldc "\\"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 14
        12: .line 331
            aload 3 /* toAppend */
            aload 4 /* s */
            iconst_0
            aload 4 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 332
            goto 16
        14: .line 333
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* tokenList */
            aload 3 /* toAppend */
            aload 4 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 334
            aload 3 /* toAppend */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        end local 4 // java.lang.String s
        16: .line 323
      StackMap locals:
      StackMap stack:
            aload 1 /* tokenizer */
            invokestatic jdk.nashorn.tools.Shell.nextToken:(Ljava/io/StreamTokenizer;)I
            iconst_m1
            if_icmpne 10
        17: .line 337
            aload 3 /* toAppend */
            invokevirtual java.lang.StringBuilder.length:()I
            ifeq 19
        18: .line 338
            aload 2 /* tokenList */
            aload 3 /* toAppend */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 340
      StackMap locals:
      StackMap stack:
            aload 2 /* tokenList */
            areturn
        end local 3 // java.lang.StringBuilder toAppend
        end local 2 // java.util.List tokenList
        end local 1 // java.io.StreamTokenizer tokenizer
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0        str  Ljava/lang/String;
            1   20     1  tokenizer  Ljava/io/StreamTokenizer;
            8   20     2  tokenList  Ljava/util/List<Ljava/lang/String;>;
            9   20     3   toAppend  Ljava/lang/StringBuilder;
           11   16     4          s  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      str   final

  private static int nextToken(java.io.StreamTokenizer);
    descriptor: (Ljava/io/StreamTokenizer;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.io.StreamTokenizer tokenizer
         0: .line 345
            aload 0 /* tokenizer */
            invokevirtual java.io.StreamTokenizer.nextToken:()I
         1: ireturn
         2: .line 346
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         3: .line 347
            iconst_m1
            ireturn
        end local 0 // java.io.StreamTokenizer tokenizer
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  tokenizer  Ljava/io/StreamTokenizer;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
           Name  Flags
      tokenizer  final

  private static int compileScripts(jdk.nashorn.internal.runtime.Context, jdk.nashorn.internal.objects.Global, java.util.List<java.lang.String>);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=11, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.Context context
        start local 1 // jdk.nashorn.internal.objects.Global global
        start local 2 // java.util.List files
         0: .line 363
            invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
            astore 3 /* oldGlobal */
        start local 3 // jdk.nashorn.internal.objects.Global oldGlobal
         1: .line 364
            aload 3 /* oldGlobal */
            aload 1 /* global */
            if_acmpeq 2
            iconst_1
            goto 3
      StackMap locals: jdk.nashorn.internal.objects.Global
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* globalChanged */
        start local 4 // boolean globalChanged
         4: .line 365
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            astore 5 /* env */
        start local 5 // jdk.nashorn.internal.runtime.ScriptEnvironment env
         5: .line 367
            iload 4 /* globalChanged */
            ifeq 7
         6: .line 368
            aload 1 /* global */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
         7: .line 370
      StackMap locals: int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack:
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErrorManager:()Ljdk/nashorn/internal/runtime/ErrorManager;
            astore 6 /* errors */
        start local 6 // jdk.nashorn.internal.runtime.ErrorManager errors
         8: .line 373
            aload 2 /* files */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 32
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment jdk.nashorn.internal.runtime.ErrorManager top java.util.Iterator
      StackMap stack:
         9: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* fileName */
        start local 7 // java.lang.String fileName
        10: .line 374
            new jdk.nashorn.internal.parser.Parser
            dup
            aload 5 /* env */
            aload 7 /* fileName */
            new java.io.File
            dup
            aload 7 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokestatic jdk.nashorn.internal.runtime.Source.sourceFor:(Ljava/lang/String;Ljava/io/File;)Ljdk/nashorn/internal/runtime/Source;
            aload 6 /* errors */
            aload 5 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._strict:Z
            iconst_0
            aload 0 /* context */
            ldc Ljdk/nashorn/internal/parser/Parser;
            invokevirtual jdk.nashorn.internal.runtime.Context.getLogger:(Ljava/lang/Class;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            invokespecial jdk.nashorn.internal.parser.Parser.<init>:(Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;ZILjdk/nashorn/internal/runtime/logging/DebugLogger;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.parse:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 9 /* functionNode */
        start local 9 // jdk.nashorn.internal.ir.FunctionNode functionNode
        11: .line 376
            aload 6 /* errors */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.getNumberOfErrors:()I
            ifeq 17
        12: .line 399
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        13: .line 400
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        14: .line 401
            iload 4 /* globalChanged */
            ifeq 16
        15: .line 402
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        16: .line 377
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment jdk.nashorn.internal.runtime.ErrorManager java.lang.String java.util.Iterator jdk.nashorn.internal.ir.FunctionNode
      StackMap stack:
            bipush 101
            ireturn
        17: .line 381
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
        18: .line 382
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getSource:()Ljdk/nashorn/internal/runtime/Source;
        19: .line 383
            aload 5 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._strict:Z
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.isStrict:()Z
            ior
        20: .line 380
            invokestatic jdk.nashorn.internal.codegen.Compiler.forNoInstallerCompilation:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/runtime/Source;Z)Ljdk/nashorn/internal/codegen/Compiler;
        21: .line 384
            aload 9 /* functionNode */
            getstatic jdk.nashorn.internal.codegen.Compiler$CompilationPhases.COMPILE_ALL_NO_INSTALL:Ljdk/nashorn/internal/codegen/Compiler$CompilationPhases;
            invokevirtual jdk.nashorn.internal.codegen.Compiler.compile:(Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/codegen/Compiler$CompilationPhases;)Ljdk/nashorn/internal/ir/FunctionNode;
            pop
        22: .line 386
            aload 5 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._print_ast:Z
            ifeq 24
        23: .line 387
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            new jdk.nashorn.internal.ir.debug.ASTWriter
            dup
            aload 9 /* functionNode */
            invokespecial jdk.nashorn.internal.ir.debug.ASTWriter.<init>:(Ljdk/nashorn/internal/ir/Node;)V
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
        24: .line 390
      StackMap locals:
      StackMap stack:
            aload 5 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._print_parse:Z
            ifeq 26
        25: .line 391
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            new jdk.nashorn.internal.ir.debug.PrintVisitor
            dup
            aload 9 /* functionNode */
            invokespecial jdk.nashorn.internal.ir.debug.PrintVisitor.<init>:(Ljdk/nashorn/internal/ir/Node;)V
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
        26: .line 394
      StackMap locals:
      StackMap stack:
            aload 6 /* errors */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.getNumberOfErrors:()I
            ifeq 32
        27: .line 399
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        28: .line 400
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        29: .line 401
            iload 4 /* globalChanged */
            ifeq 31
        30: .line 402
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        31: .line 395
      StackMap locals:
      StackMap stack:
            bipush 101
            ireturn
        end local 9 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 7 // java.lang.String fileName
        32: .line 373
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment jdk.nashorn.internal.runtime.ErrorManager top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        end local 6 // jdk.nashorn.internal.runtime.ErrorManager errors
        33: .line 398
            goto 40
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack: java.lang.Throwable
        34: astore 10
        35: .line 399
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        36: .line 400
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        37: .line 401
            iload 4 /* globalChanged */
            ifeq 39
        38: .line 402
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        39: .line 404
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment top top top top java.lang.Throwable
      StackMap stack:
            aload 10
            athrow
        40: .line 399
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack:
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        41: .line 400
            aload 5 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        42: .line 401
            iload 4 /* globalChanged */
            ifeq 44
        43: .line 402
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        44: .line 406
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 4 // boolean globalChanged
        end local 3 // jdk.nashorn.internal.objects.Global oldGlobal
        end local 2 // java.util.List files
        end local 1 // jdk.nashorn.internal.objects.Global global
        end local 0 // jdk.nashorn.internal.runtime.Context context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   45     0        context  Ljdk/nashorn/internal/runtime/Context;
            0   45     1         global  Ljdk/nashorn/internal/objects/Global;
            0   45     2          files  Ljava/util/List<Ljava/lang/String;>;
            1   45     3      oldGlobal  Ljdk/nashorn/internal/objects/Global;
            4   45     4  globalChanged  Z
            5   45     5            env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            8   33     6         errors  Ljdk/nashorn/internal/runtime/ErrorManager;
           10   32     7       fileName  Ljava/lang/String;
           11   32     9   functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
      Exception table:
        from    to  target  type
           5    12      34  any
          17    27      34  any
          32    34      34  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List<Ljava/lang/String;>;)I
    MethodParameters:
         Name  Flags
      context  final
      global   final
      files    final

  private int runScripts(jdk.nashorn.internal.runtime.Context, jdk.nashorn.internal.objects.Global, java.util.List<java.lang.String>);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=14, args_size=4
        start local 0 // jdk.nashorn.tools.Shell this
        start local 1 // jdk.nashorn.internal.runtime.Context context
        start local 2 // jdk.nashorn.internal.objects.Global global
        start local 3 // java.util.List files
         0: .line 420
            invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
            astore 4 /* oldGlobal */
        start local 4 // jdk.nashorn.internal.objects.Global oldGlobal
         1: .line 421
            aload 4 /* oldGlobal */
            aload 2 /* global */
            if_acmpeq 2
            iconst_1
            goto 3
      StackMap locals: jdk.nashorn.internal.objects.Global
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* globalChanged */
        start local 5 // boolean globalChanged
         4: .line 423
            iload 5 /* globalChanged */
            ifeq 6
         5: .line 424
            aload 2 /* global */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
         6: .line 426
      StackMap locals: int
      StackMap stack:
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErrorManager:()Ljdk/nashorn/internal/runtime/ErrorManager;
            astore 6 /* errors */
        start local 6 // jdk.nashorn.internal.runtime.ErrorManager errors
         7: .line 429
            aload 3 /* files */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 39
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ErrorManager top java.util.Iterator
      StackMap stack:
         8: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* fileName */
        start local 7 // java.lang.String fileName
         9: .line 430
            ldc "-"
            aload 7 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        10: .line 431
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* global */
            invokevirtual jdk.nashorn.tools.Shell.readEvalPrint:(Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;)I
            istore 9 /* res */
        start local 9 // int res
        11: .line 432
            iload 9 /* res */
            ifeq 39
        12: .line 433
            iload 9 /* res */
            istore 13
        13: .line 459
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        14: .line 460
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        15: .line 461
            iload 5 /* globalChanged */
            ifeq 17
        16: .line 462
            aload 4 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        17: .line 433
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ErrorManager java.lang.String java.util.Iterator int top top top int
      StackMap stack:
            iload 13
            ireturn
        end local 9 // int res
        18: .line 438
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ErrorManager java.lang.String java.util.Iterator
      StackMap stack:
            new java.io.File
            dup
            aload 7 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 9 /* file */
        start local 9 // java.io.File file
        19: .line 439
            aload 1 /* context */
            aload 7 /* fileName */
            aload 9 /* file */
            invokestatic jdk.nashorn.internal.runtime.Source.sourceFor:(Ljava/lang/String;Ljava/io/File;)Ljdk/nashorn/internal/runtime/Source;
            aload 2 /* global */
            invokevirtual jdk.nashorn.internal.runtime.Context.compileScript:(Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/ScriptFunction;
            astore 10 /* script */
        start local 10 // jdk.nashorn.internal.runtime.ScriptFunction script
        20: .line 440
            aload 10 /* script */
            ifnull 21
            aload 6 /* errors */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.getNumberOfErrors:()I
            ifeq 28
        21: .line 441
      StackMap locals: java.io.File jdk.nashorn.internal.runtime.ScriptFunction
      StackMap stack:
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 23
            aload 6 /* errors */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.hasErrors:()Z
            ifne 23
        22: .line 442
            goto 39
        23: .line 459
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        24: .line 460
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        25: .line 461
            iload 5 /* globalChanged */
            ifeq 27
        26: .line 462
            aload 4 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        27: .line 444
      StackMap locals:
      StackMap stack:
            bipush 101
            ireturn
        28: .line 448
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* script */
            aload 2 /* global */
            invokevirtual jdk.nashorn.tools.Shell.apply:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 449
            goto 39
      StackMap locals:
      StackMap stack: jdk.nashorn.api.scripting.NashornException
        30: astore 11 /* e */
        start local 11 // jdk.nashorn.api.scripting.NashornException e
        31: .line 450
            aload 6 /* errors */
            aload 11 /* e */
            invokevirtual jdk.nashorn.api.scripting.NashornException.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljava/lang/String;)V
        32: .line 451
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._dump_on_error:Z
            ifeq 34
        33: .line 452
            aload 11 /* e */
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual jdk.nashorn.api.scripting.NashornException.printStackTrace:(Ljava/io/PrintWriter;)V
        34: .line 459
      StackMap locals: jdk.nashorn.api.scripting.NashornException
      StackMap stack:
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        35: .line 460
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        36: .line 461
            iload 5 /* globalChanged */
            ifeq 38
        37: .line 462
            aload 4 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        38: .line 455
      StackMap locals:
      StackMap stack:
            bipush 102
            ireturn
        end local 11 // jdk.nashorn.api.scripting.NashornException e
        end local 10 // jdk.nashorn.internal.runtime.ScriptFunction script
        end local 9 // java.io.File file
        end local 7 // java.lang.String fileName
        39: .line 429
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ErrorManager top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 6 // jdk.nashorn.internal.runtime.ErrorManager errors
        40: .line 458
            goto 47
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int
      StackMap stack: java.lang.Throwable
        41: astore 12
        42: .line 459
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        43: .line 460
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        44: .line 461
            iload 5 /* globalChanged */
            ifeq 46
        45: .line 462
            aload 4 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        46: .line 464
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int top top top top top top java.lang.Throwable
      StackMap stack:
            aload 12
            athrow
        47: .line 459
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int
      StackMap stack:
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        48: .line 460
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        49: .line 461
            iload 5 /* globalChanged */
            ifeq 51
        50: .line 462
            aload 4 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        51: .line 466
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // boolean globalChanged
        end local 4 // jdk.nashorn.internal.objects.Global oldGlobal
        end local 3 // java.util.List files
        end local 2 // jdk.nashorn.internal.objects.Global global
        end local 1 // jdk.nashorn.internal.runtime.Context context
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   52     0           this  Ljdk/nashorn/tools/Shell;
            0   52     1        context  Ljdk/nashorn/internal/runtime/Context;
            0   52     2         global  Ljdk/nashorn/internal/objects/Global;
            0   52     3          files  Ljava/util/List<Ljava/lang/String;>;
            1   52     4      oldGlobal  Ljdk/nashorn/internal/objects/Global;
            4   52     5  globalChanged  Z
            7   40     6         errors  Ljdk/nashorn/internal/runtime/ErrorManager;
            9   39     7       fileName  Ljava/lang/String;
           11   18     9            res  I
           19   39     9           file  Ljava/io/File;
           20   39    10         script  Ljdk/nashorn/internal/runtime/ScriptFunction;
           31   39    11              e  Ljdk/nashorn/api/scripting/NashornException;
      Exception table:
        from    to  target  type
          28    29      30  Class jdk.nashorn.api.scripting.NashornException
           4    13      41  any
          18    23      41  any
          28    34      41  any
          39    41      41  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List<Ljava/lang/String;>;)I
    MethodParameters:
         Name  Flags
      context  final
      global   final
      files    final

  private static int runFXScripts(jdk.nashorn.internal.runtime.Context, jdk.nashorn.internal.objects.Global, java.util.List<java.lang.String>);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.Context context
        start local 1 // jdk.nashorn.internal.objects.Global global
        start local 2 // java.util.List files
         0: .line 481
            invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
            astore 3 /* oldGlobal */
        start local 3 // jdk.nashorn.internal.objects.Global oldGlobal
         1: .line 482
            aload 3 /* oldGlobal */
            aload 1 /* global */
            if_acmpeq 2
            iconst_1
            goto 3
      StackMap locals: jdk.nashorn.internal.objects.Global
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* globalChanged */
        start local 4 // boolean globalChanged
         4: .line 484
            iload 4 /* globalChanged */
            ifeq 6
         5: .line 485
            aload 1 /* global */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
         6: .line 488
      StackMap locals: int
      StackMap stack:
            aload 1 /* global */
            ldc "$GLOBAL"
            iconst_2
            aload 1 /* global */
            invokevirtual jdk.nashorn.internal.objects.Global.addOwnProperty:(Ljava/lang/Object;ILjava/lang/Object;)Ljdk/nashorn/internal/runtime/Property;
            pop
         7: .line 489
            aload 1 /* global */
            ldc "$SCRIPTS"
            iconst_2
            aload 2 /* files */
            invokevirtual jdk.nashorn.internal.objects.Global.addOwnProperty:(Ljava/lang/Object;ILjava/lang/Object;)Ljdk/nashorn/internal/runtime/Property;
            pop
         8: .line 490
            aload 0 /* context */
            aload 1 /* global */
            ldc "fx:bootstrap.js"
            invokevirtual jdk.nashorn.internal.runtime.Context.load:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 491
            goto 25
      StackMap locals:
      StackMap stack: jdk.nashorn.api.scripting.NashornException
        10: astore 5 /* e */
        start local 5 // jdk.nashorn.api.scripting.NashornException e
        11: .line 492
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErrorManager:()Ljdk/nashorn/internal/runtime/ErrorManager;
            aload 5 /* e */
            invokevirtual jdk.nashorn.api.scripting.NashornException.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljava/lang/String;)V
        12: .line 493
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._dump_on_error:Z
            ifeq 14
        13: .line 494
            aload 5 /* e */
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual jdk.nashorn.api.scripting.NashornException.printStackTrace:(Ljava/io/PrintWriter;)V
        14: .line 499
      StackMap locals: jdk.nashorn.api.scripting.NashornException
      StackMap stack:
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        15: .line 500
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        16: .line 501
            iload 4 /* globalChanged */
            ifeq 18
        17: .line 502
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        18: .line 497
      StackMap locals:
      StackMap stack:
            bipush 102
            ireturn
        end local 5 // jdk.nashorn.api.scripting.NashornException e
        19: .line 498
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int
      StackMap stack: java.lang.Throwable
            astore 6
        20: .line 499
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        21: .line 500
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        22: .line 501
            iload 4 /* globalChanged */
            ifeq 24
        23: .line 502
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        24: .line 504
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int top java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        25: .line 499
      StackMap locals: jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.util.List jdk.nashorn.internal.objects.Global int
      StackMap stack:
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getOut:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        26: .line 500
            aload 0 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.io.PrintWriter.flush:()V
        27: .line 501
            iload 4 /* globalChanged */
            ifeq 29
        28: .line 502
            aload 3 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        29: .line 506
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // boolean globalChanged
        end local 3 // jdk.nashorn.internal.objects.Global oldGlobal
        end local 2 // java.util.List files
        end local 1 // jdk.nashorn.internal.objects.Global global
        end local 0 // jdk.nashorn.internal.runtime.Context context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   30     0        context  Ljdk/nashorn/internal/runtime/Context;
            0   30     1         global  Ljdk/nashorn/internal/objects/Global;
            0   30     2          files  Ljava/util/List<Ljava/lang/String;>;
            1   30     3      oldGlobal  Ljdk/nashorn/internal/objects/Global;
            4   30     4  globalChanged  Z
           11   19     5              e  Ljdk/nashorn/api/scripting/NashornException;
      Exception table:
        from    to  target  type
           4     9      10  Class jdk.nashorn.api.scripting.NashornException
           4    14      19  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;Ljava/util/List<Ljava/lang/String;>;)I
    MethodParameters:
         Name  Flags
      context  final
      global   final
      files    final

  protected java.lang.Object apply(jdk.nashorn.internal.runtime.ScriptFunction, java.lang.Object);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.tools.Shell this
        start local 1 // jdk.nashorn.internal.runtime.ScriptFunction target
        start local 2 // java.lang.Object self
         0: .line 519
            aload 1 /* target */
            aload 2 /* self */
            iconst_0
            anewarray java.lang.Object
            invokestatic jdk.nashorn.internal.runtime.ScriptRuntime.apply:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object self
        end local 1 // jdk.nashorn.internal.runtime.ScriptFunction target
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/nashorn/tools/Shell;
            0    1     1  target  Ljdk/nashorn/internal/runtime/ScriptFunction;
            0    1     2    self  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      target  final
      self    final

  public final int getLastExpressionStart(jdk.nashorn.internal.runtime.Context, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljava/lang/String;)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // jdk.nashorn.tools.Shell this
        start local 1 // jdk.nashorn.internal.runtime.Context context
        start local 2 // java.lang.String code
         0: .line 532
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 3 /* exprStart */
        start local 3 // int[] exprStart
         1: .line 534
            new jdk.nashorn.tools.Shell$1
            dup
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            ldc "<partial_code>"
            aload 2 /* code */
            invokestatic jdk.nashorn.internal.runtime.Source.sourceFor:(Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/runtime/Source;
            new jdk.nashorn.internal.runtime.Context$ThrowErrorManager
            dup
            invokespecial jdk.nashorn.internal.runtime.Context$ThrowErrorManager.<init>:()V
            aload 3 /* exprStart */
            invokespecial jdk.nashorn.tools.Shell$1.<init>:(Ljdk/nashorn/tools/Shell;Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;[I)V
            astore 4 /* p */
        start local 4 // jdk.nashorn.internal.parser.Parser p
         2: .line 549
            aload 4 /* p */
            invokevirtual jdk.nashorn.internal.parser.Parser.parse:()Ljdk/nashorn/internal/ir/FunctionNode;
            pop
         3: .line 550
            goto 5
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context java.lang.String int[] jdk.nashorn.internal.parser.Parser
      StackMap stack: java.lang.Exception
         4: pop
         5: .line 554
      StackMap locals:
      StackMap stack:
            aload 3 /* exprStart */
            iconst_0
            iaload
            ireturn
        end local 4 // jdk.nashorn.internal.parser.Parser p
        end local 3 // int[] exprStart
        end local 2 // java.lang.String code
        end local 1 // jdk.nashorn.internal.runtime.Context context
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljdk/nashorn/tools/Shell;
            0    6     1    context  Ljdk/nashorn/internal/runtime/Context;
            0    6     2       code  Ljava/lang/String;
            1    6     3  exprStart  [I
            2    6     4          p  Ljdk/nashorn/internal/parser/Parser;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      context  final
      code     final

  protected int readEvalPrint(jdk.nashorn.internal.runtime.Context, jdk.nashorn.internal.objects.Global);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljdk/nashorn/internal/objects/Global;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // jdk.nashorn.tools.Shell this
        start local 1 // jdk.nashorn.internal.runtime.Context context
        start local 2 // jdk.nashorn.internal.objects.Global global
         0: .line 566
            getstatic jdk.nashorn.tools.Shell.bundle:Ljava/util/ResourceBundle;
            ldc "shell.prompt"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* prompt */
        start local 3 // java.lang.String prompt
         1: .line 567
            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
            astore 4 /* in */
        start local 4 // java.io.BufferedReader in
         2: .line 568
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getErr:()Ljava/io/PrintWriter;
            astore 5 /* err */
        start local 5 // java.io.PrintWriter err
         3: .line 569
            invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
            astore 6 /* oldGlobal */
        start local 6 // jdk.nashorn.internal.objects.Global oldGlobal
         4: .line 570
            aload 6 /* oldGlobal */
            aload 2 /* global */
            if_acmpeq 5
            iconst_1
            goto 6
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.lang.String java.io.BufferedReader java.io.PrintWriter jdk.nashorn.internal.objects.Global
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 7 /* globalChanged */
        start local 7 // boolean globalChanged
         7: .line 571
            aload 1 /* context */
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            astore 8 /* env */
        start local 8 // jdk.nashorn.internal.runtime.ScriptEnvironment env
         8: .line 574
            iload 7 /* globalChanged */
            ifeq 10
         9: .line 575
            aload 2 /* global */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        10: .line 578
      StackMap locals: int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack:
            aload 2 /* global */
            invokevirtual jdk.nashorn.internal.objects.Global.addShellBuiltins:()V
        11: .line 581
      StackMap locals:
      StackMap stack:
            aload 5 /* err */
            aload 3 /* prompt */
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        12: .line 582
            aload 5 /* err */
            invokevirtual java.io.PrintWriter.flush:()V
        13: .line 584
            ldc ""
            astore 9 /* source */
        start local 9 // java.lang.String source
        14: .line 586
            aload 4 /* in */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            astore 9 /* source */
        15: .line 587
            goto 18
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.lang.String java.io.BufferedReader java.io.PrintWriter jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment java.lang.String
      StackMap stack: java.io.IOException
        16: astore 10 /* ioe */
        start local 10 // java.io.IOException ioe
        17: .line 588
            aload 5 /* err */
            aload 10 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        end local 10 // java.io.IOException ioe
        18: .line 591
      StackMap locals:
      StackMap stack:
            aload 9 /* source */
            ifnonnull 20
        19: .line 592
            goto 35
        20: .line 595
      StackMap locals:
      StackMap stack:
            aload 9 /* source */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 22
        21: .line 596
            goto 11
        22: .line 600
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* global */
            aload 9 /* source */
            aload 2 /* global */
            ldc "<shell>"
            invokevirtual jdk.nashorn.internal.runtime.Context.eval:(Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 10 /* res */
        start local 10 // java.lang.Object res
        23: .line 601
            aload 10 /* res */
            getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
            if_acmpeq 11
        24: .line 602
            aload 5 /* err */
            aload 10 /* res */
            aload 2 /* global */
            invokestatic jdk.nashorn.tools.Shell.toString:(Ljava/lang/Object;Ljdk/nashorn/internal/objects/Global;)Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        end local 10 // java.lang.Object res
        25: .line 604
            goto 11
      StackMap locals:
      StackMap stack: java.lang.Exception
        26: astore 10 /* e */
        start local 10 // java.lang.Exception e
        27: .line 605
            aload 5 /* err */
            aload 10 /* e */
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
        28: .line 606
            aload 8 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._dump_on_error:Z
            ifeq 11
        29: .line 607
            aload 10 /* e */
            aload 5 /* err */
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintWriter;)V
        end local 10 // java.lang.Exception e
        end local 9 // java.lang.String source
        30: .line 580
            goto 11
        31: .line 611
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.lang.String java.io.BufferedReader java.io.PrintWriter jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack: java.lang.Throwable
            astore 11
        32: .line 612
            iload 7 /* globalChanged */
            ifeq 34
        33: .line 613
            aload 6 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        34: .line 615
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.lang.String java.io.BufferedReader java.io.PrintWriter jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment top top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        35: .line 612
      StackMap locals: jdk.nashorn.tools.Shell jdk.nashorn.internal.runtime.Context jdk.nashorn.internal.objects.Global java.lang.String java.io.BufferedReader java.io.PrintWriter jdk.nashorn.internal.objects.Global int jdk.nashorn.internal.runtime.ScriptEnvironment
      StackMap stack:
            iload 7 /* globalChanged */
            ifeq 37
        36: .line 613
            aload 6 /* oldGlobal */
            invokestatic jdk.nashorn.internal.runtime.Context.setGlobal:(Ljdk/nashorn/internal/objects/Global;)V
        37: .line 617
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 7 // boolean globalChanged
        end local 6 // jdk.nashorn.internal.objects.Global oldGlobal
        end local 5 // java.io.PrintWriter err
        end local 4 // java.io.BufferedReader in
        end local 3 // java.lang.String prompt
        end local 2 // jdk.nashorn.internal.objects.Global global
        end local 1 // jdk.nashorn.internal.runtime.Context context
        end local 0 // jdk.nashorn.tools.Shell this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   38     0           this  Ljdk/nashorn/tools/Shell;
            0   38     1        context  Ljdk/nashorn/internal/runtime/Context;
            0   38     2         global  Ljdk/nashorn/internal/objects/Global;
            1   38     3         prompt  Ljava/lang/String;
            2   38     4             in  Ljava/io/BufferedReader;
            3   38     5            err  Ljava/io/PrintWriter;
            4   38     6      oldGlobal  Ljdk/nashorn/internal/objects/Global;
            7   38     7  globalChanged  Z
            8   38     8            env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
           14   30     9         source  Ljava/lang/String;
           17   18    10            ioe  Ljava/io/IOException;
           23   25    10            res  Ljava/lang/Object;
           27   30    10              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          14    15      16  Class java.io.IOException
          22    25      26  Class java.lang.Exception
           8    31      31  any
    MethodParameters:
         Name  Flags
      context  final
      global   final

  protected static java.lang.String toString(java.lang.Object, jdk.nashorn.internal.objects.Global);
    descriptor: (Ljava/lang/Object;Ljdk/nashorn/internal/objects/Global;)Ljava/lang/String;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.Object result
        start local 1 // jdk.nashorn.internal.objects.Global global
         0: .line 631
            aload 0 /* result */
            instanceof jdk.nashorn.internal.runtime.Symbol
            ifeq 2
         1: .line 633
            aload 0 /* result */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         2: .line 636
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            instanceof jdk.nashorn.internal.objects.NativeSymbol
            ifeq 4
         3: .line 637
            aload 0 /* result */
            invokestatic jdk.nashorn.internal.runtime.JSType.toPrimitive:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         4: .line 640
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            aload 1 /* global */
            invokestatic jdk.nashorn.tools.Shell.isArrayWithDefaultToString:(Ljava/lang/Object;Ljdk/nashorn/internal/objects/Global;)Z
            ifeq 15
         5: .line 643
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         6: .line 644
            aload 0 /* result */
            iconst_1
            invokestatic jdk.nashorn.internal.runtime.arrays.ArrayLikeIterator.arrayLikeIterator:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/arrays/ArrayLikeIterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         7: .line 646
            goto 13
         8: .line 647
      StackMap locals: java.lang.StringBuilder java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* obj */
        start local 4 // java.lang.Object obj
         9: .line 649
            aload 4 /* obj */
            ifnull 11
            aload 4 /* obj */
            getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
            if_acmpeq 11
        10: .line 650
            aload 2 /* sb */
            aload 4 /* obj */
            aload 1 /* global */
            invokestatic jdk.nashorn.tools.Shell.toString:(Ljava/lang/Object;Ljdk/nashorn/internal/objects/Global;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 653
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 13
        12: .line 654
            aload 2 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.Object obj
        13: .line 646
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        14: .line 658
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.util.Iterator iter
        end local 2 // java.lang.StringBuilder sb
        15: .line 661
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            invokestatic jdk.nashorn.internal.runtime.JSType.toString:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // jdk.nashorn.internal.objects.Global global
        end local 0 // java.lang.Object result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0  result  Ljava/lang/Object;
            0   16     1  global  Ljdk/nashorn/internal/objects/Global;
            6   15     2      sb  Ljava/lang/StringBuilder;
            7   15     3    iter  Ljava/util/Iterator<Ljava/lang/Object;>;
            9   13     4     obj  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      result  final
      global  final

  private static boolean isArrayWithDefaultToString(java.lang.Object, jdk.nashorn.internal.objects.Global);
    descriptor: (Ljava/lang/Object;Ljdk/nashorn/internal/objects/Global;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.Object result
        start local 1 // jdk.nashorn.internal.objects.Global global
         0: .line 665
            aload 0 /* result */
            instanceof jdk.nashorn.internal.runtime.ScriptObject
            ifeq 4
         1: .line 666
            aload 0 /* result */
            checkcast jdk.nashorn.internal.runtime.ScriptObject
            astore 2 /* sobj */
        start local 2 // jdk.nashorn.internal.runtime.ScriptObject sobj
         2: .line 667
            aload 2 /* sobj */
            invokevirtual jdk.nashorn.internal.runtime.ScriptObject.isArray:()Z
            ifeq 3
            aload 2 /* sobj */
            ldc "toString"
            invokevirtual jdk.nashorn.internal.runtime.ScriptObject.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 1 /* global */
            invokevirtual jdk.nashorn.internal.objects.Global.getArrayPrototype:()Ljdk/nashorn/internal/runtime/ScriptObject;
            ldc "toString"
            invokevirtual jdk.nashorn.internal.runtime.ScriptObject.get:(Ljava/lang/Object;)Ljava/lang/Object;
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals: jdk.nashorn.internal.runtime.ScriptObject
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.runtime.ScriptObject sobj
         4: .line 669
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // jdk.nashorn.internal.objects.Global global
        end local 0 // java.lang.Object result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  result  Ljava/lang/Object;
            0    5     1  global  Ljdk/nashorn/internal/objects/Global;
            2    4     2    sobj  Ljdk/nashorn/internal/runtime/ScriptObject;
    MethodParameters:
        Name  Flags
      result  final
      global  final

  private static java.lang.String[] lambda$0(int);
    descriptor: (I)[Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            iload 0
            anewarray java.lang.String
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Shell.java"
NestMembers:
  jdk.nashorn.tools.Shell$1
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public CompilationPhases = jdk.nashorn.internal.codegen.Compiler$CompilationPhases of jdk.nashorn.internal.codegen.Compiler
  public ThrowErrorManager = jdk.nashorn.internal.runtime.Context$ThrowErrorManager of jdk.nashorn.internal.runtime.Context
  jdk.nashorn.tools.Shell$1