public class jdk.nashorn.internal.parser.Parser extends jdk.nashorn.internal.parser.AbstractParser implements jdk.nashorn.internal.runtime.logging.Loggable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.nashorn.internal.parser.Parser
  super_class: jdk.nashorn.internal.parser.AbstractParser
{
  private static final java.lang.String ARGUMENTS_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

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

  private final jdk.nashorn.internal.runtime.ScriptEnvironment env;
    descriptor: Ljdk/nashorn/internal/runtime/ScriptEnvironment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private java.util.List<jdk.nashorn.internal.ir.Statement> functionDeclarations;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;

  private final jdk.nashorn.internal.parser.ParserContext lc;
    descriptor: Ljdk/nashorn/internal/parser/ParserContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Deque<java.lang.Object> defaultNames;
    descriptor: Ljava/util/Deque;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Deque<Ljava/lang/Object;>;

  private final jdk.nashorn.internal.codegen.Namespace namespace;
    descriptor: Ljdk/nashorn/internal/codegen/Namespace;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.runtime.logging.DebugLogger log;
    descriptor: Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final jdk.nashorn.internal.parser.Lexer$LineInfoReceiver lineInfoReceiver;
    descriptor: Ljdk/nashorn/internal/parser/Lexer$LineInfoReceiver;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private jdk.nashorn.internal.runtime.RecompilableScriptFunctionData reparsedFunction;
    descriptor: Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
    flags: (0x0002) ACC_PRIVATE

  private static volatile int[] $SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 160
            ldc Ljdk/nashorn/internal/parser/Parser;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
         3: .line 161
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.ARGUMENTS_VAR:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            putstatic jdk.nashorn.internal.parser.Parser.ARGUMENTS_NAME:Ljava/lang/String;
         4: .line 164
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(jdk.nashorn.internal.runtime.ScriptEnvironment, jdk.nashorn.internal.runtime.Source, jdk.nashorn.internal.runtime.ErrorManager);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        start local 2 // jdk.nashorn.internal.runtime.Source source
        start local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
         0: .line 195
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* source */
            aload 3 /* errors */
            aload 1 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._strict:Z
            aconst_null
            invokespecial jdk.nashorn.internal.parser.Parser.<init>:(Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;ZLjdk/nashorn/internal/runtime/logging/DebugLogger;)V
         1: .line 196
            return
        end local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
        end local 2 // jdk.nashorn.internal.runtime.Source source
        end local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1     env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            0    2     2  source  Ljdk/nashorn/internal/runtime/Source;
            0    2     3  errors  Ljdk/nashorn/internal/runtime/ErrorManager;
    MethodParameters:
        Name  Flags
      env     final
      source  final
      errors  final

  public void <init>(jdk.nashorn.internal.runtime.ScriptEnvironment, jdk.nashorn.internal.runtime.Source, jdk.nashorn.internal.runtime.ErrorManager, boolean, jdk.nashorn.internal.runtime.logging.DebugLogger);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;ZLjdk/nashorn/internal/runtime/logging/DebugLogger;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        start local 2 // jdk.nashorn.internal.runtime.Source source
        start local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
        start local 4 // boolean strict
        start local 5 // jdk.nashorn.internal.runtime.logging.DebugLogger log
         0: .line 208
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* source */
            aload 3 /* errors */
            iload 4 /* strict */
            iconst_0
            aload 5 /* log */
            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
         1: .line 209
            return
        end local 5 // jdk.nashorn.internal.runtime.logging.DebugLogger log
        end local 4 // boolean strict
        end local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
        end local 2 // jdk.nashorn.internal.runtime.Source source
        end local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1     env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            0    2     2  source  Ljdk/nashorn/internal/runtime/Source;
            0    2     3  errors  Ljdk/nashorn/internal/runtime/ErrorManager;
            0    2     4  strict  Z
            0    2     5     log  Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    MethodParameters:
        Name  Flags
      env     final
      source  final
      errors  final
      strict  final
      log     final

  public void <init>(jdk.nashorn.internal.runtime.ScriptEnvironment, jdk.nashorn.internal.runtime.Source, jdk.nashorn.internal.runtime.ErrorManager, boolean, int, jdk.nashorn.internal.runtime.logging.DebugLogger);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptEnvironment;Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;ZILjdk/nashorn/internal/runtime/logging/DebugLogger;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        start local 2 // jdk.nashorn.internal.runtime.Source source
        start local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
        start local 4 // boolean strict
        start local 5 // int lineOffset
        start local 6 // jdk.nashorn.internal.runtime.logging.DebugLogger log
         0: .line 222
            aload 0 /* this */
            aload 2 /* source */
            aload 3 /* errors */
            iload 4 /* strict */
            iload 5 /* lineOffset */
            invokespecial jdk.nashorn.internal.parser.AbstractParser.<init>:(Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/runtime/ErrorManager;ZI)V
         1: .line 223
            aload 0 /* this */
            new jdk.nashorn.internal.parser.ParserContext
            dup
            invokespecial jdk.nashorn.internal.parser.ParserContext.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
         2: .line 224
            aload 0 /* this */
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
         3: .line 225
            aload 0 /* this */
            aload 1 /* env */
            putfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
         4: .line 226
            aload 0 /* this */
            new jdk.nashorn.internal.codegen.Namespace
            dup
            aload 1 /* env */
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getNamespace:()Ljdk/nashorn/internal/codegen/Namespace;
            invokespecial jdk.nashorn.internal.codegen.Namespace.<init>:(Ljdk/nashorn/internal/codegen/Namespace;)V
            putfield jdk.nashorn.internal.parser.Parser.namespace:Ljdk/nashorn/internal/codegen/Namespace;
         5: .line 227
            aload 0 /* this */
            aload 1 /* env */
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._scripting:Z
            putfield jdk.nashorn.internal.parser.Parser.scripting:Z
         6: .line 228
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 9
         7: .line 229
            aload 0 /* this */
            new jdk.nashorn.internal.parser.Parser$1
            dup
            aload 0 /* this */
            invokespecial jdk.nashorn.internal.parser.Parser$1.<init>:(Ljdk/nashorn/internal/parser/Parser;)V
            putfield jdk.nashorn.internal.parser.Parser.lineInfoReceiver:Ljdk/nashorn/internal/parser/Lexer$LineInfoReceiver;
         8: .line 237
            goto 10
         9: .line 239
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.runtime.ScriptEnvironment jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.runtime.ErrorManager int int jdk.nashorn.internal.runtime.logging.DebugLogger
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.parser.Parser.lineInfoReceiver:Ljdk/nashorn/internal/parser/Lexer$LineInfoReceiver;
        10: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* log */
            ifnonnull 11
            getstatic jdk.nashorn.internal.runtime.logging.DebugLogger.DISABLED_LOGGER:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            goto 12
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.parser.Parser
        11: aload 6 /* log */
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.runtime.ScriptEnvironment jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.runtime.ErrorManager int int jdk.nashorn.internal.runtime.logging.DebugLogger
      StackMap stack: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.runtime.logging.DebugLogger
        12: putfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
        13: .line 243
            return
        end local 6 // jdk.nashorn.internal.runtime.logging.DebugLogger log
        end local 5 // int lineOffset
        end local 4 // boolean strict
        end local 3 // jdk.nashorn.internal.runtime.ErrorManager errors
        end local 2 // jdk.nashorn.internal.runtime.Source source
        end local 1 // jdk.nashorn.internal.runtime.ScriptEnvironment env
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Ljdk/nashorn/internal/parser/Parser;
            0   14     1         env  Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            0   14     2      source  Ljdk/nashorn/internal/runtime/Source;
            0   14     3      errors  Ljdk/nashorn/internal/runtime/ErrorManager;
            0   14     4      strict  Z
            0   14     5  lineOffset  I
            0   14     6         log  Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    MethodParameters:
            Name  Flags
      env         final
      source      final
      errors      final
      strict      final
      lineOffset  final
      log         final

  public jdk.nashorn.internal.runtime.logging.DebugLogger getLogger();
    descriptor: ()Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 247
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  public jdk.nashorn.internal.runtime.logging.DebugLogger initLogger(jdk.nashorn.internal.runtime.Context);
    descriptor: (Ljdk/nashorn/internal/runtime/Context;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.runtime.Context context
         0: .line 252
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual jdk.nashorn.internal.runtime.Context.getLogger:(Ljava/lang/Class;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            areturn
        end local 1 // jdk.nashorn.internal.runtime.Context context
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  context  Ljdk/nashorn/internal/runtime/Context;
    MethodParameters:
         Name  Flags
      context  final

  public void setFunctionName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String name
         0: .line 261
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            aload 0 /* this */
            lconst_0
            iconst_0
            aload 1 /* name */
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
         1: .line 262
            return
        end local 1 // java.lang.String name
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  public void setReparsedFunction(jdk.nashorn.internal.runtime.RecompilableScriptFunctionData);
    descriptor: (Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData reparsedFunction
         0: .line 271
            aload 0 /* this */
            aload 1 /* reparsedFunction */
            putfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
         1: .line 272
            return
        end local 1 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData reparsedFunction
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1  reparsedFunction  Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
    MethodParameters:
                  Name  Flags
      reparsedFunction  final

  public jdk.nashorn.internal.ir.FunctionNode parse();
    descriptor: ()Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 285
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.PROGRAM:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.parse:(Ljava/lang/String;III)Ljdk/nashorn/internal/ir/FunctionNode;
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void scanFirstToken();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 292
            aload 0 /* this */
            iconst_m1
            putfield jdk.nashorn.internal.parser.Parser.k:I
         1: .line 293
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 294
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/parser/Parser;

  public jdk.nashorn.internal.ir.FunctionNode parse(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=12, args_size=5
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String scriptName
        start local 2 // int startPos
        start local 3 // int len
        start local 4 // int reparseFlags
         0: .line 313
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.isTimingEnabled:()Z
            istore 5 /* isTimingEnabled */
        start local 5 // boolean isTimingEnabled
         1: .line 314
            iload 5 /* isTimingEnabled */
            ifeq 2
            invokestatic java.lang.System.nanoTime:()J
            goto 3
      StackMap locals: int
      StackMap stack:
         2: lconst_0
      StackMap locals:
      StackMap stack: long
         3: lstore 6 /* t0 */
        start local 6 // long t0
         4: .line 315
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aastore
            dup
            iconst_1
            ldc " begin for '"
            aastore
            dup
            iconst_2
            aload 1 /* scriptName */
            aastore
            dup
            iconst_3
            ldc "'"
            aastore
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
         5: .line 318
            aload 0 /* this */
            new jdk.nashorn.internal.parser.TokenStream
            dup
            invokespecial jdk.nashorn.internal.parser.TokenStream.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
         6: .line 319
            aload 0 /* this */
         7: new jdk.nashorn.internal.parser.Lexer
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            iload 2 /* startPos */
            iload 3 /* len */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 8
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 8
            iconst_1
            goto 9
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: jdk.nashorn.internal.parser.Parser new 7 new 7 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream
         8: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: jdk.nashorn.internal.parser.Parser new 7 new 7 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int
         9: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnull 10
            iconst_1
            goto 11
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: jdk.nashorn.internal.parser.Parser new 7 new 7 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int int
        10: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: jdk.nashorn.internal.parser.Parser new 7 new 7 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int int int
        11: invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/runtime/Source;IILjdk/nashorn/internal/parser/TokenStream;ZZZ)V
            putfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
        12: .line 320
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lineOffset:I
            iconst_1
            iadd
            dup_x1
            putfield jdk.nashorn.internal.parser.Lexer.pendingLine:I
            putfield jdk.nashorn.internal.parser.Lexer.line:I
        13: .line 321
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lineOffset:I
            putfield jdk.nashorn.internal.parser.Parser.line:I
        14: .line 323
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
        15: .line 325
            aload 0 /* this */
            aload 1 /* scriptName */
            iload 4 /* reparseFlags */
            invokevirtual jdk.nashorn.internal.parser.Parser.program:(Ljava/lang/String;I)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 10
        16: .line 331
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " end '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* scriptName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* end */
        start local 11 // java.lang.String end
        17: .line 332
            iload 5 /* isTimingEnabled */
            ifeq 21
        18: .line 333
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._timing:Ljdk/nashorn/internal/runtime/Timing;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.toString:()Ljava/lang/String;
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokevirtual jdk.nashorn.internal.runtime.Timing.accumulateTime:(Ljava/lang/String;J)V
        19: .line 334
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 11 /* end */
            aastore
            dup
            iconst_1
            ldc "' in "
            aastore
            dup
            iconst_2
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokestatic jdk.nashorn.internal.runtime.Timing.toMillisPrint:(J)Ljava/lang/String;
            aastore
            dup
            iconst_3
            ldc " ms"
            aastore
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
        20: .line 335
            goto 22
        21: .line 336
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long top top jdk.nashorn.internal.ir.FunctionNode java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            aload 11 /* end */
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:(Ljava/lang/String;)V
        end local 11 // java.lang.String end
        22: .line 325
      StackMap locals:
      StackMap stack:
            aload 10
            areturn
        23: .line 326
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: java.lang.Exception
            astore 8 /* e */
        start local 8 // java.lang.Exception e
        24: .line 327
            aload 0 /* this */
            aload 8 /* e */
            invokevirtual jdk.nashorn.internal.parser.Parser.handleParseException:(Ljava/lang/Exception;)V
        25: .line 331
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " end '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* scriptName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* end */
        start local 11 // java.lang.String end
        26: .line 332
            iload 5 /* isTimingEnabled */
            ifeq 30
        27: .line 333
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._timing:Ljdk/nashorn/internal/runtime/Timing;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.toString:()Ljava/lang/String;
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokevirtual jdk.nashorn.internal.runtime.Timing.accumulateTime:(Ljava/lang/String;J)V
        28: .line 334
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 11 /* end */
            aastore
            dup
            iconst_1
            ldc "' in "
            aastore
            dup
            iconst_2
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokestatic jdk.nashorn.internal.runtime.Timing.toMillisPrint:(J)Ljava/lang/String;
            aastore
            dup
            iconst_3
            ldc " ms"
            aastore
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
        29: .line 335
            goto 31
        30: .line 336
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long java.lang.Exception top top java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            aload 11 /* end */
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:(Ljava/lang/String;)V
        end local 11 // java.lang.String end
        31: .line 329
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long java.lang.Exception
      StackMap stack:
            aconst_null
            areturn
        end local 8 // java.lang.Exception e
        32: .line 330
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long
      StackMap stack: java.lang.Throwable
            astore 9
        33: .line 331
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " end '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* scriptName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* end */
        start local 11 // java.lang.String end
        34: .line 332
            iload 5 /* isTimingEnabled */
            ifeq 38
        35: .line 333
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._timing:Ljdk/nashorn/internal/runtime/Timing;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.toString:()Ljava/lang/String;
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokevirtual jdk.nashorn.internal.runtime.Timing.accumulateTime:(Ljava/lang/String;J)V
        36: .line 334
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 11 /* end */
            aastore
            dup
            iconst_1
            ldc "' in "
            aastore
            dup
            iconst_2
            invokestatic java.lang.System.nanoTime:()J
            lload 6 /* t0 */
            lsub
            invokestatic jdk.nashorn.internal.runtime.Timing.toMillisPrint:(J)Ljava/lang/String;
            aastore
            dup
            iconst_3
            ldc " ms"
            aastore
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
        37: .line 335
            goto 39
        38: .line 336
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long top java.lang.Throwable top java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            aload 11 /* end */
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:(Ljava/lang/String;)V
        end local 11 // java.lang.String end
        39: .line 338
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int int int long top java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        end local 6 // long t0
        end local 5 // boolean isTimingEnabled
        end local 4 // int reparseFlags
        end local 3 // int len
        end local 2 // int startPos
        end local 1 // java.lang.String scriptName
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   40     0             this  Ljdk/nashorn/internal/parser/Parser;
            0   40     1       scriptName  Ljava/lang/String;
            0   40     2         startPos  I
            0   40     3              len  I
            0   40     4     reparseFlags  I
            1   40     5  isTimingEnabled  Z
            4   40     6               t0  J
           24   32     8                e  Ljava/lang/Exception;
           17   22    11              end  Ljava/lang/String;
           26   31    11              end  Ljava/lang/String;
           34   39    11              end  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5    16      23  Class java.lang.Exception
           5    16      32  any
          23    25      32  any
    MethodParameters:
              Name  Flags
      scriptName    final
      startPos      final
      len           final
      reparseFlags  final

  public jdk.nashorn.internal.ir.FunctionNode parseModule(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String moduleName
        start local 2 // int startPos
        start local 3 // int len
         0: .line 354
            aload 0 /* this */
            new jdk.nashorn.internal.parser.TokenStream
            dup
            invokespecial jdk.nashorn.internal.parser.TokenStream.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
         1: .line 355
            aload 0 /* this */
         2: new jdk.nashorn.internal.parser.Lexer
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            iload 2 /* startPos */
            iload 3 /* len */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 3
            iconst_1
            goto 4
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream
         3: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int
         4: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnull 5
            iconst_1
            goto 6
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int int
         5: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int int
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source int int jdk.nashorn.internal.parser.TokenStream int int int
         6: invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/runtime/Source;IILjdk/nashorn/internal/parser/TokenStream;ZZZ)V
            putfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
         7: .line 356
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lineOffset:I
            iconst_1
            iadd
            dup_x1
            putfield jdk.nashorn.internal.parser.Lexer.pendingLine:I
            putfield jdk.nashorn.internal.parser.Lexer.line:I
         8: .line 357
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lineOffset:I
            putfield jdk.nashorn.internal.parser.Parser.line:I
         9: .line 359
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
        10: .line 361
            aload 0 /* this */
            aload 1 /* moduleName */
            invokevirtual jdk.nashorn.internal.parser.Parser.module:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/FunctionNode;
        11: areturn
        12: .line 362
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
        13: .line 363
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual jdk.nashorn.internal.parser.Parser.handleParseException:(Ljava/lang/Exception;)V
        14: .line 365
            aconst_null
            areturn
        end local 4 // java.lang.Exception e
        end local 3 // int len
        end local 2 // int startPos
        end local 1 // java.lang.String moduleName
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Ljdk/nashorn/internal/parser/Parser;
            0   15     1  moduleName  Ljava/lang/String;
            0   15     2    startPos  I
            0   15     3         len  I
           13   15     4           e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0    11      12  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      moduleName  final
      startPos    final
      len         final

  public jdk.nashorn.internal.ir.FunctionNode parseModule(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String moduleName
         0: .line 376
            aload 0 /* this */
            aload 1 /* moduleName */
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            invokevirtual jdk.nashorn.internal.parser.Parser.parseModule:(Ljava/lang/String;II)Ljdk/nashorn/internal/ir/FunctionNode;
            areturn
        end local 1 // java.lang.String moduleName
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  moduleName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      moduleName  final

  public java.util.List<jdk.nashorn.internal.ir.IdentNode> parseFormalParameterList();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 390
            aload 0 /* this */
            new jdk.nashorn.internal.parser.TokenStream
            dup
            invokespecial jdk.nashorn.internal.parser.TokenStream.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
         1: .line 391
            aload 0 /* this */
         2: new jdk.nashorn.internal.parser.Lexer
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 3
            iconst_1
            goto 4
      StackMap locals: jdk.nashorn.internal.parser.Parser
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.TokenStream
         3: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.TokenStream int
         4: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/parser/TokenStream;ZZ)V
            putfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
         5: .line 393
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
         6: .line 395
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Ljdk/nashorn/internal/parser/TokenType;Z)Ljava/util/List;
         7: areturn
         8: .line 396
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         9: .line 397
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual jdk.nashorn.internal.parser.Parser.handleParseException:(Ljava/lang/Exception;)V
        10: .line 398
            aconst_null
            areturn
        end local 1 // java.lang.Exception e
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljdk/nashorn/internal/parser/Parser;
            9   11     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     7       8  Class java.lang.Exception
    Signature: ()Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;

  public jdk.nashorn.internal.ir.FunctionNode parseFunctionBody();
    descriptor: ()Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 412
            aload 0 /* this */
            new jdk.nashorn.internal.parser.TokenStream
            dup
            invokespecial jdk.nashorn.internal.parser.TokenStream.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
         1: .line 413
            aload 0 /* this */
         2: new jdk.nashorn.internal.parser.Lexer
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 3
            iconst_1
            goto 4
      StackMap locals: jdk.nashorn.internal.parser.Parser
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.TokenStream
         3: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser
      StackMap stack: jdk.nashorn.internal.parser.Parser new 2 new 2 jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.TokenStream int
         4: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/parser/TokenStream;ZZ)V
            putfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
         5: .line 414
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* functionLine */
        start local 1 // int functionLine
         6: .line 416
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
         7: .line 419
            getstatic jdk.nashorn.internal.parser.TokenType.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            invokestatic jdk.nashorn.internal.parser.Token.toDesc:(Ljdk/nashorn/internal/parser/TokenType;II)J
            lstore 2 /* functionToken */
        start local 2 // long functionToken
         8: .line 422
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 2 /* functionToken */
            lload 2 /* functionToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.PROGRAM:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 4 /* ident */
        start local 4 // jdk.nashorn.internal.ir.IdentNode ident
         9: .line 423
            aload 0 /* this */
            aload 4 /* ident */
            lload 2 /* functionToken */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 1 /* functionLine */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 5 /* function */
        start local 5 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        10: .line 424
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        11: .line 426
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 6 /* body */
        start local 6 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        12: .line 428
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        13: .line 429
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.sourceElements:(I)V
        14: .line 430
            aload 0 /* this */
            aload 5 /* function */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        15: .line 431
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        16: .line 433
            aload 0 /* this */
            aload 6 /* body */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        17: .line 434
            aload 6 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        18: .line 436
            new jdk.nashorn.internal.ir.Block
            dup
            lload 2 /* functionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            iconst_1
            isub
        19: .line 437
            aload 6 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            aload 6 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
        20: .line 436
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            astore 7 /* functionBody */
        start local 7 // jdk.nashorn.internal.ir.Block functionBody
        21: .line 438
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        22: .line 440
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        23: .line 442
            aload 0 /* this */
        24: .line 443
            aload 5 /* function */
        25: .line 444
            lload 2 /* functionToken */
        26: .line 445
            aload 4 /* ident */
        27: .line 446
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        28: .line 447
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        29: .line 448
            iload 1 /* functionLine */
        30: .line 449
            aload 7 /* functionBody */
        31: .line 442
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 8 /* functionNode */
        start local 8 // jdk.nashorn.internal.ir.FunctionNode functionNode
        32: .line 450
            aload 0 /* this */
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.printAST:(Ljdk/nashorn/internal/ir/FunctionNode;)V
        33: .line 451
            aload 8 /* functionNode */
        34: areturn
        end local 8 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 7 // jdk.nashorn.internal.ir.Block functionBody
        end local 6 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        end local 5 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        end local 4 // jdk.nashorn.internal.ir.IdentNode ident
        end local 2 // long functionToken
        end local 1 // int functionLine
        35: .line 452
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
        36: .line 453
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual jdk.nashorn.internal.parser.Parser.handleParseException:(Ljava/lang/Exception;)V
        37: .line 454
            aconst_null
            areturn
        end local 1 // java.lang.Exception e
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   38     0           this  Ljdk/nashorn/internal/parser/Parser;
            6   35     1   functionLine  I
            8   35     2  functionToken  J
            9   35     4          ident  Ljdk/nashorn/internal/ir/IdentNode;
           10   35     5       function  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           12   35     6           body  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           21   35     7   functionBody  Ljdk/nashorn/internal/ir/Block;
           32   35     8   functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
           36   38     1              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0    34      35  Class java.lang.Exception

  private void handleParseException(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.Exception e
         0: .line 461
            aload 1 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            astore 2 /* message */
        start local 2 // java.lang.String message
         1: .line 464
            aload 2 /* message */
            ifnonnull 3
         2: .line 465
            aload 1 /* e */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            astore 2 /* message */
         3: .line 469
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* e */
            instanceof jdk.nashorn.internal.runtime.ParserException
            ifeq 6
         4: .line 470
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.errors:Ljdk/nashorn/internal/runtime/ErrorManager;
            aload 1 /* e */
            checkcast jdk.nashorn.internal.runtime.ParserException
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljdk/nashorn/internal/runtime/ParserException;)V
         5: .line 471
            goto 7
         6: .line 472
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.errors:Ljdk/nashorn/internal/runtime/ErrorManager;
            aload 2 /* message */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljava/lang/String;)V
         7: .line 475
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._dump_on_error:Z
            ifeq 9
         8: .line 476
            aload 1 /* e */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintWriter;)V
         9: .line 478
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String message
        end local 1 // java.lang.Exception e
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Ljdk/nashorn/internal/parser/Parser;
            0   10     1        e  Ljava/lang/Exception;
            1   10     2  message  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      e     final

  private void recover(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.Exception e
         0: .line 484
            aload 1 /* e */
            ifnull 10
         1: .line 487
            aload 1 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            astore 2 /* message */
        start local 2 // java.lang.String message
         2: .line 490
            aload 2 /* message */
            ifnonnull 4
         3: .line 491
            aload 1 /* e */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            astore 2 /* message */
         4: .line 495
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* e */
            instanceof jdk.nashorn.internal.runtime.ParserException
            ifeq 7
         5: .line 496
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.errors:Ljdk/nashorn/internal/runtime/ErrorManager;
            aload 1 /* e */
            checkcast jdk.nashorn.internal.runtime.ParserException
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljdk/nashorn/internal/runtime/ParserException;)V
         6: .line 497
            goto 8
         7: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.errors:Ljdk/nashorn/internal/runtime/ErrorManager;
            aload 2 /* message */
            invokevirtual jdk.nashorn.internal.runtime.ErrorManager.error:(Ljava/lang/String;)V
         8: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._dump_on_error:Z
            ifeq 10
         9: .line 502
            aload 1 /* e */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintWriter;)V
        end local 2 // java.lang.String message
        10: .line 509
      StackMap locals:
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    2: 11
                    3: 12
                   29: 12
                   53: 12
              default: 14
          }
        11: .line 512
      StackMap locals:
      StackMap stack:
            goto 16
        12: .line 517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        13: .line 518
            goto 16
        14: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        15: .line 508
            goto 10
        16: .line 525
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Exception e
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Ljdk/nashorn/internal/parser/Parser;
            0   17     1        e  Ljava/lang/Exception;
            2   10     2  message  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      e     final

  private jdk.nashorn.internal.parser.ParserContextBlockNode newBlock();
    descriptor: ()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 533
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            new jdk.nashorn.internal.parser.ParserContextBlockNode
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokespecial jdk.nashorn.internal.parser.ParserContextBlockNode.<init>:(J)V
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            checkcast jdk.nashorn.internal.parser.ParserContextBlockNode
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.parser.ParserContextFunctionNode createParserContextFunctionNode(jdk.nashorn.internal.ir.IdentNode, long, jdk.nashorn.internal.ir.FunctionNode$Kind, int, java.util.List<jdk.nashorn.internal.ir.IdentNode>);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=12, args_size=6
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
        start local 2 // long functionToken
        start local 4 // jdk.nashorn.internal.ir.FunctionNode$Kind kind
        start local 5 // int functionLine
        start local 6 // java.util.List parameters
         0: .line 538
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 7 /* sb */
        start local 7 // java.lang.StringBuilder sb
         1: .line 540
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 8 /* parentFunction */
        start local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode parentFunction
         2: .line 541
            aload 8 /* parentFunction */
            ifnull 4
            aload 8 /* parentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isProgram:()Z
            ifne 4
         3: .line 542
            aload 7 /* sb */
            aload 8 /* parentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.NESTED_FUNCTION_SEPARATOR:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 545
      StackMap locals: java.lang.StringBuilder jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 5
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            ifnonnull 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 546
      StackMap locals:
      StackMap stack:
            aload 7 /* sb */
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 548
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.namespace:Ljdk/nashorn/internal/codegen/Namespace;
            aload 7 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.Namespace.uniqueName:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* name */
        start local 9 // java.lang.String name
         7: .line 549
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 8
            aload 8 /* parentFunction */
            ifnonnull 8
            aload 4 /* kind */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.MODULE:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 8
            aload 9 /* name */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.PROGRAM:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "name = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         8: .line 551
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_0
            istore 10 /* flags */
        start local 10 // int flags
         9: .line 552
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 11
        10: .line 553
            iload 10 /* flags */
            iconst_4
            ior
            istore 10 /* flags */
        11: .line 555
      StackMap locals: int
      StackMap stack:
            aload 8 /* parentFunction */
            ifnonnull 13
        12: .line 556
            iload 10 /* flags */
            sipush 8192
            ior
            istore 10 /* flags */
        13: .line 559
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.parser.ParserContextFunctionNode
            dup
            lload 2 /* functionToken */
            aload 1 /* ident */
            aload 9 /* name */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.namespace:Ljdk/nashorn/internal/codegen/Namespace;
            iload 5 /* functionLine */
            aload 4 /* kind */
            aload 6 /* parameters */
            invokespecial jdk.nashorn.internal.parser.ParserContextFunctionNode.<init>:(JLjdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;Ljdk/nashorn/internal/codegen/Namespace;ILjdk/nashorn/internal/ir/FunctionNode$Kind;Ljava/util/List;)V
            astore 11 /* functionNode */
        start local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        14: .line 560
            aload 11 /* functionNode */
            iload 10 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        15: .line 561
            aload 11 /* functionNode */
            areturn
        end local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 10 // int flags
        end local 9 // java.lang.String name
        end local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode parentFunction
        end local 7 // java.lang.StringBuilder sb
        end local 6 // java.util.List parameters
        end local 5 // int functionLine
        end local 4 // jdk.nashorn.internal.ir.FunctionNode$Kind kind
        end local 2 // long functionToken
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   16     1           ident  Ljdk/nashorn/internal/ir/IdentNode;
            0   16     2   functionToken  J
            0   16     4            kind  Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            0   16     5    functionLine  I
            0   16     6      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            1   16     7              sb  Ljava/lang/StringBuilder;
            2   16     8  parentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            7   16     9            name  Ljava/lang/String;
            9   16    10           flags  I
           14   16    11    functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    Signature: (Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    MethodParameters:
               Name  Flags
      ident          final
      functionToken  final
      kind           final
      functionLine   final
      parameters     final

  private jdk.nashorn.internal.ir.FunctionNode createFunctionNode(jdk.nashorn.internal.parser.ParserContextFunctionNode, long, jdk.nashorn.internal.ir.IdentNode, java.util.List<jdk.nashorn.internal.ir.IdentNode>, jdk.nashorn.internal.ir.FunctionNode$Kind, int, jdk.nashorn.internal.ir.Block);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=22, locals=10, args_size=8
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        start local 2 // long startToken
        start local 4 // jdk.nashorn.internal.ir.IdentNode ident
        start local 5 // java.util.List parameters
        start local 6 // jdk.nashorn.internal.ir.FunctionNode$Kind kind
        start local 7 // int functionLine
        start local 8 // jdk.nashorn.internal.ir.Block body
         0: .line 568
            new jdk.nashorn.internal.ir.FunctionNode
            dup
         1: .line 569
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
         2: .line 570
            iload 7 /* functionLine */
         3: .line 571
            aload 8 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getToken:()J
         4: .line 572
            aload 8 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getToken:()J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
         5: .line 573
            lload 2 /* startToken */
         6: .line 574
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getLastToken:()J
         7: .line 575
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.namespace:Ljdk/nashorn/internal/codegen/Namespace;
         8: .line 576
            aload 4 /* ident */
         9: .line 577
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getName:()Ljava/lang/String;
        10: .line 578
            aload 5 /* parameters */
        11: .line 579
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getParameterExpressions:()Ljava/util/Map;
        12: .line 580
            aload 6 /* kind */
        13: .line 581
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getFlags:()I
        14: .line 582
            aload 8 /* body */
        15: .line 583
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getEndParserState:()Ljava/lang/Object;
        16: .line 584
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getModule:()Ljdk/nashorn/internal/ir/Module;
        17: .line 585
            aload 1 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getDebugFlags:()I
        18: .line 568
            invokespecial jdk.nashorn.internal.ir.FunctionNode.<init>:(Ljdk/nashorn/internal/runtime/Source;IJIJJLjdk/nashorn/internal/codegen/Namespace;Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;Ljava/lang/Object;Ljdk/nashorn/internal/ir/Module;I)V
        19: .line 567
            astore 9 /* functionNode */
        start local 9 // jdk.nashorn.internal.ir.FunctionNode functionNode
        20: .line 587
            aload 0 /* this */
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.printAST:(Ljdk/nashorn/internal/ir/FunctionNode;)V
        21: .line 589
            aload 9 /* functionNode */
            areturn
        end local 9 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 8 // jdk.nashorn.internal.ir.Block body
        end local 7 // int functionLine
        end local 6 // jdk.nashorn.internal.ir.FunctionNode$Kind kind
        end local 5 // java.util.List parameters
        end local 4 // jdk.nashorn.internal.ir.IdentNode ident
        end local 2 // long startToken
        end local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0          this  Ljdk/nashorn/internal/parser/Parser;
            0   22     1      function  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            0   22     2    startToken  J
            0   22     4         ident  Ljdk/nashorn/internal/ir/IdentNode;
            0   22     5    parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            0   22     6          kind  Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            0   22     7  functionLine  I
            0   22     8          body  Ljdk/nashorn/internal/ir/Block;
           20   22     9  functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
    Signature: (Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
    MethodParameters:
              Name  Flags
      function      final
      startToken    final
      ident         final
      parameters    final
      kind          final
      functionLine  final
      body          final

  private jdk.nashorn.internal.parser.ParserContextBlockNode restoreBlock(jdk.nashorn.internal.parser.ParserContextBlockNode);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode block
         0: .line 596
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 1 /* block */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            checkcast jdk.nashorn.internal.parser.ParserContextBlockNode
            areturn
        end local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode block
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  block  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
    MethodParameters:
       Name  Flags
      block  final

  private jdk.nashorn.internal.ir.Block getBlock(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Block;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean needsBraces
         0: .line 604
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* blockToken */
        start local 2 // long blockToken
         1: .line 605
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 4 /* newBlock */
        start local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode newBlock
         2: .line 608
            iload 1 /* needsBraces */
            ifeq 4
         3: .line 609
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         4: .line 612
      StackMap locals: long jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.statementList:()V
         5: .line 614
            goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 5
         7: .line 615
            aload 0 /* this */
            aload 4 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
         8: .line 616
            aload 5
            athrow
         9: .line 615
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        10: .line 619
            iload 1 /* needsBraces */
            ifeq 12
        11: .line 620
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        12: .line 623
      StackMap locals:
      StackMap stack:
            aload 4 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            iload 1 /* needsBraces */
            ifeq 13
            iconst_0
            goto 14
      StackMap locals:
      StackMap stack: int
        13: bipush 16
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: int int
        14: ior
            istore 5 /* flags */
        start local 5 // int flags
        15: .line 624
            new jdk.nashorn.internal.ir.Block
            dup
            lload 2 /* blockToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            iload 5 /* flags */
            aload 4 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            areturn
        end local 5 // int flags
        end local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode newBlock
        end local 2 // long blockToken
        end local 1 // boolean needsBraces
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Ljdk/nashorn/internal/parser/Parser;
            0   16     1  needsBraces  Z
            1   16     2   blockToken  J
            2   16     4     newBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           15   16     5        flags  I
      Exception table:
        from    to  target  type
           2     6       6  any
    MethodParameters:
             Name  Flags
      needsBraces  final

  private jdk.nashorn.internal.ir.Block getStatement();
    descriptor: ()Ljdk/nashorn/internal/ir/Block;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 632
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:(Z)Ljdk/nashorn/internal/ir/Block;
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Block getStatement(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Block;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean labelledStatement
         0: .line 636
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
         1: .line 637
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            areturn
         2: .line 640
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 2 /* newBlock */
        start local 2 // jdk.nashorn.internal.parser.ParserContextBlockNode newBlock
         3: .line 642
            aload 0 /* this */
            iconst_0
            iconst_0
            iconst_1
            iload 1 /* labelledStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.statement:(ZIZZ)V
         4: .line 643
            goto 8
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
         5: astore 3
         6: .line 644
            aload 0 /* this */
            aload 2 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
         7: .line 645
            aload 3
            athrow
         8: .line 644
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
         9: .line 646
            new jdk.nashorn.internal.ir.Block
            dup
            aload 2 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 2 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            aload 2 /* newBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            areturn
        end local 2 // jdk.nashorn.internal.parser.ParserContextBlockNode newBlock
        end local 1 // boolean labelledStatement
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Ljdk/nashorn/internal/parser/Parser;
            0   10     1  labelledStatement  Z
            3   10     2           newBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
      Exception table:
        from    to  target  type
           3     5       5  any
    MethodParameters:
                   Name  Flags
      labelledStatement  final

  private void detectSpecialFunction(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 654
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 656
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.EVAL:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         2: .line 657
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokestatic jdk.nashorn.internal.parser.Parser.markEval:(Ljdk/nashorn/internal/parser/ParserContext;)V
         3: .line 658
            goto 7
      StackMap locals: java.lang.String
      StackMap stack:
         4: getstatic jdk.nashorn.internal.parser.TokenType.SUPER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 659
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 6
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isDirectSuper:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokestatic jdk.nashorn.internal.parser.Parser.markSuperCall:(Ljdk/nashorn/internal/parser/ParserContext;)V
         7: .line 662
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String name
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljdk/nashorn/internal/parser/Parser;
            0    8     1  ident  Ljdk/nashorn/internal/ir/IdentNode;
            1    8     2   name  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      ident  final

  private void detectSpecialProperty(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 669
            aload 1 /* ident */
            invokestatic jdk.nashorn.internal.parser.Parser.isArguments:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifeq 2
         1: .line 671
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getCurrentNonArrowFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            bipush 8
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         2: .line 673
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1  ident  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
       Name  Flags
      ident  final

  private boolean useBlockScope();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 676
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            ireturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private boolean isES6();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 680
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            ireturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private static boolean isArguments(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 684
            getstatic jdk.nashorn.internal.parser.Parser.ARGUMENTS_NAME:Ljava/lang/String;
            aload 0 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  static boolean isArguments(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 688
            aload 0 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokestatic jdk.nashorn.internal.parser.Parser.isArguments:(Ljava/lang/String;)Z
            ireturn
        end local 0 // jdk.nashorn.internal.ir.IdentNode ident
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  ident  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
       Name  Flags
      ident  final

  private static boolean checkIdentLValue(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 698
            aload 0 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.tokenType:()Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getKind:()Ljdk/nashorn/internal/parser/TokenKind;
            getstatic jdk.nashorn.internal.parser.TokenKind.KEYWORD:Ljdk/nashorn/internal/parser/TokenKind;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.IdentNode ident
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  ident  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
       Name  Flags
      ident  final

  private jdk.nashorn.internal.ir.Expression verifyAssignment(long, jdk.nashorn.internal.ir.Expression, jdk.nashorn.internal.ir.Expression);
    descriptor: (JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long op
        start local 3 // jdk.nashorn.internal.ir.Expression lhs
        start local 4 // jdk.nashorn.internal.ir.Expression rhs
         0: .line 709
            lload 1 /* op */
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            astore 5 /* opType */
        start local 5 // jdk.nashorn.internal.parser.TokenType opType
         1: .line 711
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 5 /* opType */
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 12
                   10: 2
                   13: 2
                   17: 2
                   20: 2
                   24: 2
                   27: 2
                   32: 2
                   34: 2
                   41: 2
                   43: 2
                   48: 2
                   51: 2
              default: 13
          }
         2: .line 724
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 3 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 7
         3: .line 725
            aload 3 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokestatic jdk.nashorn.internal.parser.Parser.checkIdentLValue:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifne 5
         4: .line 726
            aload 0 /* this */
            aload 3 /* lhs */
            aload 4 /* rhs */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.referenceError:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/RuntimeNode;
            areturn
         5: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            ldc "assignment"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         6: .line 729
            goto 13
         7: .line 730
      StackMap locals:
      StackMap stack:
            aload 3 /* lhs */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifne 13
            aload 3 /* lhs */
            instanceof jdk.nashorn.internal.ir.IndexNode
            ifeq 9
         8: .line 731
            goto 13
         9: .line 732
      StackMap locals:
      StackMap stack:
            aload 5 /* opType */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 12
            aload 0 /* this */
            aload 3 /* lhs */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifeq 12
        10: .line 733
            aload 0 /* this */
            aload 3 /* lhs */
            ldc "assignment"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringAssignmentPattern:(Ljdk/nashorn/internal/ir/Expression;Ljava/lang/String;)V
        11: .line 734
            goto 13
        12: .line 736
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* lhs */
            aload 4 /* rhs */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._early_lvalue_error:Z
            invokevirtual jdk.nashorn.internal.parser.Parser.referenceError:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/RuntimeNode;
            areturn
        13: .line 743
      StackMap locals:
      StackMap stack:
            aload 5 /* opType */
            invokestatic jdk.nashorn.internal.ir.BinaryNode.isLogical:(Ljdk/nashorn/internal/parser/TokenType;)Z
            ifeq 15
        14: .line 744
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 1 /* op */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 3 /* lhs */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 4 /* rhs */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            areturn
        15: .line 746
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 1 /* op */
            aload 3 /* lhs */
            aload 4 /* rhs */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 5 // jdk.nashorn.internal.parser.TokenType opType
        end local 4 // jdk.nashorn.internal.ir.Expression rhs
        end local 3 // jdk.nashorn.internal.ir.Expression lhs
        end local 1 // long op
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Ljdk/nashorn/internal/parser/Parser;
            0   16     1      op  J
            0   16     3     lhs  Ljdk/nashorn/internal/ir/Expression;
            0   16     4     rhs  Ljdk/nashorn/internal/ir/Expression;
            1   16     5  opType  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
      Name  Flags
      op    final
      lhs   final
      rhs   final

  private boolean isDestructuringLhs(jdk.nashorn.internal.ir.Expression);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
         0: .line 750
            aload 1 /* lhs */
            instanceof jdk.nashorn.internal.ir.ObjectNode
            ifne 1
            aload 1 /* lhs */
            instanceof jdk.nashorn.internal.ir.LiteralNode$ArrayLiteralNode
            ifeq 2
         1: .line 751
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ireturn
         2: .line 753
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1   lhs  Ljdk/nashorn/internal/ir/Expression;
    MethodParameters:
      Name  Flags
      lhs   final

  private void verifyDestructuringAssignmentPattern(jdk.nashorn.internal.ir.Expression, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression pattern
        start local 2 // java.lang.String contextString
         0: .line 757
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 1 /* pattern */
            instanceof jdk.nashorn.internal.ir.ObjectNode
            ifne 1
            aload 1 /* pattern */
            instanceof jdk.nashorn.internal.ir.LiteralNode$ArrayLiteralNode
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 758
      StackMap locals:
      StackMap stack:
            aload 1 /* pattern */
            new jdk.nashorn.internal.parser.Parser$2
            dup
            aload 0 /* this */
            aload 0 /* this */
            new jdk.nashorn.internal.ir.LexicalContext
            dup
            invokespecial jdk.nashorn.internal.ir.LexicalContext.<init>:()V
            aload 2 /* contextString */
            invokespecial jdk.nashorn.internal.parser.Parser$2.<init>:(Ljdk/nashorn/internal/parser/Parser;Ljdk/nashorn/internal/parser/Parser;Ljdk/nashorn/internal/ir/LexicalContext;Ljava/lang/String;)V
            invokevirtual jdk.nashorn.internal.ir.Expression.accept:(Ljdk/nashorn/internal/ir/visitor/NodeVisitor;)Ljdk/nashorn/internal/ir/Node;
            pop
         2: .line 791
            return
        end local 2 // java.lang.String contextString
        end local 1 // jdk.nashorn.internal.ir.Expression pattern
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1        pattern  Ljdk/nashorn/internal/ir/Expression;
            0    3     2  contextString  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      pattern        final
      contextString  final

  private static jdk.nashorn.internal.ir.UnaryNode incDecExpression(long, jdk.nashorn.internal.parser.TokenType, jdk.nashorn.internal.ir.Expression, boolean);
    descriptor: (JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/UnaryNode;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // long firstToken
        start local 2 // jdk.nashorn.internal.parser.TokenType tokenType
        start local 3 // jdk.nashorn.internal.ir.Expression expression
        start local 4 // boolean isPostfix
         0: .line 802
            iload 4 /* isPostfix */
            ifeq 4
         1: .line 803
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 0 /* firstToken */
            aload 2 /* tokenType */
            getstatic jdk.nashorn.internal.parser.TokenType.DECPREFIX:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
            getstatic jdk.nashorn.internal.parser.TokenType.DECPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
            goto 3
      StackMap locals: long jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression int
      StackMap stack: new 1 new 1 long
         2: getstatic jdk.nashorn.internal.parser.TokenType.INCPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
      StackMap locals: long jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression int
      StackMap stack: new 1 new 1 long jdk.nashorn.internal.parser.TokenType
         3: invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 3 /* expression */
            invokevirtual jdk.nashorn.internal.ir.Expression.getStart:()I
            lload 0 /* firstToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            lload 0 /* firstToken */
            invokestatic jdk.nashorn.internal.parser.Token.descLength:(J)I
            iadd
            aload 3 /* expression */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JIILjdk/nashorn/internal/ir/Expression;)V
            areturn
         4: .line 806
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 0 /* firstToken */
            aload 3 /* expression */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 4 // boolean isPostfix
        end local 3 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // jdk.nashorn.internal.parser.TokenType tokenType
        end local 0 // long firstToken
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0  firstToken  J
            0    5     2   tokenType  Ljdk/nashorn/internal/parser/TokenType;
            0    5     3  expression  Ljdk/nashorn/internal/ir/Expression;
            0    5     4   isPostfix  Z
    MethodParameters:
            Name  Flags
      firstToken  final
      tokenType   final
      expression  final
      isPostfix   final

  private jdk.nashorn.internal.ir.FunctionNode program(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=10, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String scriptName
        start local 2 // int reparseFlags
         0: .line 830
            getstatic jdk.nashorn.internal.parser.TokenType.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.withDelimiter:(J)J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            invokestatic jdk.nashorn.internal.parser.Token.toDesc:(Ljdk/nashorn/internal/parser/TokenType;II)J
            lstore 3 /* functionToken */
        start local 3 // long functionToken
         1: .line 831
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 5 /* functionLine */
        start local 5 // int functionLine
         2: .line 833
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 3 /* functionToken */
            lload 3 /* functionToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 1 /* scriptName */
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 6 /* ident */
        start local 6 // jdk.nashorn.internal.ir.IdentNode ident
         3: .line 834
            aload 0 /* this */
         4: .line 835
            aload 6 /* ident */
         5: .line 836
            lload 3 /* functionToken */
         6: .line 837
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SCRIPT:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
         7: .line 838
            iload 5 /* functionLine */
         8: .line 839
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
         9: .line 834
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 7 /* script */
        start local 7 // jdk.nashorn.internal.parser.ParserContextFunctionNode script
        10: .line 840
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 7 /* script */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        11: .line 841
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 8 /* body */
        start local 8 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        12: .line 843
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        13: .line 844
            aload 0 /* this */
            iload 2 /* reparseFlags */
            invokevirtual jdk.nashorn.internal.parser.Parser.sourceElements:(I)V
        14: .line 845
            aload 0 /* this */
            aload 7 /* script */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        15: .line 846
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        16: .line 848
            aload 0 /* this */
            aload 8 /* body */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        17: .line 849
            aload 8 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        18: .line 850
            new jdk.nashorn.internal.ir.Block
            dup
            lload 3 /* functionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 8 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            bipush 32
            ior
            aload 8 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            astore 9 /* programBody */
        start local 9 // jdk.nashorn.internal.ir.Block programBody
        19: .line 851
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 7 /* script */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        20: .line 852
            aload 7 /* script */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setLastToken:(J)V
        21: .line 854
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        22: .line 856
            aload 0 /* this */
            aload 7 /* script */
            lload 3 /* functionToken */
            aload 6 /* ident */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SCRIPT:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 5 /* functionLine */
            aload 9 /* programBody */
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            areturn
        end local 9 // jdk.nashorn.internal.ir.Block programBody
        end local 8 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        end local 7 // jdk.nashorn.internal.parser.ParserContextFunctionNode script
        end local 6 // jdk.nashorn.internal.ir.IdentNode ident
        end local 5 // int functionLine
        end local 3 // long functionToken
        end local 2 // int reparseFlags
        end local 1 // java.lang.String scriptName
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   23     1     scriptName  Ljava/lang/String;
            0   23     2   reparseFlags  I
            1   23     3  functionToken  J
            2   23     5   functionLine  I
            3   23     6          ident  Ljdk/nashorn/internal/ir/IdentNode;
           10   23     7         script  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           12   23     8           body  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           19   23     9    programBody  Ljdk/nashorn/internal/ir/Block;
    MethodParameters:
              Name  Flags
      scriptName    final
      reparseFlags  final

  private java.lang.String getDirective(jdk.nashorn.internal.ir.Node);
    descriptor: (Ljdk/nashorn/internal/ir/Node;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Node stmt
         0: .line 866
            aload 1 /* stmt */
            instanceof jdk.nashorn.internal.ir.ExpressionStatement
            ifeq 8
         1: .line 867
            aload 1 /* stmt */
            checkcast jdk.nashorn.internal.ir.ExpressionStatement
            invokevirtual jdk.nashorn.internal.ir.ExpressionStatement.getExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 2 /* expr */
        start local 2 // jdk.nashorn.internal.ir.Node expr
         2: .line 868
            aload 2 /* expr */
            instanceof jdk.nashorn.internal.ir.LiteralNode
            ifeq 8
         3: .line 869
            aload 2 /* expr */
            checkcast jdk.nashorn.internal.ir.LiteralNode
            astore 3 /* lit */
        start local 3 // jdk.nashorn.internal.ir.LiteralNode lit
         4: .line 870
            aload 3 /* lit */
            invokevirtual jdk.nashorn.internal.ir.LiteralNode.getToken:()J
            lstore 4 /* litToken */
        start local 4 // long litToken
         5: .line 871
            lload 4 /* litToken */
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            astore 6 /* tt */
        start local 6 // jdk.nashorn.internal.parser.TokenType tt
         6: .line 873
            aload 6 /* tt */
            getstatic jdk.nashorn.internal.parser.TokenType.STRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 7
            aload 6 /* tt */
            getstatic jdk.nashorn.internal.parser.TokenType.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         7: .line 875
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Node jdk.nashorn.internal.ir.Node jdk.nashorn.internal.ir.LiteralNode long jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            aload 3 /* lit */
            invokevirtual jdk.nashorn.internal.ir.LiteralNode.getStart:()I
            lload 4 /* litToken */
            invokestatic jdk.nashorn.internal.parser.Token.descLength:(J)I
            invokevirtual jdk.nashorn.internal.runtime.Source.getString:(II)Ljava/lang/String;
            areturn
        end local 6 // jdk.nashorn.internal.parser.TokenType tt
        end local 4 // long litToken
        end local 3 // jdk.nashorn.internal.ir.LiteralNode lit
        end local 2 // jdk.nashorn.internal.ir.Node expr
         8: .line 880
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Node
      StackMap stack:
            aconst_null
            areturn
        end local 1 // jdk.nashorn.internal.ir.Node stmt
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljdk/nashorn/internal/parser/Parser;
            0    9     1      stmt  Ljdk/nashorn/internal/ir/Node;
            2    8     2      expr  Ljdk/nashorn/internal/ir/Node;
            4    8     3       lit  Ljdk/nashorn/internal/ir/LiteralNode<*>;
            5    8     4  litToken  J
            6    8     6        tt  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
      Name  Flags
      stmt  final

  private void sourceElements(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int reparseFlags
         0: .line 893
            aconst_null
            astore 2 /* directiveStmts */
        start local 2 // java.util.List directiveStmts
         1: .line 894
            iconst_1
            istore 3 /* checkDirective */
        start local 3 // boolean checkDirective
         2: .line 895
            iload 1 /* reparseFlags */
            istore 4 /* functionFlags */
        start local 4 // int functionFlags
         3: .line 896
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            istore 5 /* oldStrictMode */
        start local 5 // boolean oldStrictMode
         4: .line 901
            goto 49
         5: .line 903
      StackMap locals: jdk.nashorn.internal.parser.Parser int java.util.List int int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 7
         6: .line 904
            goto 54
         7: .line 909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iload 4 /* functionFlags */
            iconst_0
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.statement:(ZIZZ)V
         8: .line 910
            iconst_0
            istore 4 /* functionFlags */
         9: .line 913
            iload 3 /* checkDirective */
            ifeq 48
        10: .line 915
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getLastStatement:()Ljdk/nashorn/internal/ir/Statement;
            astore 6 /* lastStatement */
        start local 6 // jdk.nashorn.internal.ir.Statement lastStatement
        11: .line 918
            aload 0 /* this */
            aload 6 /* lastStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.getDirective:(Ljdk/nashorn/internal/ir/Node;)Ljava/lang/String;
            astore 7 /* directive */
        start local 7 // java.lang.String directive
        12: .line 922
            aload 7 /* directive */
            ifnull 13
            iconst_1
            goto 14
      StackMap locals: jdk.nashorn.internal.ir.Statement java.lang.String
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 3 /* checkDirective */
        15: .line 924
            iload 3 /* checkDirective */
            ifeq 48
        16: .line 925
            iload 5 /* oldStrictMode */
            ifne 20
        17: .line 926
            aload 2 /* directiveStmts */
            ifnonnull 19
        18: .line 927
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* directiveStmts */
        19: .line 929
      StackMap locals:
      StackMap stack:
            aload 2 /* directiveStmts */
            aload 6 /* lastStatement */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 933
      StackMap locals:
      StackMap stack:
            ldc "use strict"
            aload 7 /* directive */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 35
        21: .line 934
            aload 0 /* this */
            iconst_1
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        22: .line 935
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 8 /* function */
        start local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        23: .line 936
            aload 8 /* function */
            iconst_4
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        24: .line 939
            iload 5 /* oldStrictMode */
            ifne 48
            aload 2 /* directiveStmts */
            ifnull 48
        25: .line 941
            aload 2 /* directiveStmts */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 28
      StackMap locals: jdk.nashorn.internal.parser.Parser int java.util.List int int int jdk.nashorn.internal.ir.Statement java.lang.String jdk.nashorn.internal.parser.ParserContextFunctionNode top java.util.Iterator
      StackMap stack:
        26: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Node
            astore 9 /* statement */
        start local 9 // jdk.nashorn.internal.ir.Node statement
        27: .line 944
            aload 0 /* this */
            aload 9 /* statement */
            invokevirtual jdk.nashorn.internal.ir.Node.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:(J)Ljava/lang/Object;
            pop
        end local 9 // jdk.nashorn.internal.ir.Node statement
        28: .line 941
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 26
        29: .line 949
            aload 0 /* this */
            aload 8 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            ldc "function name"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        30: .line 950
            aload 8 /* function */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 33
      StackMap locals:
      StackMap stack:
        31: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 9 /* param */
        start local 9 // jdk.nashorn.internal.ir.IdentNode param
        32: .line 951
            aload 0 /* this */
            aload 9 /* param */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        end local 9 // jdk.nashorn.internal.ir.IdentNode param
        33: .line 950
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        end local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        34: .line 954
            goto 48
      StackMap locals: jdk.nashorn.internal.parser.Parser int java.util.List int int int jdk.nashorn.internal.ir.Statement java.lang.String
      StackMap stack:
        35: getstatic jdk.nashorn.internal.runtime.Context.DEBUG:Z
            ifeq 48
        36: .line 955
            aload 7 /* directive */
            invokestatic jdk.nashorn.internal.ir.FunctionNode.getDirectiveFlag:(Ljava/lang/String;)I
            istore 8 /* debugFlag */
        start local 8 // int debugFlag
        37: .line 956
            iload 8 /* debugFlag */
            ifeq 48
        38: .line 957
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 9 /* function */
        start local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        39: .line 958
            aload 9 /* function */
            iload 8 /* debugFlag */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setDebugFlag:(I)V
        end local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        end local 8 // int debugFlag
        end local 7 // java.lang.String directive
        end local 6 // jdk.nashorn.internal.ir.Statement lastStatement
        40: .line 963
            goto 48
      StackMap locals: jdk.nashorn.internal.parser.Parser int java.util.List int int int
      StackMap stack: java.lang.Exception
        41: astore 6 /* e */
        start local 6 // java.lang.Exception e
        42: .line 964
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 7 /* errorLine */
        start local 7 // int errorLine
        43: .line 965
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 8 /* errorToken */
        start local 8 // long errorToken
        44: .line 967
            aload 0 /* this */
            aload 6 /* e */
            invokevirtual jdk.nashorn.internal.parser.Parser.recover:(Ljava/lang/Exception;)V
        45: .line 968
            new jdk.nashorn.internal.ir.ErrorNode
            dup
            lload 8 /* errorToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokespecial jdk.nashorn.internal.ir.ErrorNode.<init>:(JI)V
            astore 10 /* errorExpr */
        start local 10 // jdk.nashorn.internal.ir.ErrorNode errorExpr
        46: .line 969
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 7 /* errorLine */
            lload 8 /* errorToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 10 /* errorExpr */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            astore 11 /* expressionStatement */
        start local 11 // jdk.nashorn.internal.ir.ExpressionStatement expressionStatement
        47: .line 970
            aload 0 /* this */
            aload 11 /* expressionStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 11 // jdk.nashorn.internal.ir.ExpressionStatement expressionStatement
        end local 10 // jdk.nashorn.internal.ir.ErrorNode errorExpr
        end local 8 // long errorToken
        end local 7 // int errorLine
        end local 6 // java.lang.Exception e
        48: .line 974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            invokevirtual jdk.nashorn.internal.parser.TokenStream.commit:(I)V
        49: .line 901
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 5
        50: .line 976
            goto 54
      StackMap locals:
      StackMap stack: java.lang.Throwable
        51: astore 12
        52: .line 977
            aload 0 /* this */
            iload 5 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        53: .line 978
            aload 12
            athrow
        54: .line 977
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 5 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        55: .line 979
            return
        end local 5 // boolean oldStrictMode
        end local 4 // int functionFlags
        end local 3 // boolean checkDirective
        end local 2 // java.util.List directiveStmts
        end local 1 // int reparseFlags
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   56     0                 this  Ljdk/nashorn/internal/parser/Parser;
            0   56     1         reparseFlags  I
            1   56     2       directiveStmts  Ljava/util/List<Ljdk/nashorn/internal/ir/Node;>;
            2   56     3       checkDirective  Z
            3   56     4        functionFlags  I
            4   56     5        oldStrictMode  Z
           11   40     6        lastStatement  Ljdk/nashorn/internal/ir/Statement;
           12   40     7            directive  Ljava/lang/String;
           23   34     8             function  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           27   28     9            statement  Ljdk/nashorn/internal/ir/Node;
           32   33     9                param  Ljdk/nashorn/internal/ir/IdentNode;
           37   40     8            debugFlag  I
           39   40     9             function  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           42   48     6                    e  Ljava/lang/Exception;
           43   48     7            errorLine  I
           44   48     8           errorToken  J
           46   48    10            errorExpr  Ljdk/nashorn/internal/ir/ErrorNode;
           47   48    11  expressionStatement  Ljdk/nashorn/internal/ir/ExpressionStatement;
      Exception table:
        from    to  target  type
           7    40      41  Class java.lang.Exception
           4    51      51  any
    MethodParameters:
              Name  Flags
      reparseFlags  final

  private void statement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1028
            aload 0 /* this */
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.statement:(ZIZZ)V
         1: .line 1029
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void statement(boolean, int, boolean, boolean);
    descriptor: (ZIZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=5
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean topLevel
        start local 2 // int reparseFlags
        start local 3 // boolean singleStatement
        start local 4 // boolean labelledStatement
         0: .line 1037
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 19
                    2: 31
                   15: 31
                   29: 5
                   46: 31
                   49: 1
                   56: 17
                   61: 15
                   62: 29
                   65: 13
                   72: 9
                   73: 33
                   74: 7
                   87: 19
                   90: 23
                   92: 25
                   94: 27
                   96: 3
                   98: 11
                   99: 21
              default: 40
          }
         1: .line 1039
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.block:()V
         2: .line 1040
            goto 82
         3: .line 1042
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.variableStatement:(Ljdk/nashorn/internal/parser/TokenType;)V
         4: .line 1043
            goto 82
         5: .line 1045
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.emptyStatement:()V
         6: .line 1046
            goto 82
         7: .line 1048
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.ifStatement:()V
         8: .line 1049
            goto 82
         9: .line 1051
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.forStatement:()V
        10: .line 1052
            goto 82
        11: .line 1054
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.whileStatement:()V
        12: .line 1055
            goto 82
        13: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.doStatement:()V
        14: .line 1058
            goto 82
        15: .line 1060
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.continueStatement:()V
        16: .line 1061
            goto 82
        17: .line 1063
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.breakStatement:()V
        18: .line 1064
            goto 82
        19: .line 1066
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.returnStatement:()V
        20: .line 1067
            goto 82
        21: .line 1069
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.withStatement:()V
        22: .line 1070
            goto 82
        23: .line 1072
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.switchStatement:()V
        24: .line 1073
            goto 82
        25: .line 1075
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.throwStatement:()V
        26: .line 1076
            goto 82
        27: .line 1078
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.tryStatement:()V
        28: .line 1079
            goto 82
        29: .line 1081
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.debuggerStatement:()V
        30: .line 1082
            goto 82
        31: .line 1086
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        32: .line 1087
            goto 82
        33: .line 1091
      StackMap locals:
      StackMap stack:
            iload 3 /* singleStatement */
            ifeq 36
        34: .line 1095
            iload 4 /* labelledStatement */
            ifeq 35
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 36
        35: .line 1096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "expected.stmt"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "function declaration"
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        36: .line 1099
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iload 1 /* topLevel */
            ifne 37
            iload 4 /* labelledStatement */
            ifne 37
            iconst_0
            goto 38
      StackMap locals: jdk.nashorn.internal.parser.Parser int int int int
      StackMap stack: jdk.nashorn.internal.parser.Parser int
        37: iconst_1
      StackMap locals: jdk.nashorn.internal.parser.Parser int int int int
      StackMap stack: jdk.nashorn.internal.parser.Parser int int
        38: invokevirtual jdk.nashorn.internal.parser.Parser.functionExpression:(ZZ)Ljdk/nashorn/internal/ir/Expression;
            pop
        39: .line 1100
            return
        40: .line 1102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifeq 46
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 41
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.lookaheadIsLetDeclaration:(Z)Z
            ifne 42
      StackMap locals:
      StackMap stack:
        41: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 46
        42: .line 1103
      StackMap locals:
      StackMap stack:
            iload 3 /* singleStatement */
            ifeq 44
        43: .line 1104
            aload 0 /* this */
            ldc "expected.stmt"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " declaration"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        44: .line 1106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.variableStatement:(Ljdk/nashorn/internal/parser/TokenType;)V
        45: .line 1107
            goto 82
        46: .line 1108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CLASS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 51
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 51
        47: .line 1109
            iload 3 /* singleStatement */
            ifeq 49
        48: .line 1110
            aload 0 /* this */
            ldc "expected.stmt"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "class declaration"
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        49: .line 1112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.classDeclaration:(Z)Ljdk/nashorn/internal/ir/ClassNode;
            pop
        50: .line 1113
            goto 82
        51: .line 1115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._const_as_var:Z
            ifeq 54
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 54
        52: .line 1116
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.VAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.variableStatement:(Ljdk/nashorn/internal/parser/TokenType;)V
        53: .line 1117
            goto 82
        54: .line 1120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 55
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            ifeq 70
        55: .line 1121
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iconst_1
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 58
        56: .line 1122
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.labelStatement:()V
        57: .line 1123
            return
        58: .line 1126
      StackMap locals:
      StackMap stack:
            iload 2 /* reparseFlags */
            bipush 64
            iand
            ifeq 70
        59: .line 1127
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* ident */
        start local 5 // java.lang.String ident
        60: .line 1128
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* propertyToken */
        start local 6 // long propertyToken
        61: .line 1129
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 8 /* propertyLine */
        start local 8 // int propertyLine
        62: .line 1130
            ldc "get"
            aload 5 /* ident */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 66
        63: .line 1131
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        64: .line 1132
            aload 0 /* this */
            aload 0 /* this */
            lload 6 /* propertyToken */
            iload 8 /* propertyLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyGetterFunction:(JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            invokevirtual jdk.nashorn.internal.parser.Parser.addPropertyFunctionStatement:(Ljdk/nashorn/internal/parser/Parser$PropertyFunction;)V
        65: .line 1133
            return
        66: .line 1134
      StackMap locals: java.lang.String long int
      StackMap stack:
            ldc "set"
            aload 5 /* ident */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 70
        67: .line 1135
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        68: .line 1136
            aload 0 /* this */
            aload 0 /* this */
            lload 6 /* propertyToken */
            iload 8 /* propertyLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertySetterFunction:(JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            invokevirtual jdk.nashorn.internal.parser.Parser.addPropertyFunctionStatement:(Ljdk/nashorn/internal/parser/Parser$PropertyFunction;)V
        69: .line 1137
            return
        end local 8 // int propertyLine
        end local 6 // long propertyToken
        end local 5 // java.lang.String ident
        70: .line 1142
      StackMap locals:
      StackMap stack:
            iload 2 /* reparseFlags */
            sipush 128
            iand
            ifeq 81
        71: .line 1143
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 72
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 72
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            ifeq 81
        72: .line 1144
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* ident */
        start local 5 // java.lang.String ident
        73: .line 1145
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* propertyToken */
        start local 6 // long propertyToken
        74: .line 1146
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 8 /* propertyLine */
        start local 8 // int propertyLine
        75: .line 1147
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyName:()Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* propertyKey */
        start local 9 // jdk.nashorn.internal.ir.Expression propertyKey
        76: .line 1150
            ldc "constructor"
            aload 5 /* ident */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 77
            ldc 4194304
            goto 78
      StackMap locals: jdk.nashorn.internal.parser.Parser int int int int java.lang.String long int jdk.nashorn.internal.ir.Expression
      StackMap stack:
        77: ldc 2097152
      StackMap locals:
      StackMap stack: int
        78: istore 10 /* flags */
        start local 10 // int flags
        79: .line 1151
            aload 0 /* this */
            aload 0 /* this */
            aload 9 /* propertyKey */
            lload 6 /* propertyToken */
            iload 8 /* propertyLine */
            iconst_0
            iload 10 /* flags */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyMethodFunction:(Ljdk/nashorn/internal/ir/Expression;JIZIZ)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            invokevirtual jdk.nashorn.internal.parser.Parser.addPropertyFunctionStatement:(Ljdk/nashorn/internal/parser/Parser$PropertyFunction;)V
        80: .line 1152
            return
        end local 10 // int flags
        end local 9 // jdk.nashorn.internal.ir.Expression propertyKey
        end local 8 // int propertyLine
        end local 6 // long propertyToken
        end local 5 // java.lang.String ident
        81: .line 1155
      StackMap locals: jdk.nashorn.internal.parser.Parser int int int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expressionStatement:()V
        82: .line 1158
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean labelledStatement
        end local 3 // boolean singleStatement
        end local 2 // int reparseFlags
        end local 1 // boolean topLevel
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   83     0               this  Ljdk/nashorn/internal/parser/Parser;
            0   83     1           topLevel  Z
            0   83     2       reparseFlags  I
            0   83     3    singleStatement  Z
            0   83     4  labelledStatement  Z
           60   70     5              ident  Ljava/lang/String;
           61   70     6      propertyToken  J
           62   70     8       propertyLine  I
           73   81     5              ident  Ljava/lang/String;
           74   81     6      propertyToken  J
           75   81     8       propertyLine  I
           76   81     9        propertyKey  Ljdk/nashorn/internal/ir/Expression;
           79   81    10              flags  I
    MethodParameters:
                   Name  Flags
      topLevel           final
      reparseFlags       final
      singleStatement    final
      labelledStatement  final

  private void addPropertyFunctionStatement(jdk.nashorn.internal.parser.Parser$PropertyFunction);
    descriptor: (Ljdk/nashorn/internal/parser/Parser$PropertyFunction;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.Parser$PropertyFunction propertyFunction
         0: .line 1161
            aload 1 /* propertyFunction */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            astore 2 /* fn */
        start local 2 // jdk.nashorn.internal.ir.FunctionNode fn
         1: .line 1162
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getLineNumber:()I
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 2 /* fn */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 1163
            return
        end local 2 // jdk.nashorn.internal.ir.FunctionNode fn
        end local 1 // jdk.nashorn.internal.parser.Parser$PropertyFunction propertyFunction
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1  propertyFunction  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            1    3     2                fn  Ljdk/nashorn/internal/ir/FunctionNode;
    MethodParameters:
                  Name  Flags
      propertyFunction  final

  private jdk.nashorn.internal.ir.ClassNode classDeclaration(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/ClassNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean isDefault
         0: .line 1171
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 2 /* classLineNumber */
        start local 2 // int classLineNumber
         1: .line 1173
            aload 0 /* this */
            iload 1 /* isDefault */
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: jdk.nashorn.internal.parser.Parser int int
      StackMap stack: jdk.nashorn.internal.parser.Parser
         2: iconst_1
      StackMap locals: jdk.nashorn.internal.parser.Parser int int
      StackMap stack: jdk.nashorn.internal.parser.Parser int
         3: invokevirtual jdk.nashorn.internal.parser.Parser.classExpression:(Z)Ljdk/nashorn/internal/ir/ClassNode;
            astore 3 /* classExpression */
        start local 3 // jdk.nashorn.internal.ir.ClassNode classExpression
         4: .line 1175
            iload 1 /* isDefault */
            ifne 7
         5: .line 1176
            new jdk.nashorn.internal.ir.VarNode
            dup
            iload 2 /* classLineNumber */
            aload 3 /* classExpression */
            invokevirtual jdk.nashorn.internal.ir.ClassNode.getToken:()J
            aload 3 /* classExpression */
            invokevirtual jdk.nashorn.internal.ir.ClassNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getFinish:()I
            aload 3 /* classExpression */
            invokevirtual jdk.nashorn.internal.ir.ClassNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            aload 3 /* classExpression */
            iconst_2
            invokespecial jdk.nashorn.internal.ir.VarNode.<init>:(IJILjdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;I)V
            astore 4 /* classVar */
        start local 4 // jdk.nashorn.internal.ir.VarNode classVar
         6: .line 1177
            aload 0 /* this */
            aload 4 /* classVar */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 4 // jdk.nashorn.internal.ir.VarNode classVar
         7: .line 1179
      StackMap locals: jdk.nashorn.internal.ir.ClassNode
      StackMap stack:
            aload 3 /* classExpression */
            areturn
        end local 3 // jdk.nashorn.internal.ir.ClassNode classExpression
        end local 2 // int classLineNumber
        end local 1 // boolean isDefault
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Ljdk/nashorn/internal/parser/Parser;
            0    8     1        isDefault  Z
            1    8     2  classLineNumber  I
            4    8     3  classExpression  Ljdk/nashorn/internal/ir/ClassNode;
            6    7     4         classVar  Ljdk/nashorn/internal/ir/VarNode;
    MethodParameters:
           Name  Flags
      isDefault  final

  private jdk.nashorn.internal.ir.ClassNode classExpression(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/ClassNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean isStatement
         0: .line 1187
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CLASS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 2 /* classLineNumber */
        start local 2 // int classLineNumber
         2: .line 1189
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* classToken */
        start local 3 // long classToken
         3: .line 1190
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 1192
            aconst_null
            astore 5 /* className */
        start local 5 // jdk.nashorn.internal.ir.IdentNode className
         5: .line 1193
            iload 1 /* isStatement */
            ifne 6
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 7
         6: .line 1194
      StackMap locals: int long jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* className */
         7: .line 1197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* classLineNumber */
            lload 3 /* classToken */
            aload 5 /* className */
            iload 1 /* isStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.classTail:(IJLjdk/nashorn/internal/ir/IdentNode;Z)Ljdk/nashorn/internal/ir/ClassNode;
            areturn
        end local 5 // jdk.nashorn.internal.ir.IdentNode className
        end local 3 // long classToken
        end local 2 // int classLineNumber
        end local 1 // boolean isStatement
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Ljdk/nashorn/internal/parser/Parser;
            0    8     1      isStatement  Z
            2    8     2  classLineNumber  I
            3    8     3       classToken  J
            5    8     5        className  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
             Name  Flags
      isStatement  final

  private jdk.nashorn.internal.ir.ClassNode classTail(int, long, jdk.nashorn.internal.ir.IdentNode, boolean);
    descriptor: (IJLjdk/nashorn/internal/ir/IdentNode;Z)Ljdk/nashorn/internal/ir/ClassNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=24, args_size=5
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int classLineNumber
        start local 2 // long classToken
        start local 4 // jdk.nashorn.internal.ir.IdentNode className
        start local 5 // boolean isStatement
         0: .line 1248
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            istore 6 /* oldStrictMode */
        start local 6 // boolean oldStrictMode
         1: .line 1249
            aload 0 /* this */
            iconst_1
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
         2: .line 1251
            aconst_null
            astore 7 /* classHeritage */
        start local 7 // jdk.nashorn.internal.ir.Expression classHeritage
         3: .line 1252
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EXTENDS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 6
         4: .line 1253
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         5: .line 1254
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.leftHandSideExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 7 /* classHeritage */
         6: .line 1257
      StackMap locals: int jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         7: .line 1259
            aconst_null
            astore 8 /* constructor */
        start local 8 // jdk.nashorn.internal.ir.PropertyNode constructor
         8: .line 1260
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* classElements */
        start local 9 // java.util.ArrayList classElements
         9: .line 1261
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 10 /* keyToIndexMap */
        start local 10 // java.util.Map keyToIndexMap
        10: .line 1263
      StackMap locals: jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 13
        11: .line 1264
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        12: .line 1265
            goto 10
        13: .line 1267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 15
        14: .line 1268
            goto 57
        15: .line 1270
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 11 /* classElementToken */
        start local 11 // long classElementToken
        16: .line 1271
            iconst_0
            istore 13 /* isStatic */
        start local 13 // boolean isStatic
        17: .line 1272
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.STATIC:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 20
        18: .line 1273
            iconst_1
            istore 13 /* isStatic */
        19: .line 1274
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        20: .line 1276
      StackMap locals: long int
      StackMap stack:
            iconst_0
            istore 14 /* generator */
        start local 14 // boolean generator
        21: .line 1277
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 24
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 24
        22: .line 1278
            iconst_1
            istore 14 /* generator */
        23: .line 1279
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        24: .line 1281
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 13 /* isStatic */
            aload 7 /* classHeritage */
            ifnull 25
            iconst_1
            goto 26
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map long int int
      StackMap stack: jdk.nashorn.internal.parser.Parser int
        25: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map long int int
      StackMap stack: jdk.nashorn.internal.parser.Parser int int
        26: iload 14 /* generator */
            invokevirtual jdk.nashorn.internal.parser.Parser.methodDefinition:(ZZZ)Ljdk/nashorn/internal/ir/PropertyNode;
            astore 15 /* classElement */
        start local 15 // jdk.nashorn.internal.ir.PropertyNode classElement
        27: .line 1282
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.isComputed:()Z
            ifeq 30
        28: .line 1283
            aload 9 /* classElements */
            aload 15 /* classElement */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        29: .line 1284
            goto 10
      StackMap locals: jdk.nashorn.internal.ir.PropertyNode
      StackMap stack:
        30: aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.isStatic:()Z
            ifne 35
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            ldc "constructor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 35
        31: .line 1285
            aload 8 /* constructor */
            ifnonnull 34
        32: .line 1286
            aload 15 /* classElement */
            astore 8 /* constructor */
        33: .line 1287
            goto 10
        34: .line 1288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "multiple.constructors"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 11 /* classElementToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        35: .line 1294
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.parser.Parser$ClassElementKey
            dup
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.isStatic:()Z
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.parser.Parser$ClassElementKey.<init>:(ZLjava/lang/String;)V
            astore 16 /* key */
        start local 16 // jdk.nashorn.internal.parser.Parser$ClassElementKey key
        36: .line 1295
            aload 10 /* keyToIndexMap */
            aload 16 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 17 /* existing */
        start local 17 // java.lang.Integer existing
        37: .line 1297
            aload 17 /* existing */
            ifnonnull 41
        38: .line 1298
            aload 10 /* keyToIndexMap */
            aload 16 /* key */
            aload 9 /* classElements */
            invokevirtual java.util.ArrayList.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 1299
            aload 9 /* classElements */
            aload 15 /* classElement */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        40: .line 1300
            goto 10
        41: .line 1301
      StackMap locals: jdk.nashorn.internal.parser.Parser$ClassElementKey java.lang.Integer
      StackMap stack:
            aload 9 /* classElements */
            aload 17 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.PropertyNode
            astore 18 /* existingProperty */
        start local 18 // jdk.nashorn.internal.ir.PropertyNode existingProperty
        42: .line 1303
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getValue:()Ljdk/nashorn/internal/ir/Expression;
            astore 19 /* value */
        start local 19 // jdk.nashorn.internal.ir.Expression value
        43: .line 1304
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getGetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 20 /* getter */
        start local 20 // jdk.nashorn.internal.ir.FunctionNode getter
        44: .line 1305
            aload 15 /* classElement */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getSetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 21 /* setter */
        start local 21 // jdk.nashorn.internal.ir.FunctionNode setter
        45: .line 1307
            aload 19 /* value */
            ifnonnull 46
            aload 18 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getValue:()Ljdk/nashorn/internal/ir/Expression;
            ifnull 49
        46: .line 1308
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map long int int jdk.nashorn.internal.ir.PropertyNode jdk.nashorn.internal.parser.Parser$ClassElementKey java.lang.Integer jdk.nashorn.internal.ir.PropertyNode jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.FunctionNode jdk.nashorn.internal.ir.FunctionNode
      StackMap stack:
            aload 10 /* keyToIndexMap */
            aload 16 /* key */
            aload 9 /* classElements */
            invokevirtual java.util.ArrayList.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        47: .line 1309
            aload 9 /* classElements */
            aload 15 /* classElement */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        48: .line 1310
            goto 10
      StackMap locals:
      StackMap stack:
        49: aload 20 /* getter */
            ifnull 53
        50: .line 1311
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 51
            aload 18 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getGetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 51
            aload 18 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getSetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 51
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        51: .line 1312
      StackMap locals:
      StackMap stack:
            aload 9 /* classElements */
            aload 17 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            aload 18 /* existingProperty */
            aload 20 /* getter */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.setGetter:(Ljdk/nashorn/internal/ir/FunctionNode;)Ljdk/nashorn/internal/ir/PropertyNode;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        52: .line 1313
            goto 10
      StackMap locals:
      StackMap stack:
        53: aload 21 /* setter */
            ifnull 10
        54: .line 1314
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 55
            aload 18 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getGetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 55
            aload 18 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getSetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 55
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        55: .line 1315
      StackMap locals:
      StackMap stack:
            aload 9 /* classElements */
            aload 17 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            aload 18 /* existingProperty */
            aload 21 /* setter */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.setSetter:(Ljdk/nashorn/internal/ir/FunctionNode;)Ljdk/nashorn/internal/ir/PropertyNode;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 21 // jdk.nashorn.internal.ir.FunctionNode setter
        end local 20 // jdk.nashorn.internal.ir.FunctionNode getter
        end local 19 // jdk.nashorn.internal.ir.Expression value
        end local 18 // jdk.nashorn.internal.ir.PropertyNode existingProperty
        end local 17 // java.lang.Integer existing
        end local 16 // jdk.nashorn.internal.parser.Parser$ClassElementKey key
        end local 15 // jdk.nashorn.internal.ir.PropertyNode classElement
        end local 14 // boolean generator
        end local 13 // boolean isStatic
        end local 11 // long classElementToken
        56: .line 1262
            goto 10
        57: .line 1321
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 11 /* lastToken */
        start local 11 // long lastToken
        58: .line 1322
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        59: .line 1324
            aload 8 /* constructor */
            ifnonnull 63
        60: .line 1325
            aload 0 /* this */
            iload 1 /* classLineNumber */
            lload 2 /* classToken */
            lload 11 /* lastToken */
            aload 4 /* className */
            aload 7 /* classHeritage */
            ifnull 61
            iconst_1
            goto 62
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map long
      StackMap stack: jdk.nashorn.internal.parser.Parser int long long jdk.nashorn.internal.ir.IdentNode
        61: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.PropertyNode java.util.ArrayList java.util.Map long
      StackMap stack: jdk.nashorn.internal.parser.Parser int long long jdk.nashorn.internal.ir.IdentNode int
        62: invokevirtual jdk.nashorn.internal.parser.Parser.createDefaultClassConstructor:(IJJLjdk/nashorn/internal/ir/IdentNode;Z)Ljdk/nashorn/internal/ir/PropertyNode;
            astore 8 /* constructor */
        63: .line 1328
      StackMap locals:
      StackMap stack:
            aload 9 /* classElements */
            invokevirtual java.util.ArrayList.trimToSize:()V
        64: .line 1329
            new jdk.nashorn.internal.ir.ClassNode
            dup
            iload 1 /* classLineNumber */
            lload 2 /* classToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* className */
            aload 7 /* classHeritage */
            aload 8 /* constructor */
            aload 9 /* classElements */
            iload 5 /* isStatement */
            invokespecial jdk.nashorn.internal.ir.ClassNode.<init>:(IJILjdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/PropertyNode;Ljava/util/List;Z)V
            astore 23
        65: .line 1331
            aload 0 /* this */
            iload 6 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        66: .line 1329
            aload 23
            areturn
        end local 11 // long lastToken
        end local 10 // java.util.Map keyToIndexMap
        end local 9 // java.util.ArrayList classElements
        end local 8 // jdk.nashorn.internal.ir.PropertyNode constructor
        end local 7 // jdk.nashorn.internal.ir.Expression classHeritage
        67: .line 1330
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.IdentNode int int
      StackMap stack: java.lang.Throwable
            astore 22
        68: .line 1331
            aload 0 /* this */
            iload 6 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        69: .line 1332
            aload 22
            athrow
        end local 6 // boolean oldStrictMode
        end local 5 // boolean isStatement
        end local 4 // jdk.nashorn.internal.ir.IdentNode className
        end local 2 // long classToken
        end local 1 // int classLineNumber
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   70     0               this  Ljdk/nashorn/internal/parser/Parser;
            0   70     1    classLineNumber  I
            0   70     2         classToken  J
            0   70     4          className  Ljdk/nashorn/internal/ir/IdentNode;
            0   70     5        isStatement  Z
            1   70     6      oldStrictMode  Z
            3   67     7      classHeritage  Ljdk/nashorn/internal/ir/Expression;
            8   67     8        constructor  Ljdk/nashorn/internal/ir/PropertyNode;
            9   67     9      classElements  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/PropertyNode;>;
           10   67    10      keyToIndexMap  Ljava/util/Map<Ljdk/nashorn/internal/parser/Parser$ClassElementKey;Ljava/lang/Integer;>;
           16   56    11  classElementToken  J
           17   56    13           isStatic  Z
           21   56    14          generator  Z
           27   56    15       classElement  Ljdk/nashorn/internal/ir/PropertyNode;
           36   56    16                key  Ljdk/nashorn/internal/parser/Parser$ClassElementKey;
           37   56    17           existing  Ljava/lang/Integer;
           42   56    18   existingProperty  Ljdk/nashorn/internal/ir/PropertyNode;
           43   56    19              value  Ljdk/nashorn/internal/ir/Expression;
           44   56    20             getter  Ljdk/nashorn/internal/ir/FunctionNode;
           45   56    21             setter  Ljdk/nashorn/internal/ir/FunctionNode;
           58   67    11          lastToken  J
      Exception table:
        from    to  target  type
           2    65      67  any
    MethodParameters:
                 Name  Flags
      classLineNumber  final
      classToken       final
      className        final
      isStatement      final

  private jdk.nashorn.internal.ir.PropertyNode createDefaultClassConstructor(int, long, long, jdk.nashorn.internal.ir.IdentNode, boolean);
    descriptor: (IJJLjdk/nashorn/internal/ir/IdentNode;Z)Ljdk/nashorn/internal/ir/PropertyNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=15, locals=17, args_size=6
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int classLineNumber
        start local 2 // long classToken
        start local 4 // long lastToken
        start local 6 // jdk.nashorn.internal.ir.IdentNode className
        start local 7 // boolean subclass
         0: .line 1336
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            istore 8 /* ctorFinish */
        start local 8 // int ctorFinish
         1: .line 1339
            lload 2 /* classToken */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            lstore 11 /* identToken */
        start local 11 // long identToken
         2: .line 1340
            iload 7 /* subclass */
            ifeq 10
         3: .line 1341
            aload 0 /* this */
            lload 11 /* identToken */
            iload 8 /* ctorFinish */
            getstatic jdk.nashorn.internal.parser.TokenType.SUPER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDirectSuper:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 13 /* superIdent */
        start local 13 // jdk.nashorn.internal.ir.IdentNode superIdent
         4: .line 1342
            aload 0 /* this */
            lload 11 /* identToken */
            iload 8 /* ctorFinish */
            ldc "args"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsRestParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 14 /* argsIdent */
        start local 14 // jdk.nashorn.internal.ir.IdentNode argsIdent
         5: .line 1343
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 2 /* classToken */
            getstatic jdk.nashorn.internal.parser.TokenType.SPREAD_ARGUMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 14 /* argsIdent */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            astore 15 /* spreadArgs */
        start local 15 // jdk.nashorn.internal.ir.Expression spreadArgs
         6: .line 1344
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 1 /* classLineNumber */
            lload 2 /* classToken */
            iload 8 /* ctorFinish */
            aload 13 /* superIdent */
            aload 15 /* spreadArgs */
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 16 /* superCall */
        start local 16 // jdk.nashorn.internal.ir.CallNode superCall
         7: .line 1345
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 1 /* classLineNumber */
            lload 2 /* classToken */
            iload 8 /* ctorFinish */
            aload 16 /* superCall */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 9 /* statements */
        start local 9 // java.util.List statements
         8: .line 1346
            aload 14 /* argsIdent */
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 10 /* parameters */
        end local 16 // jdk.nashorn.internal.ir.CallNode superCall
        end local 15 // jdk.nashorn.internal.ir.Expression spreadArgs
        end local 14 // jdk.nashorn.internal.ir.IdentNode argsIdent
        end local 13 // jdk.nashorn.internal.ir.IdentNode superIdent
        start local 10 // java.util.List parameters
         9: .line 1347
            goto 12
        end local 10 // java.util.List parameters
        end local 9 // java.util.List statements
        10: .line 1348
      StackMap locals: jdk.nashorn.internal.parser.Parser int long long jdk.nashorn.internal.ir.IdentNode int int top top long
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 9 /* statements */
        start local 9 // java.util.List statements
        11: .line 1349
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
        12: .line 1352
      StackMap locals: jdk.nashorn.internal.parser.Parser int long long jdk.nashorn.internal.ir.IdentNode int int java.util.List java.util.List long
      StackMap stack:
            new jdk.nashorn.internal.ir.Block
            dup
            lload 2 /* classToken */
            iload 8 /* ctorFinish */
            bipush 32
            aload 9 /* statements */
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            astore 13 /* body */
        start local 13 // jdk.nashorn.internal.ir.Block body
        13: .line 1353
            aload 6 /* className */
            ifnull 14
            aload 6 /* className */
            goto 15
      StackMap locals: jdk.nashorn.internal.ir.Block
      StackMap stack:
        14: aload 0 /* this */
            lload 11 /* identToken */
            iload 8 /* ctorFinish */
            ldc "constructor"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.IdentNode
        15: astore 14 /* ctorName */
        start local 14 // jdk.nashorn.internal.ir.IdentNode ctorName
        16: .line 1354
            aload 0 /* this */
            aload 14 /* ctorName */
            lload 2 /* classToken */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 1 /* classLineNumber */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 15 /* function */
        start local 15 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        17: .line 1355
            aload 15 /* function */
            lload 4 /* lastToken */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setLastToken:(J)V
        18: .line 1357
            aload 15 /* function */
            ldc 2097152
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        19: .line 1358
            aload 15 /* function */
            ldc 4194304
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        20: .line 1359
            iload 7 /* subclass */
            ifeq 23
        21: .line 1360
            aload 15 /* function */
            ldc 8388608
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        22: .line 1361
            aload 15 /* function */
            ldc 524288
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        23: .line 1363
      StackMap locals: jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 6 /* className */
            ifnonnull 25
        24: .line 1364
            aload 15 /* function */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        25: .line 1367
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 2 /* classToken */
            iload 8 /* ctorFinish */
            aload 14 /* ctorName */
            aload 0 /* this */
        26: .line 1368
            aload 15 /* function */
        27: .line 1369
            lload 2 /* classToken */
        28: .line 1370
            aload 14 /* ctorName */
        29: .line 1371
            aload 10 /* parameters */
        30: .line 1372
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        31: .line 1373
            iload 1 /* classLineNumber */
        32: .line 1374
            aload 13 /* body */
        33: .line 1367
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
        34: .line 1375
            aconst_null
            aconst_null
            iconst_0
            iconst_0
        35: .line 1367
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            astore 16 /* constructor */
        start local 16 // jdk.nashorn.internal.ir.PropertyNode constructor
        36: .line 1376
            aload 16 /* constructor */
            areturn
        end local 16 // jdk.nashorn.internal.ir.PropertyNode constructor
        end local 15 // jdk.nashorn.internal.parser.ParserContextFunctionNode function
        end local 14 // jdk.nashorn.internal.ir.IdentNode ctorName
        end local 13 // jdk.nashorn.internal.ir.Block body
        end local 11 // long identToken
        end local 10 // java.util.List parameters
        end local 9 // java.util.List statements
        end local 8 // int ctorFinish
        end local 7 // boolean subclass
        end local 6 // jdk.nashorn.internal.ir.IdentNode className
        end local 4 // long lastToken
        end local 2 // long classToken
        end local 1 // int classLineNumber
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   37     0             this  Ljdk/nashorn/internal/parser/Parser;
            0   37     1  classLineNumber  I
            0   37     2       classToken  J
            0   37     4        lastToken  J
            0   37     6        className  Ljdk/nashorn/internal/ir/IdentNode;
            0   37     7         subclass  Z
            1   37     8       ctorFinish  I
            8   10     9       statements  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
           11   37     9       statements  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
            9   10    10       parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           12   37    10       parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            2   37    11       identToken  J
            4    9    13       superIdent  Ljdk/nashorn/internal/ir/IdentNode;
            5    9    14        argsIdent  Ljdk/nashorn/internal/ir/IdentNode;
            6    9    15       spreadArgs  Ljdk/nashorn/internal/ir/Expression;
            7    9    16        superCall  Ljdk/nashorn/internal/ir/CallNode;
           13   37    13             body  Ljdk/nashorn/internal/ir/Block;
           16   37    14         ctorName  Ljdk/nashorn/internal/ir/IdentNode;
           17   37    15         function  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           36   37    16      constructor  Ljdk/nashorn/internal/ir/PropertyNode;
    MethodParameters:
                 Name  Flags
      classLineNumber  final
      classToken       final
      lastToken        final
      className        final
      subclass         final

  private jdk.nashorn.internal.ir.PropertyNode methodDefinition(boolean, boolean, boolean);
    descriptor: (ZZZ)Ljdk/nashorn/internal/ir/PropertyNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=13, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean isStatic
        start local 2 // boolean subclass
        start local 3 // boolean generator
         0: .line 1380
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* methodToken */
        start local 4 // long methodToken
         1: .line 1381
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 6 /* methodLine */
        start local 6 // int methodLine
         2: .line 1382
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 3
            iconst_1
            goto 4
      StackMap locals: long int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 7 /* computed */
        start local 7 // boolean computed
         5: .line 1383
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 6
            iconst_1
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 8 /* isIdent */
        start local 8 // boolean isIdent
         8: .line 1384
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyName:()Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* propertyName */
        start local 9 // jdk.nashorn.internal.ir.Expression propertyName
         9: .line 1385
            ldc 2097152
            istore 10 /* flags */
        start local 10 // int flags
        10: .line 1386
            iload 7 /* computed */
            ifne 25
        11: .line 1387
            aload 9 /* propertyName */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            astore 11 /* name */
        start local 11 // java.lang.String name
        12: .line 1388
            iload 3 /* generator */
            ifne 16
            iload 8 /* isIdent */
            ifeq 16
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 16
            aload 11 /* name */
            ldc "get"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        13: .line 1389
            aload 0 /* this */
            lload 4 /* methodToken */
            iload 6 /* methodLine */
            iload 10 /* flags */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyGetterFunction:(JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            astore 12 /* methodDefinition */
        start local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        14: .line 1390
            aload 0 /* this */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            iload 1 /* isStatic */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            iload 3 /* generator */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAllowedMethodName:(Ljdk/nashorn/internal/ir/Expression;ZZZZ)V
        15: .line 1391
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 4 /* methodToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            aconst_null
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            aconst_null
            iload 1 /* isStatic */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        16: .line 1392
      StackMap locals: jdk.nashorn.internal.parser.Parser int int int long int int int jdk.nashorn.internal.ir.Expression int java.lang.String
      StackMap stack:
            iload 3 /* generator */
            ifne 20
            iload 8 /* isIdent */
            ifeq 20
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 20
            aload 11 /* name */
            ldc "set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        17: .line 1393
            aload 0 /* this */
            lload 4 /* methodToken */
            iload 6 /* methodLine */
            iload 10 /* flags */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertySetterFunction:(JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            astore 12 /* methodDefinition */
        start local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        18: .line 1394
            aload 0 /* this */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            iload 1 /* isStatic */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            iload 3 /* generator */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAllowedMethodName:(Ljdk/nashorn/internal/ir/Expression;ZZZZ)V
        19: .line 1395
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 4 /* methodToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            aconst_null
            aconst_null
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            iload 1 /* isStatic */
            aload 12 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        20: .line 1397
      StackMap locals:
      StackMap stack:
            iload 1 /* isStatic */
            ifne 24
            iload 3 /* generator */
            ifne 24
            aload 11 /* name */
            ldc "constructor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        21: .line 1398
            iload 10 /* flags */
            ldc 4194304
            ior
            istore 10 /* flags */
        22: .line 1399
            iload 2 /* subclass */
            ifeq 24
        23: .line 1400
            iload 10 /* flags */
            ldc 8388608
            ior
            istore 10 /* flags */
        24: .line 1403
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* propertyName */
            iload 1 /* isStatic */
            iload 7 /* computed */
            iload 3 /* generator */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAllowedMethodName:(Ljdk/nashorn/internal/ir/Expression;ZZZZ)V
        end local 11 // java.lang.String name
        25: .line 1406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* propertyName */
            lload 4 /* methodToken */
            iload 6 /* methodLine */
            iload 3 /* generator */
            iload 10 /* flags */
            iload 7 /* computed */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyMethodFunction:(Ljdk/nashorn/internal/ir/Expression;JIZIZ)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            astore 11 /* methodDefinition */
        start local 11 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        26: .line 1407
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 4 /* methodToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 11 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            aload 11 /* methodDefinition */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            aconst_null
            aconst_null
            iload 1 /* isStatic */
            iload 7 /* computed */
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 11 // jdk.nashorn.internal.parser.Parser$PropertyFunction methodDefinition
        end local 10 // int flags
        end local 9 // jdk.nashorn.internal.ir.Expression propertyName
        end local 8 // boolean isIdent
        end local 7 // boolean computed
        end local 6 // int methodLine
        end local 4 // long methodToken
        end local 3 // boolean generator
        end local 2 // boolean subclass
        end local 1 // boolean isStatic
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   27     0              this  Ljdk/nashorn/internal/parser/Parser;
            0   27     1          isStatic  Z
            0   27     2          subclass  Z
            0   27     3         generator  Z
            1   27     4       methodToken  J
            2   27     6        methodLine  I
            5   27     7          computed  Z
            8   27     8           isIdent  Z
            9   27     9      propertyName  Ljdk/nashorn/internal/ir/Expression;
           10   27    10             flags  I
           12   25    11              name  Ljava/lang/String;
           14   16    12  methodDefinition  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
           18   20    12  methodDefinition  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
           26   27    11  methodDefinition  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    MethodParameters:
           Name  Flags
      isStatic   final
      subclass   final
      generator  final

  private void verifyAllowedMethodName(jdk.nashorn.internal.ir.Expression, boolean, boolean, boolean, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;ZZZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression key
        start local 2 // boolean isStatic
        start local 3 // boolean computed
        start local 4 // boolean generator
        start local 5 // boolean accessor
         0: .line 1414
            iload 3 /* computed */
            ifne 7
         1: .line 1415
            iload 2 /* isStatic */
            ifne 3
            iload 4 /* generator */
            ifeq 3
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            ldc "constructor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 1416
            aload 0 /* this */
            ldc "generator.constructor"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* key */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         3: .line 1418
      StackMap locals:
      StackMap stack:
            iload 2 /* isStatic */
            ifne 5
            iload 5 /* accessor */
            ifeq 5
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            ldc "constructor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1419
            aload 0 /* this */
            ldc "accessor.constructor"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* key */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         5: .line 1421
      StackMap locals:
      StackMap stack:
            iload 2 /* isStatic */
            ifeq 7
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            ldc "prototype"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 1422
            aload 0 /* this */
            ldc "static.prototype.method"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* key */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         7: .line 1425
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean accessor
        end local 4 // boolean generator
        end local 3 // boolean computed
        end local 2 // boolean isStatic
        end local 1 // jdk.nashorn.internal.ir.Expression key
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljdk/nashorn/internal/parser/Parser;
            0    8     1        key  Ljdk/nashorn/internal/ir/Expression;
            0    8     2   isStatic  Z
            0    8     3   computed  Z
            0    8     4  generator  Z
            0    8     5   accessor  Z
    MethodParameters:
           Name  Flags
      key        final
      isStatic   final
      computed   final
      generator  final
      accessor   final

  private void block();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1436
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
         1: .line 1437
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void statementList();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1451
            goto 4
         1: .line 1452
      StackMap locals:
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    2: 2
                   53: 2
                   57: 2
                   63: 2
              default: 3
          }
         2: .line 1457
      StackMap locals:
      StackMap stack:
            goto 5
         3: .line 1463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.statement:()V
         4: .line 1451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 1
         5: .line 1465
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void verifyIdent(jdk.nashorn.internal.ir.IdentNode, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
        start local 2 // java.lang.String contextString
         0: .line 1474
            aload 0 /* this */
            aload 1 /* ident */
            aload 2 /* contextString */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyStrictIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         1: .line 1475
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 5
         2: .line 1476
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            iconst_0
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            invokestatic jdk.nashorn.internal.parser.TokenLookup.lookupKeyword:([CII)Ljdk/nashorn/internal/parser/TokenType;
            astore 3 /* tokenType */
        start local 3 // jdk.nashorn.internal.parser.TokenType tokenType
         3: .line 1477
            aload 3 /* tokenType */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 5
            aload 3 /* tokenType */
            invokevirtual jdk.nashorn.internal.parser.TokenType.getKind:()Ljdk/nashorn/internal/parser/TokenKind;
            getstatic jdk.nashorn.internal.parser.TokenKind.FUTURESTRICT:Ljdk/nashorn/internal/parser/TokenKind;
            if_acmpeq 5
         4: .line 1478
            aload 0 /* this */
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectMessage:(Ljdk/nashorn/internal/parser/TokenType;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 3 // jdk.nashorn.internal.parser.TokenType tokenType
         5: .line 1481
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String contextString
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    6     1          ident  Ljdk/nashorn/internal/ir/IdentNode;
            0    6     2  contextString  Ljava/lang/String;
            3    5     3      tokenType  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
               Name  Flags
      ident          final
      contextString  final

  private void verifyStrictIdent(jdk.nashorn.internal.ir.IdentNode, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
        start local 2 // java.lang.String contextString
         0: .line 1490
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 7
         1: .line 1491
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            dup
            astore 3
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -2035517098: 2
              3125404: 3
              default: 5
          }
      StackMap locals: java.lang.String
      StackMap stack:
         2: aload 3
            ldc "arguments"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 3
            ldc "eval"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
            goto 5
         4: .line 1494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "strict.name"
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* contextString */
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         5: .line 1499
      StackMap locals:
      StackMap stack:
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isFutureStrictName:()Z
            ifeq 7
         6: .line 1500
            aload 0 /* this */
            ldc "strict.name"
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* contextString */
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         7: .line 1503
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String contextString
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    8     1          ident  Ljdk/nashorn/internal/ir/IdentNode;
            0    8     2  contextString  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      ident          final
      contextString  final

  private void variableStatement(jdk.nashorn.internal.parser.TokenType);
    descriptor: (Ljdk/nashorn/internal/parser/TokenType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.TokenType varType
         0: .line 1525
            aload 0 /* this */
            aload 1 /* varType */
            iconst_1
            iconst_m1
            invokevirtual jdk.nashorn.internal.parser.Parser.variableDeclarationList:(Ljdk/nashorn/internal/parser/TokenType;ZI)Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
            pop
         1: .line 1526
            return
        end local 1 // jdk.nashorn.internal.parser.TokenType varType
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1  varType  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
         Name  Flags
      varType  final

  private jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult variableDeclarationList(jdk.nashorn.internal.parser.TokenType, boolean, int);
    descriptor: (Ljdk/nashorn/internal/parser/TokenType;ZI)Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=15, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.TokenType varType
        start local 2 // boolean isStatement
        start local 3 // int sourceOrder
         0: .line 1573
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.VAR:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1574
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 4 /* varLine */
        start local 4 // int varLine
         2: .line 1575
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 5 /* varToken */
        start local 5 // long varToken
         3: .line 1577
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 1579
            iconst_0
            istore 7 /* varFlags */
        start local 7 // int varFlags
         5: .line 1580
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         6: .line 1581
            iload 7 /* varFlags */
            iconst_1
            ior
            istore 7 /* varFlags */
         7: .line 1582
            goto 10
      StackMap locals: int long int
      StackMap stack:
         8: aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 10
         9: .line 1583
            iload 7 /* varFlags */
            iconst_2
            ior
            istore 7 /* varFlags */
        10: .line 1586
      StackMap locals:
      StackMap stack:
            iload 2 /* isStatement */
            ifeq 11
            aconst_null
            goto 12
      StackMap locals:
      StackMap stack:
        11: new jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult
            dup
            invokespecial jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.<init>:()V
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult
        12: astore 8 /* forResult */
        start local 8 // jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult forResult
        13: .line 1589
      StackMap locals: jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 15
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.inGeneratorFunction:()Z
            ifeq 15
        14: .line 1590
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        15: .line 1594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "variable name"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifierOrPattern:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* binding */
        start local 9 // jdk.nashorn.internal.ir.Expression binding
        16: .line 1595
            aload 9 /* binding */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 17
            iconst_0
            goto 18
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
        17: iconst_1
      StackMap locals:
      StackMap stack: int
        18: istore 10 /* isDestructuring */
        start local 10 // boolean isDestructuring
        19: .line 1596
            iload 10 /* isDestructuring */
            ifeq 22
        20: .line 1597
            iload 7 /* varFlags */
            istore 11 /* finalVarFlags */
        start local 11 // int finalVarFlags
        21: .line 1598
            aload 0 /* this */
            aload 9 /* binding */
            new jdk.nashorn.internal.parser.Parser$3
            dup
            aload 0 /* this */
            iload 4 /* varLine */
            lload 5 /* varToken */
            iload 3 /* sourceOrder */
            iload 11 /* finalVarFlags */
            invokespecial jdk.nashorn.internal.parser.Parser$3.<init>:(Ljdk/nashorn/internal/parser/Parser;IJII)V
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringBindingPattern:(Ljdk/nashorn/internal/ir/Expression;Ljava/util/function/Consumer;)V
        end local 11 // int finalVarFlags
        22: .line 1612
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 11 /* init */
        start local 11 // jdk.nashorn.internal.ir.Expression init
        23: .line 1615
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 40
        24: .line 1616
            iload 2 /* isStatement */
            ifne 26
        25: .line 1617
            aload 8 /* forResult */
            lload 5 /* varToken */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordDeclarationWithInitializer:(J)V
        26: .line 1619
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        27: .line 1622
            iload 10 /* isDestructuring */
            ifne 29
        28: .line 1623
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            aload 9 /* binding */
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
        29: .line 1626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* isStatement */
            ifeq 30
            iconst_0
            goto 31
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.parser.Parser
        30: iconst_1
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.TokenType int int int long int jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult jdk.nashorn.internal.ir.Expression int jdk.nashorn.internal.ir.Expression
      StackMap stack: jdk.nashorn.internal.parser.Parser int
        31: invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 11 /* init */
        32: .line 1627
            goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 12
        34: .line 1628
            iload 10 /* isDestructuring */
            ifne 36
        35: .line 1629
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        36: .line 1631
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 12
            athrow
        37: .line 1628
      StackMap locals:
      StackMap stack:
            iload 10 /* isDestructuring */
            ifne 45
        38: .line 1629
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        39: .line 1632
            goto 45
      StackMap locals:
      StackMap stack:
        40: iload 2 /* isStatement */
            ifeq 45
        41: .line 1633
            iload 10 /* isDestructuring */
            ifeq 43
        42: .line 1634
            aload 0 /* this */
            ldc "missing.destructuring.assignment"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        43: .line 1635
      StackMap locals:
      StackMap stack:
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 45
        44: .line 1636
            aload 0 /* this */
            ldc "missing.const.assignment"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 9 /* binding */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        45: .line 1641
      StackMap locals:
      StackMap stack:
            iload 10 /* isDestructuring */
            ifne 61
        46: .line 1642
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 47
            aload 11 /* init */
            ifnonnull 47
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 47
            iload 2 /* isStatement */
            ifeq 47
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        47: .line 1643
      StackMap locals:
      StackMap stack:
            aload 9 /* binding */
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 12 /* ident */
        start local 12 // jdk.nashorn.internal.ir.IdentNode ident
        48: .line 1644
            iload 2 /* isStatement */
            ifne 50
            aload 12 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            ldc "let"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 50
        49: .line 1645
            aload 0 /* this */
            ldc "let.binding.for"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        50: .line 1648
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 51
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 52
      StackMap locals:
      StackMap stack:
        51: aload 12 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDeclaredHere:()Ljdk/nashorn/internal/ir/IdentNode;
            goto 53
      StackMap locals:
      StackMap stack:
        52: aload 12 /* ident */
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.IdentNode
        53: astore 13 /* name */
        start local 13 // jdk.nashorn.internal.ir.IdentNode name
        54: .line 1649
            iload 2 /* isStatement */
            ifne 58
        55: .line 1650
            aload 11 /* init */
            ifnonnull 57
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 57
        56: .line 1651
            aload 8 /* forResult */
            aload 13 /* name */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordMissingAssignment:(Ljdk/nashorn/internal/ir/Expression;)V
        57: .line 1653
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 8 /* forResult */
            new jdk.nashorn.internal.ir.IdentNode
            dup
            aload 13 /* name */
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(Ljdk/nashorn/internal/ir/IdentNode;)V
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.addBinding:(Ljdk/nashorn/internal/ir/Expression;)V
        58: .line 1655
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.VarNode
            dup
            iload 4 /* varLine */
            lload 5 /* varToken */
            iload 3 /* sourceOrder */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 13 /* name */
            aload 11 /* init */
            iload 7 /* varFlags */
            invokespecial jdk.nashorn.internal.ir.VarNode.<init>:(IJIILjdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;I)V
            astore 14 /* var */
        start local 14 // jdk.nashorn.internal.ir.VarNode var
        59: .line 1656
            aload 0 /* this */
            aload 14 /* var */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 14 // jdk.nashorn.internal.ir.VarNode var
        end local 13 // jdk.nashorn.internal.ir.IdentNode name
        end local 12 // jdk.nashorn.internal.ir.IdentNode ident
        60: .line 1657
            goto 73
        61: .line 1658
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 62
            aload 11 /* init */
            ifnonnull 62
            iload 2 /* isStatement */
            ifeq 62
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        62: .line 1659
      StackMap locals:
      StackMap stack:
            aload 11 /* init */
            ifnull 70
        63: .line 1660
            aload 0 /* this */
            lload 5 /* varToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 9 /* binding */
            aload 11 /* init */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAssignment:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
            astore 12 /* assignment */
        start local 12 // jdk.nashorn.internal.ir.Expression assignment
        64: .line 1661
            iload 2 /* isStatement */
            ifeq 67
        65: .line 1662
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 4 /* varLine */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 12 /* assignment */
            aload 1 /* varType */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/parser/TokenType;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        66: .line 1663
            goto 73
        67: .line 1664
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 8 /* forResult */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.addAssignment:(Ljdk/nashorn/internal/ir/Expression;)V
        68: .line 1665
            aload 8 /* forResult */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.addBinding:(Ljdk/nashorn/internal/ir/Expression;)V
        end local 12 // jdk.nashorn.internal.ir.Expression assignment
        69: .line 1667
            goto 73
      StackMap locals:
      StackMap stack:
        70: iload 2 /* isStatement */
            ifne 73
        71: .line 1668
            aload 8 /* forResult */
            aload 9 /* binding */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordMissingAssignment:(Ljdk/nashorn/internal/ir/Expression;)V
        72: .line 1669
            aload 8 /* forResult */
            aload 9 /* binding */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.addBinding:(Ljdk/nashorn/internal/ir/Expression;)V
        73: .line 1673
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 75
        74: .line 1674
            goto 77
        75: .line 1676
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        end local 11 // jdk.nashorn.internal.ir.Expression init
        end local 10 // boolean isDestructuring
        end local 9 // jdk.nashorn.internal.ir.Expression binding
        76: .line 1587
            goto 13
        77: .line 1680
      StackMap locals:
      StackMap stack:
            iload 2 /* isStatement */
            ifeq 79
        78: .line 1681
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        79: .line 1684
      StackMap locals:
      StackMap stack:
            aload 8 /* forResult */
            areturn
        end local 8 // jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult forResult
        end local 7 // int varFlags
        end local 5 // long varToken
        end local 4 // int varLine
        end local 3 // int sourceOrder
        end local 2 // boolean isStatement
        end local 1 // jdk.nashorn.internal.parser.TokenType varType
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   80     0             this  Ljdk/nashorn/internal/parser/Parser;
            0   80     1          varType  Ljdk/nashorn/internal/parser/TokenType;
            0   80     2      isStatement  Z
            0   80     3      sourceOrder  I
            2   80     4          varLine  I
            3   80     5         varToken  J
            5   80     7         varFlags  I
           13   80     8        forResult  Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
           16   76     9          binding  Ljdk/nashorn/internal/ir/Expression;
           19   76    10  isDestructuring  Z
           21   22    11    finalVarFlags  I
           23   76    11             init  Ljdk/nashorn/internal/ir/Expression;
           48   60    12            ident  Ljdk/nashorn/internal/ir/IdentNode;
           54   60    13             name  Ljdk/nashorn/internal/ir/IdentNode;
           59   60    14              var  Ljdk/nashorn/internal/ir/VarNode;
           64   69    12       assignment  Ljdk/nashorn/internal/ir/Expression;
      Exception table:
        from    to  target  type
          29    33      33  any
    MethodParameters:
             Name  Flags
      varType      final
      isStatement  final
      sourceOrder  final

  private boolean isBindingIdentifier();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1688
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.IdentNode bindingIdentifier(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String contextString
         0: .line 1692
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 2 /* name */
        start local 2 // jdk.nashorn.internal.ir.IdentNode name
         1: .line 1693
            aload 0 /* this */
            aload 2 /* name */
            aload 1 /* contextString */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         2: .line 1694
            aload 2 /* name */
            areturn
        end local 2 // jdk.nashorn.internal.ir.IdentNode name
        end local 1 // java.lang.String contextString
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1  contextString  Ljava/lang/String;
            1    3     2           name  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
               Name  Flags
      contextString  final

  private jdk.nashorn.internal.ir.Expression bindingPattern();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1698
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
         1: .line 1699
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.arrayLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
         2: .line 1700
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 4
         3: .line 1701
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.objectLiteral:()Ljdk/nashorn/internal/ir/ObjectNode;
            areturn
         4: .line 1703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "expected.binding"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Expression bindingIdentifierOrPattern(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String contextString
         0: .line 1708
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifne 2
         1: .line 1709
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* contextString */
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifier:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            areturn
         2: .line 1711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingPattern:()Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 1 // java.lang.String contextString
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1  contextString  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      contextString  final

  private void verifyDestructuringBindingPattern(jdk.nashorn.internal.ir.Expression, java.util.function.Consumer<jdk.nashorn.internal.ir.IdentNode>);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;Ljava/util/function/Consumer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression pattern
        start local 2 // java.util.function.Consumer identifierCallback
         0: .line 1789
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 2
            aload 1 /* pattern */
            instanceof jdk.nashorn.internal.ir.BinaryNode
            ifeq 1
            aload 1 /* pattern */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.ir.Expression.isTokenType:(Ljdk/nashorn/internal/parser/TokenType;)Z
            ifne 2
         1: .line 1790
      StackMap locals:
      StackMap stack:
            aload 1 /* pattern */
            instanceof jdk.nashorn.internal.ir.ObjectNode
            ifne 2
            aload 1 /* pattern */
            instanceof jdk.nashorn.internal.ir.LiteralNode$ArrayLiteralNode
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1791
      StackMap locals:
      StackMap stack:
            aload 1 /* pattern */
            new jdk.nashorn.internal.parser.Parser$4
            dup
            aload 0 /* this */
            aload 0 /* this */
            new jdk.nashorn.internal.ir.LexicalContext
            dup
            invokespecial jdk.nashorn.internal.ir.LexicalContext.<init>:()V
            aload 2 /* identifierCallback */
            invokespecial jdk.nashorn.internal.parser.Parser$4.<init>:(Ljdk/nashorn/internal/parser/Parser;Ljdk/nashorn/internal/parser/Parser;Ljdk/nashorn/internal/ir/LexicalContext;Ljava/util/function/Consumer;)V
            invokevirtual jdk.nashorn.internal.ir.Expression.accept:(Ljdk/nashorn/internal/ir/visitor/NodeVisitor;)Ljdk/nashorn/internal/ir/Node;
            pop
         3: .line 1814
            return
        end local 2 // java.util.function.Consumer identifierCallback
        end local 1 // jdk.nashorn.internal.ir.Expression pattern
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Ljdk/nashorn/internal/parser/Parser;
            0    4     1             pattern  Ljdk/nashorn/internal/ir/Expression;
            0    4     2  identifierCallback  Ljava/util/function/Consumer<Ljdk/nashorn/internal/ir/IdentNode;>;
    Signature: (Ljdk/nashorn/internal/ir/Expression;Ljava/util/function/Consumer<Ljdk/nashorn/internal/ir/IdentNode;>;)V
    MethodParameters:
                    Name  Flags
      pattern             final
      identifierCallback  final

  private void emptyStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1825
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._empty_statements:Z
            ifeq 2
         1: .line 1826
            aload 0 /* this */
            new jdk.nashorn.internal.ir.EmptyNode
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.descLength:(J)I
            iadd
            invokespecial jdk.nashorn.internal.ir.EmptyNode.<init>:(IJI)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
         2: .line 1830
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 1831
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void expressionStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1843
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* expressionLine */
        start local 1 // int expressionLine
         1: .line 1844
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* expressionToken */
        start local 2 // long expressionToken
         2: .line 1847
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         3: .line 1849
            aload 4 /* expression */
            ifnull 7
         4: .line 1850
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 1 /* expressionLine */
            lload 2 /* expressionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* expression */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            astore 5 /* expressionStatement */
        start local 5 // jdk.nashorn.internal.ir.ExpressionStatement expressionStatement
         5: .line 1851
            aload 0 /* this */
            aload 5 /* expressionStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 5 // jdk.nashorn.internal.ir.ExpressionStatement expressionStatement
         6: .line 1852
            goto 8
         7: .line 1853
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            aconst_null
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         8: .line 1856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
         9: .line 1857
            return
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long expressionToken
        end local 1 // int expressionLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   10     0                 this  Ljdk/nashorn/internal/parser/Parser;
            1   10     1       expressionLine  I
            2   10     2      expressionToken  J
            3   10     4           expression  Ljdk/nashorn/internal/ir/Expression;
            5    6     5  expressionStatement  Ljdk/nashorn/internal/ir/ExpressionStatement;

  private void ifStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1870
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* ifLine */
        start local 1 // int ifLine
         1: .line 1871
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* ifToken */
        start local 2 // long ifToken
         2: .line 1873
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 1875
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         4: .line 1876
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* test */
        start local 4 // jdk.nashorn.internal.ir.Expression test
         5: .line 1877
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         6: .line 1878
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 5 /* pass */
        start local 5 // jdk.nashorn.internal.ir.Block pass
         7: .line 1880
            aconst_null
            astore 6 /* fail */
        start local 6 // jdk.nashorn.internal.ir.Block fail
         8: .line 1881
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELSE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
         9: .line 1882
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 1883
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 6 /* fail */
        11: .line 1886
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Block
      StackMap stack:
            aload 0 /* this */
        12: new jdk.nashorn.internal.ir.IfNode
            dup
            iload 1 /* ifLine */
            lload 2 /* ifToken */
            aload 6 /* fail */
            ifnull 13
            aload 6 /* fail */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
            goto 14
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Block
      StackMap stack: jdk.nashorn.internal.parser.Parser new 12 new 12 int long
        13: aload 5 /* pass */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Block
      StackMap stack: jdk.nashorn.internal.parser.Parser new 12 new 12 int long int
        14: aload 4 /* test */
            aload 5 /* pass */
            aload 6 /* fail */
            invokespecial jdk.nashorn.internal.ir.IfNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Block;Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        15: .line 1887
            return
        end local 6 // jdk.nashorn.internal.ir.Block fail
        end local 5 // jdk.nashorn.internal.ir.Block pass
        end local 4 // jdk.nashorn.internal.ir.Expression test
        end local 2 // long ifToken
        end local 1 // int ifLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Ljdk/nashorn/internal/parser/Parser;
            1   16     1   ifLine  I
            2   16     2  ifToken  J
            5   16     4     test  Ljdk/nashorn/internal/ir/Expression;
            7   16     5     pass  Ljdk/nashorn/internal/ir/Block;
            8   16     6     fail  Ljdk/nashorn/internal/ir/Block;

  private void forStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=18, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1903
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* forToken */
        start local 1 // long forToken
         1: .line 1904
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* forLine */
        start local 3 // int forLine
         2: .line 1908
            lload 1 /* forToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            istore 4 /* forStart */
        start local 4 // int forStart
         3: .line 1910
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifeq 4
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            goto 5
      StackMap locals: long int int
      StackMap stack:
         4: aconst_null
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.parser.ParserContextBlockNode
         5: astore 5 /* outer */
        start local 5 // jdk.nashorn.internal.parser.ParserContextBlockNode outer
         6: .line 1913
            new jdk.nashorn.internal.parser.ParserContextLoopNode
            dup
            invokespecial jdk.nashorn.internal.parser.ParserContextLoopNode.<init>:()V
            astore 6 /* forNode */
        start local 6 // jdk.nashorn.internal.parser.ParserContextLoopNode forNode
         7: .line 1914
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         8: .line 1915
            aconst_null
            astore 7 /* body */
        start local 7 // jdk.nashorn.internal.ir.Block body
         9: .line 1916
            aconst_null
            astore 8 /* init */
        start local 8 // jdk.nashorn.internal.ir.Expression init
        10: .line 1917
            aconst_null
            astore 9 /* test */
        start local 9 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
        11: .line 1918
            aconst_null
            astore 10 /* modify */
        start local 10 // jdk.nashorn.internal.ir.JoinPredecessorExpression modify
        12: .line 1919
            aconst_null
            astore 11 /* varDeclList */
        start local 11 // jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult varDeclList
        13: .line 1921
            iconst_0
            istore 12 /* flags */
        start local 12 // int flags
        14: .line 1922
            iconst_0
            istore 13 /* isForOf */
        start local 13 // boolean isForOf
        15: .line 1926
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        16: .line 1930
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 19
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 19
            ldc "each"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
        17: .line 1931
            iload 12 /* flags */
            iconst_2
            ior
            istore 12 /* flags */
        18: .line 1932
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        19: .line 1935
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        20: .line 1937
            aconst_null
            astore 14 /* varType */
        start local 14 // jdk.nashorn.internal.parser.TokenType varType
        21: .line 1938
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 2
                   29: 24
                   96: 22
              default: 25
          }
        22: .line 1941
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            dup
            astore 14 /* varType */
            iconst_0
            iload 4 /* forStart */
            invokevirtual jdk.nashorn.internal.parser.Parser.variableDeclarationList:(Ljdk/nashorn/internal/parser/TokenType;ZI)Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
            astore 11 /* varDeclList */
        23: .line 1942
            goto 34
        24: .line 1944
      StackMap locals:
      StackMap stack:
            goto 34
        25: .line 1946
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifeq 30
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 26
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.lookaheadIsLetDeclaration:(Z)Z
            ifne 27
      StackMap locals:
      StackMap stack:
        26: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 30
        27: .line 1947
      StackMap locals:
      StackMap stack:
            iload 12 /* flags */
            bipush 8
            ior
            istore 12 /* flags */
        28: .line 1949
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            dup
            astore 14 /* varType */
            iconst_0
            iload 4 /* forStart */
            invokevirtual jdk.nashorn.internal.parser.Parser.variableDeclarationList:(Ljdk/nashorn/internal/parser/TokenType;ZI)Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
            astore 11 /* varDeclList */
        29: .line 1950
            goto 34
        30: .line 1952
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._const_as_var:Z
            ifeq 33
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 33
        31: .line 1954
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.VAR:Ljdk/nashorn/internal/parser/TokenType;
            dup
            astore 14 /* varType */
            iconst_0
            iload 4 /* forStart */
            invokevirtual jdk.nashorn.internal.parser.Parser.variableDeclarationList:(Ljdk/nashorn/internal/parser/TokenType;ZI)Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
            astore 11 /* varDeclList */
        32: .line 1955
            goto 34
        33: .line 1958
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* init */
        34: .line 1959
      StackMap locals:
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
        35: .line 1962
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 3
                   29: 36
                   77: 57
                  110: 52
              default: 84
          }
        36: .line 1965
      StackMap locals:
      StackMap stack:
            aload 11 /* varDeclList */
            ifnull 43
        37: .line 1966
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 38
            aload 8 /* init */
            ifnull 38
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        38: .line 1967
      StackMap locals:
      StackMap stack:
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.init:Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* init */
        39: .line 1969
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.missingAssignment:Ljdk/nashorn/internal/ir/Expression;
            ifnull 43
        40: .line 1970
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.missingAssignment:Ljdk/nashorn/internal/ir/Expression;
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 42
        41: .line 1971
            aload 0 /* this */
            ldc "missing.const.assignment"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.missingAssignment:Ljdk/nashorn/internal/ir/Expression;
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        42: .line 1973
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "missing.destructuring.assignment"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.missingAssignment:Ljdk/nashorn/internal/ir/Expression;
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        43: .line 1979
      StackMap locals:
      StackMap stack:
            iload 12 /* flags */
            iconst_2
            iand
            ifeq 45
        44: .line 1980
            aload 0 /* this */
            ldc "for.each.without.in"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        45: .line 1983
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        46: .line 1984
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 48
        47: .line 1985
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 9 /* test */
        48: .line 1987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        49: .line 1988
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 85
        50: .line 1989
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 10 /* modify */
        51: .line 1991
            goto 85
        52: .line 1994
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            ifeq 55
            ldc "of"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 55
        53: .line 1995
            iconst_1
            istore 13 /* isForOf */
        54: .line 1997
            goto 57
        55: .line 1998
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        56: .line 1999
            goto 85
        57: .line 2002
      StackMap locals:
      StackMap stack:
            iload 12 /* flags */
            iload 13 /* isForOf */
            ifeq 58
            iconst_4
            goto 59
      StackMap locals:
      StackMap stack: int
        58: iconst_1
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: int int
        59: ior
            istore 12 /* flags */
        60: .line 2003
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:()V
            astore 9 /* test */
        61: .line 2004
            aload 11 /* varDeclList */
            ifnull 72
        62: .line 2006
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.secondBinding:Ljdk/nashorn/internal/ir/Expression;
            ifnull 66
        63: .line 2008
            aload 0 /* this */
            ldc "many.vars.in.for.in.loop"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            iload 13 /* isForOf */
            ifeq 64
            ldc "of"
            goto 65
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int
        64: ldc "in"
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int java.lang.String
        65: aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.secondBinding:Ljdk/nashorn/internal/ir/Expression;
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        66: .line 2010
      StackMap locals:
      StackMap stack:
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.declarationWithInitializerToken:J
            lconst_0
            lcmp
            ifeq 70
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifne 67
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 67
            aload 14 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.VAR:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 67
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.init:Ljdk/nashorn/internal/ir/Expression;
            ifnull 70
        67: .line 2014
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "for.in.loop.initializer"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            iload 13 /* isForOf */
            ifeq 68
            ldc "of"
            goto 69
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int
        68: ldc "in"
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int java.lang.String
        69: aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.declarationWithInitializerToken:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        70: .line 2016
      StackMap locals:
      StackMap stack:
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.firstBinding:Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* init */
        71: .line 2017
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 79
            aload 8 /* init */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifne 79
            aload 0 /* this */
            aload 8 /* init */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifne 79
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        72: .line 2020
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 73
            aload 8 /* init */
            ifnonnull 73
            new java.lang.AssertionError
            dup
            ldc "for..in/of init expression can not be null here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        73: .line 2023
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* init */
            iload 13 /* isForOf */
            ifeq 74
            ldc "for-of iterator"
            goto 75
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression
        74: ldc "for-in iterator"
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression java.lang.String
        75: invokevirtual jdk.nashorn.internal.parser.Parser.checkValidLValue:(Ljdk/nashorn/internal/ir/Expression;Ljava/lang/String;)Z
            ifne 79
        76: .line 2024
            aload 0 /* this */
            ldc "not.lvalue.for.in.loop"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            iload 13 /* isForOf */
            ifeq 77
            ldc "of"
            goto 78
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int
        77: ldc "in"
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int jdk.nashorn.internal.parser.TokenType
      StackMap stack: jdk.nashorn.internal.parser.Parser java.lang.String java.lang.String[] java.lang.String[] int java.lang.String
        78: aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 8 /* init */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        79: .line 2028
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        80: .line 2031
            iload 13 /* isForOf */
            ifeq 81
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            goto 82
      StackMap locals:
      StackMap stack:
        81: aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.JoinPredecessorExpression
        82: astore 10 /* modify */
        83: .line 2032
            goto 85
        84: .line 2035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        85: .line 2039
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        86: .line 2042
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 7 /* body */
        end local 14 // jdk.nashorn.internal.parser.TokenType varType
        87: .line 2043
            goto 106
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int
      StackMap stack: java.lang.Throwable
        88: astore 15
        89: .line 2044
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        90: .line 2046
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLoopNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 94
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top java.lang.Throwable top java.util.Iterator
      StackMap stack:
        91: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 16 /* var */
        start local 16 // jdk.nashorn.internal.ir.Statement var
        92: .line 2047
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 93
            aload 16 /* var */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifne 93
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        93: .line 2048
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top java.lang.Throwable jdk.nashorn.internal.ir.Statement java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 16 /* var */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 16 // jdk.nashorn.internal.ir.Statement var
        94: .line 2046
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top java.lang.Throwable top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 91
        95: .line 2050
            aload 7 /* body */
            ifnull 97
        96: .line 2051
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ForNode
            dup
            iload 3 /* forLine */
            lload 1 /* forToken */
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
            aload 7 /* body */
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLoopNode.getFlags:()I
            iload 12 /* flags */
            ior
            aload 8 /* init */
            aload 9 /* test */
            aload 10 /* modify */
            invokespecial jdk.nashorn.internal.ir.ForNode.<init>:(IJILjdk/nashorn/internal/ir/Block;ILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        97: .line 2053
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top java.lang.Throwable
      StackMap stack:
            aload 5 /* outer */
            ifnull 105
        98: .line 2054
            aload 0 /* this */
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        99: .line 2055
            aload 7 /* body */
            ifnull 105
       100: .line 2056
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 3 /* forLine */
            new jdk.nashorn.internal.ir.Block
            dup
       101: .line 2057
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
       102: .line 2058
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
       103: .line 2059
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JILjava/util/List;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
       104: .line 2056
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
       105: .line 2062
      StackMap locals:
      StackMap stack:
            aload 15
            athrow
       106: .line 2044
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
       107: .line 2046
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLoopNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 111
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top top top java.util.Iterator
      StackMap stack:
       108: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 16 /* var */
        start local 16 // jdk.nashorn.internal.ir.Statement var
       109: .line 2047
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 110
            aload 16 /* var */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifne 110
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       110: .line 2048
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top top jdk.nashorn.internal.ir.Statement java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 16 /* var */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 16 // jdk.nashorn.internal.ir.Statement var
       111: .line 2046
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int top top top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 108
       112: .line 2050
            aload 7 /* body */
            ifnull 114
       113: .line 2051
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ForNode
            dup
            iload 3 /* forLine */
            lload 1 /* forToken */
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
            aload 7 /* body */
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLoopNode.getFlags:()I
            iload 12 /* flags */
            ior
            aload 8 /* init */
            aload 9 /* test */
            aload 10 /* modify */
            invokespecial jdk.nashorn.internal.ir.ForNode.<init>:(IJILjdk/nashorn/internal/ir/Block;ILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
       114: .line 2053
      StackMap locals: jdk.nashorn.internal.parser.Parser long int int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult int int
      StackMap stack:
            aload 5 /* outer */
            ifnull 122
       115: .line 2054
            aload 0 /* this */
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
       116: .line 2055
            aload 7 /* body */
            ifnull 122
       117: .line 2056
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 3 /* forLine */
            new jdk.nashorn.internal.ir.Block
            dup
       118: .line 2057
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
       119: .line 2058
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
       120: .line 2059
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JILjava/util/List;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
       121: .line 2056
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
       122: .line 2063
      StackMap locals:
      StackMap stack:
            return
        end local 13 // boolean isForOf
        end local 12 // int flags
        end local 11 // jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult varDeclList
        end local 10 // jdk.nashorn.internal.ir.JoinPredecessorExpression modify
        end local 9 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
        end local 8 // jdk.nashorn.internal.ir.Expression init
        end local 7 // jdk.nashorn.internal.ir.Block body
        end local 6 // jdk.nashorn.internal.parser.ParserContextLoopNode forNode
        end local 5 // jdk.nashorn.internal.parser.ParserContextBlockNode outer
        end local 4 // int forStart
        end local 3 // int forLine
        end local 1 // long forToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  123     0         this  Ljdk/nashorn/internal/parser/Parser;
            1  123     1     forToken  J
            2  123     3      forLine  I
            3  123     4     forStart  I
            6  123     5        outer  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            7  123     6      forNode  Ljdk/nashorn/internal/parser/ParserContextLoopNode;
            9  123     7         body  Ljdk/nashorn/internal/ir/Block;
           10  123     8         init  Ljdk/nashorn/internal/ir/Expression;
           11  123     9         test  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
           12  123    10       modify  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
           13  123    11  varDeclList  Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
           14  123    12        flags  I
           15  123    13      isForOf  Z
           21   87    14      varType  Ljdk/nashorn/internal/parser/TokenType;
           92   94    16          var  Ljdk/nashorn/internal/ir/Statement;
          109  111    16          var  Ljdk/nashorn/internal/ir/Statement;
      Exception table:
        from    to  target  type
          15    88      88  any

  private boolean checkValidLValue(jdk.nashorn.internal.ir.Expression, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression init
        start local 2 // java.lang.String contextString
         0: .line 2066
            aload 1 /* init */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 5
         1: .line 2067
            aload 1 /* init */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokestatic jdk.nashorn.internal.parser.Parser.checkIdentLValue:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifne 3
         2: .line 2068
            iconst_0
            ireturn
         3: .line 2070
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* init */
            checkcast jdk.nashorn.internal.ir.IdentNode
            aload 2 /* contextString */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         4: .line 2071
            iconst_1
            ireturn
         5: .line 2072
      StackMap locals:
      StackMap stack:
            aload 1 /* init */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifne 6
            aload 1 /* init */
            instanceof jdk.nashorn.internal.ir.IndexNode
            ifeq 7
         6: .line 2073
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         7: .line 2074
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* init */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifeq 10
         8: .line 2075
            aload 0 /* this */
            aload 1 /* init */
            aload 2 /* contextString */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringAssignmentPattern:(Ljdk/nashorn/internal/ir/Expression;Ljava/lang/String;)V
         9: .line 2076
            iconst_1
            ireturn
        10: .line 2078
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.String contextString
        end local 1 // jdk.nashorn.internal.ir.Expression init
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   11     1           init  Ljdk/nashorn/internal/ir/Expression;
            0   11     2  contextString  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      init           final
      contextString  final

  private boolean lookaheadIsLetDeclaration(boolean);
    descriptor: (Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean ofContextualKeyword
         0: .line 2084
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2085
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         2: .line 2086
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iload 2 /* i */
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            astore 3 /* t */
        start local 3 // jdk.nashorn.internal.parser.TokenType t
         3: .line 2087
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 3 /* t */
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 5
                    3: 4
                    4: 4
                   45: 7
                   49: 7
                  110: 5
              default: 8
          }
         4: .line 2090
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            goto 11
         5: .line 2092
      StackMap locals:
      StackMap stack:
            iload 1 /* ofContextualKeyword */
            ifeq 7
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 7
            ldc "of"
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iload 2 /* i */
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.getToken:(I)J
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:(J)Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 2093
            iconst_0
            ireturn
         7: .line 2098
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 2101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifne 10
            aload 3 /* t */
            invokevirtual jdk.nashorn.internal.parser.TokenType.getKind:()Ljdk/nashorn/internal/parser/TokenKind;
            getstatic jdk.nashorn.internal.parser.TokenKind.FUTURESTRICT:Ljdk/nashorn/internal/parser/TokenKind;
            if_acmpne 10
         9: .line 2102
            iconst_1
            ireturn
        10: .line 2104
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // jdk.nashorn.internal.parser.TokenType t
        11: .line 2085
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
            goto 2
        end local 2 // int i
        end local 1 // boolean ofContextualKeyword
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   12     0                 this  Ljdk/nashorn/internal/parser/Parser;
            0   12     1  ofContextualKeyword  Z
            2   12     2                    i  I
            3   11     3                    t  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
                     Name  Flags
      ofContextualKeyword  final

  private void whileStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=8, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2121
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* whileToken */
        start local 1 // long whileToken
         1: .line 2122
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* whileLine */
        start local 3 // int whileLine
         2: .line 2124
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2126
            new jdk.nashorn.internal.parser.ParserContextLoopNode
            dup
            invokespecial jdk.nashorn.internal.parser.ParserContextLoopNode.<init>:()V
            astore 4 /* whileNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLoopNode whileNode
         4: .line 2127
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* whileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         5: .line 2129
            aconst_null
            astore 5 /* test */
        start local 5 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
         6: .line 2130
            aconst_null
            astore 6 /* body */
        start local 6 // jdk.nashorn.internal.ir.Block body
         7: .line 2133
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         8: .line 2134
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 5 /* test */
         9: .line 2135
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        10: .line 2136
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 6 /* body */
        11: .line 2137
            goto 15
      StackMap locals: jdk.nashorn.internal.parser.Parser long int jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.JoinPredecessorExpression jdk.nashorn.internal.ir.Block
      StackMap stack: java.lang.Throwable
        12: astore 7
        13: .line 2138
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* whileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        14: .line 2139
            aload 7
            athrow
        15: .line 2138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* whileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        16: .line 2141
            aload 6 /* body */
            ifnull 18
        17: .line 2142
            aload 0 /* this */
            new jdk.nashorn.internal.ir.WhileNode
            dup
            iload 3 /* whileLine */
            lload 1 /* whileToken */
            aload 6 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
            iconst_0
            aload 5 /* test */
            aload 6 /* body */
            invokespecial jdk.nashorn.internal.ir.WhileNode.<init>:(IJIZLjdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        18: .line 2144
      StackMap locals:
      StackMap stack:
            return
        end local 6 // jdk.nashorn.internal.ir.Block body
        end local 5 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
        end local 4 // jdk.nashorn.internal.parser.ParserContextLoopNode whileNode
        end local 3 // int whileLine
        end local 1 // long whileToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   19     1  whileToken  J
            2   19     3   whileLine  I
            4   19     4   whileNode  Ljdk/nashorn/internal/parser/ParserContextLoopNode;
            6   19     5        test  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            7   19     6        body  Ljdk/nashorn/internal/ir/Block;
      Exception table:
        from    to  target  type
           7    12      12  any

  private void doStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=8, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2158
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* doToken */
        start local 1 // long doToken
         1: .line 2159
            iconst_0
            istore 3 /* doLine */
        start local 3 // int doLine
         2: .line 2161
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2163
            new jdk.nashorn.internal.parser.ParserContextLoopNode
            dup
            invokespecial jdk.nashorn.internal.parser.ParserContextLoopNode.<init>:()V
            astore 4 /* doWhileNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLoopNode doWhileNode
         4: .line 2164
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* doWhileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         5: .line 2166
            aconst_null
            astore 5 /* body */
        start local 5 // jdk.nashorn.internal.ir.Block body
         6: .line 2167
            aconst_null
            astore 6 /* test */
        start local 6 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
         7: .line 2171
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 5 /* body */
         8: .line 2173
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.WHILE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         9: .line 2174
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        10: .line 2175
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* doLine */
        11: .line 2176
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 6 /* test */
        12: .line 2177
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        13: .line 2179
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 19
        14: .line 2180
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        15: .line 2182
            goto 19
      StackMap locals: jdk.nashorn.internal.parser.Parser long int jdk.nashorn.internal.parser.ParserContextLoopNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.JoinPredecessorExpression
      StackMap stack: java.lang.Throwable
        16: astore 7
        17: .line 2183
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* doWhileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        18: .line 2184
            aload 7
            athrow
        19: .line 2183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* doWhileNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        20: .line 2186
            aload 0 /* this */
            new jdk.nashorn.internal.ir.WhileNode
            dup
            iload 3 /* doLine */
            lload 1 /* doToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            iconst_1
            aload 6 /* test */
            aload 5 /* body */
            invokespecial jdk.nashorn.internal.ir.WhileNode.<init>:(IJIZLjdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        21: .line 2187
            return
        end local 6 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
        end local 5 // jdk.nashorn.internal.ir.Block body
        end local 4 // jdk.nashorn.internal.parser.ParserContextLoopNode doWhileNode
        end local 3 // int doLine
        end local 1 // long doToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Ljdk/nashorn/internal/parser/Parser;
            1   22     1      doToken  J
            2   22     3       doLine  I
            4   22     4  doWhileNode  Ljdk/nashorn/internal/parser/ParserContextLoopNode;
            6   22     5         body  Ljdk/nashorn/internal/ir/Block;
            7   22     6         test  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
      Exception table:
        from    to  target  type
           7    16      16  any

  private void continueStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2199
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* continueLine */
        start local 1 // int continueLine
         1: .line 2200
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* continueToken */
        start local 2 // long continueToken
         2: .line 2202
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2204
            aconst_null
            astore 4 /* labelNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
         4: .line 2207
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    2: 5
                    3: 5
                   29: 5
                   53: 5
              default: 6
          }
         5: .line 2212
      StackMap locals: int long jdk.nashorn.internal.parser.ParserContextLabelNode
      StackMap stack:
            goto 10
         6: .line 2215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
         7: .line 2216
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.findLabel:(Ljava/lang/String;)Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            astore 4 /* labelNode */
         8: .line 2218
            aload 4 /* labelNode */
            ifnonnull 10
         9: .line 2219
            aload 0 /* this */
            ldc "undefined.label"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        10: .line 2225
      StackMap locals:
      StackMap stack:
            aload 4 /* labelNode */
            ifnonnull 11
            aconst_null
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 4 /* labelNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLabelNode.getLabelName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        12: astore 5 /* labelName */
        start local 5 // java.lang.String labelName
        13: .line 2226
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* labelName */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getContinueTo:(Ljava/lang/String;)Ljdk/nashorn/internal/parser/ParserContextLoopNode;
            astore 6 /* targetNode */
        start local 6 // jdk.nashorn.internal.parser.ParserContextLoopNode targetNode
        14: .line 2228
            aload 6 /* targetNode */
            ifnonnull 16
        15: .line 2229
            aload 0 /* this */
            ldc "illegal.continue.stmt"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 2 /* continueToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        16: .line 2232
      StackMap locals: java.lang.String jdk.nashorn.internal.parser.ParserContextLoopNode
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        17: .line 2235
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ContinueNode
            dup
            iload 1 /* continueLine */
            lload 2 /* continueToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 5 /* labelName */
            invokespecial jdk.nashorn.internal.ir.ContinueNode.<init>:(IJILjava/lang/String;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        18: .line 2236
            return
        end local 6 // jdk.nashorn.internal.parser.ParserContextLoopNode targetNode
        end local 5 // java.lang.String labelName
        end local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
        end local 2 // long continueToken
        end local 1 // int continueLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   19     0           this  Ljdk/nashorn/internal/parser/Parser;
            1   19     1   continueLine  I
            2   19     2  continueToken  J
            4   19     4      labelNode  Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            7   10     5          ident  Ljdk/nashorn/internal/ir/IdentNode;
           13   19     5      labelName  Ljava/lang/String;
           14   19     6     targetNode  Ljdk/nashorn/internal/parser/ParserContextLoopNode;

  private void breakStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2247
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* breakLine */
        start local 1 // int breakLine
         1: .line 2248
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* breakToken */
        start local 2 // long breakToken
         2: .line 2250
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2252
            aconst_null
            astore 4 /* labelNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
         4: .line 2255
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    2: 5
                    3: 5
                   29: 5
                   53: 5
              default: 6
          }
         5: .line 2260
      StackMap locals: int long jdk.nashorn.internal.parser.ParserContextLabelNode
      StackMap stack:
            goto 10
         6: .line 2263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
         7: .line 2264
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.findLabel:(Ljava/lang/String;)Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            astore 4 /* labelNode */
         8: .line 2266
            aload 4 /* labelNode */
            ifnonnull 10
         9: .line 2267
            aload 0 /* this */
            ldc "undefined.label"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        10: .line 2275
      StackMap locals:
      StackMap stack:
            aload 4 /* labelNode */
            ifnonnull 11
            aconst_null
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 4 /* labelNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLabelNode.getLabelName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        12: astore 5 /* labelName */
        start local 5 // java.lang.String labelName
        13: .line 2276
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* labelName */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getBreakable:(Ljava/lang/String;)Ljdk/nashorn/internal/parser/ParserContextBreakableNode;
            astore 6 /* targetNode */
        start local 6 // jdk.nashorn.internal.parser.ParserContextBreakableNode targetNode
        14: .line 2277
            aload 6 /* targetNode */
            ifnonnull 16
        15: .line 2278
            aload 0 /* this */
            ldc "illegal.break.stmt"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 2 /* breakToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        16: .line 2281
      StackMap locals: java.lang.String jdk.nashorn.internal.parser.ParserContextBreakableNode
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        17: .line 2284
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BreakNode
            dup
            iload 1 /* breakLine */
            lload 2 /* breakToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 5 /* labelName */
            invokespecial jdk.nashorn.internal.ir.BreakNode.<init>:(IJILjava/lang/String;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        18: .line 2285
            return
        end local 6 // jdk.nashorn.internal.parser.ParserContextBreakableNode targetNode
        end local 5 // java.lang.String labelName
        end local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
        end local 2 // long breakToken
        end local 1 // int breakLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   19     1   breakLine  I
            2   19     2  breakToken  J
            4   19     4   labelNode  Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            7   10     5       ident  Ljdk/nashorn/internal/ir/IdentNode;
           13   19     5   labelName  Ljava/lang/String;
           14   19     6  targetNode  Ljdk/nashorn/internal/parser/ParserContextBreakableNode;

  private void returnStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2297
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SCRIPT:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.MODULE:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpne 2
         1: .line 2298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "invalid.return"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         2: .line 2302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* returnLine */
        start local 1 // int returnLine
         3: .line 2303
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* returnToken */
        start local 2 // long returnToken
         4: .line 2305
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         5: .line 2307
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         6: .line 2310
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    2: 7
                    3: 7
                   29: 7
                   53: 7
              default: 8
          }
         7: .line 2315
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
            goto 9
         8: .line 2318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
         9: .line 2322
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        10: .line 2325
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ReturnNode
            dup
            iload 1 /* returnLine */
            lload 2 /* returnToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* expression */
            invokespecial jdk.nashorn.internal.ir.ReturnNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        11: .line 2326
            return
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long returnToken
        end local 1 // int returnLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Ljdk/nashorn/internal/parser/Parser;
            3   12     1   returnLine  I
            4   12     2  returnToken  J
            6   12     4   expression  Ljdk/nashorn/internal/ir/Expression;

  private jdk.nashorn.internal.ir.Expression yieldExpression(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean noIn
         0: .line 2338
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.inGeneratorFunction:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* yieldToken */
        start local 2 // long yieldToken
         2: .line 2342
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2343
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 2345
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         5: .line 2347
            iconst_0
            istore 5 /* yieldAsterisk */
        start local 5 // boolean yieldAsterisk
         6: .line 2348
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 10
         7: .line 2349
            iconst_1
            istore 5 /* yieldAsterisk */
         8: .line 2350
            lload 2 /* yieldToken */
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD_STAR:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            lstore 2 /* yieldToken */
         9: .line 2351
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 2354
      StackMap locals: jdk.nashorn.internal.ir.Expression int
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 8
                    2: 11
                    3: 11
                   15: 11
                   21: 11
                   28: 11
                   29: 11
                   46: 11
                   53: 11
              default: 16
          }
        11: .line 2363
      StackMap locals:
      StackMap stack:
            iload 5 /* yieldAsterisk */
            ifne 16
        12: .line 2365
            lload 2 /* yieldToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.parser.Parser.newUndefinedLiteral:(JI)Ljdk/nashorn/internal/ir/UnaryNode;
            astore 4 /* expression */
        13: .line 2366
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 17
        14: .line 2367
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        15: .line 2369
            goto 17
        16: .line 2375
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
        17: .line 2380
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 2 /* yieldToken */
            aload 4 /* expression */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 5 // boolean yieldAsterisk
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long yieldToken
        end local 1 // boolean noIn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   18     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   18     1           noIn  Z
            2   18     2     yieldToken  J
            5   18     4     expression  Ljdk/nashorn/internal/ir/Expression;
            6   18     5  yieldAsterisk  Z
    MethodParameters:
      Name  Flags
      noIn  final

  private static jdk.nashorn.internal.ir.UnaryNode newUndefinedLiteral(long, int);
    descriptor: (JI)Ljdk/nashorn/internal/ir/UnaryNode;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // long token
        start local 2 // int finish
         0: .line 2384
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 0 /* token */
            getstatic jdk.nashorn.internal.parser.TokenType.VOID:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            lload 0 /* token */
            iload 2 /* finish */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/lang/Number;)Ljdk/nashorn/internal/ir/LiteralNode;
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
    MethodParameters:
        Name  Flags
      token   final
      finish  final

  private void withStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2397
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* withLine */
        start local 1 // int withLine
         1: .line 2398
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* withToken */
        start local 2 // long withToken
         2: .line 2400
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2403
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 5
         4: .line 2404
            aload 0 /* this */
            ldc "strict.no.with"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 2 /* withToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         5: .line 2407
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         6: .line 2408
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         7: .line 2409
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         8: .line 2410
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 5 /* body */
        start local 5 // jdk.nashorn.internal.ir.Block body
         9: .line 2412
            aload 0 /* this */
            new jdk.nashorn.internal.ir.WithNode
            dup
            iload 1 /* withLine */
            lload 2 /* withToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* expression */
            aload 5 /* body */
            invokespecial jdk.nashorn.internal.ir.WithNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        10: .line 2413
            return
        end local 5 // jdk.nashorn.internal.ir.Block body
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long withToken
        end local 1 // int withLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   11     1    withLine  I
            2   11     2   withToken  J
            7   11     4  expression  Ljdk/nashorn/internal/ir/Expression;
            9   11     5        body  Ljdk/nashorn/internal/ir/Block;

  private void switchStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=15, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2438
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* switchLine */
        start local 1 // int switchLine
         1: .line 2439
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* switchToken */
        start local 2 // long switchToken
         2: .line 2442
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 4 /* switchBlock */
        start local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode switchBlock
         3: .line 2445
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 2448
            new jdk.nashorn.internal.parser.ParserContextSwitchNode
            dup
            invokespecial jdk.nashorn.internal.parser.ParserContextSwitchNode.<init>:()V
            astore 5 /* switchNode */
        start local 5 // jdk.nashorn.internal.parser.ParserContextSwitchNode switchNode
         5: .line 2449
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* switchNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         6: .line 2451
            aconst_null
            astore 6 /* defaultCase */
        start local 6 // jdk.nashorn.internal.ir.CaseNode defaultCase
         7: .line 2453
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* cases */
        start local 7 // java.util.List cases
         8: .line 2455
            aconst_null
            astore 8 /* expression */
        start local 8 // jdk.nashorn.internal.ir.Expression expression
         9: .line 2458
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        10: .line 2459
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* expression */
        11: .line 2460
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        12: .line 2462
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        13: .line 2465
            goto 31
        14: .line 2467
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextSwitchNode jdk.nashorn.internal.ir.CaseNode java.util.List jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aconst_null
            astore 9 /* caseExpression */
        start local 9 // jdk.nashorn.internal.ir.Expression caseExpression
        15: .line 2468
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 10 /* caseToken */
        start local 10 // long caseToken
        16: .line 2470
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 2
                   57: 17
                   63: 20
              default: 24
          }
        17: .line 2472
      StackMap locals: jdk.nashorn.internal.ir.Expression long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        18: .line 2473
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* caseExpression */
        19: .line 2474
            goto 25
        20: .line 2477
      StackMap locals:
      StackMap stack:
            aload 6 /* defaultCase */
            ifnull 22
        21: .line 2478
            aload 0 /* this */
            ldc "duplicate.default.in.switch"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        22: .line 2480
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        23: .line 2481
            goto 25
        24: .line 2485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.CASE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        25: .line 2489
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        26: .line 2492
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 12 /* statements */
        start local 12 // jdk.nashorn.internal.ir.Block statements
        27: .line 2493
            new jdk.nashorn.internal.ir.CaseNode
            dup
            lload 10 /* caseToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 9 /* caseExpression */
            aload 12 /* statements */
            invokespecial jdk.nashorn.internal.ir.CaseNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Block;)V
            astore 13 /* caseNode */
        start local 13 // jdk.nashorn.internal.ir.CaseNode caseNode
        28: .line 2495
            aload 9 /* caseExpression */
            ifnonnull 30
        29: .line 2496
            aload 13 /* caseNode */
            astore 6 /* defaultCase */
        30: .line 2499
      StackMap locals: jdk.nashorn.internal.ir.Block jdk.nashorn.internal.ir.CaseNode
      StackMap stack:
            aload 7 /* cases */
            aload 13 /* caseNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 13 // jdk.nashorn.internal.ir.CaseNode caseNode
        end local 12 // jdk.nashorn.internal.ir.Block statements
        end local 10 // long caseToken
        end local 9 // jdk.nashorn.internal.ir.Expression caseExpression
        31: .line 2465
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.parser.ParserContextSwitchNode jdk.nashorn.internal.ir.CaseNode java.util.List jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 14
        32: .line 2502
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        33: .line 2503
            goto 38
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 14
        35: .line 2504
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* switchNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        36: .line 2505
            aload 0 /* this */
            aload 4 /* switchBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        37: .line 2506
            aload 14
            athrow
        38: .line 2504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 5 /* switchNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        39: .line 2505
            aload 0 /* this */
            aload 4 /* switchBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        40: .line 2508
            new jdk.nashorn.internal.ir.SwitchNode
            dup
            iload 1 /* switchLine */
            lload 2 /* switchToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 8 /* expression */
            aload 7 /* cases */
            aload 6 /* defaultCase */
            invokespecial jdk.nashorn.internal.ir.SwitchNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Ljdk/nashorn/internal/ir/CaseNode;)V
            astore 9 /* switchStatement */
        start local 9 // jdk.nashorn.internal.ir.SwitchNode switchStatement
        41: .line 2509
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 1 /* switchLine */
            new jdk.nashorn.internal.ir.Block
            dup
            lload 2 /* switchToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* switchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            sipush 128
            ior
            iconst_1
            anewarray jdk.nashorn.internal.ir.Statement
            dup
            iconst_0
            aload 9 /* switchStatement */
            aastore
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JII[Ljdk/nashorn/internal/ir/Statement;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        42: .line 2510
            return
        end local 9 // jdk.nashorn.internal.ir.SwitchNode switchStatement
        end local 8 // jdk.nashorn.internal.ir.Expression expression
        end local 7 // java.util.List cases
        end local 6 // jdk.nashorn.internal.ir.CaseNode defaultCase
        end local 5 // jdk.nashorn.internal.parser.ParserContextSwitchNode switchNode
        end local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode switchBlock
        end local 2 // long switchToken
        end local 1 // int switchLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   43     0             this  Ljdk/nashorn/internal/parser/Parser;
            1   43     1       switchLine  I
            2   43     2      switchToken  J
            3   43     4      switchBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            5   43     5       switchNode  Ljdk/nashorn/internal/parser/ParserContextSwitchNode;
            7   43     6      defaultCase  Ljdk/nashorn/internal/ir/CaseNode;
            8   43     7            cases  Ljava/util/List<Ljdk/nashorn/internal/ir/CaseNode;>;
            9   43     8       expression  Ljdk/nashorn/internal/ir/Expression;
           15   31     9   caseExpression  Ljdk/nashorn/internal/ir/Expression;
           16   31    10        caseToken  J
           27   31    12       statements  Ljdk/nashorn/internal/ir/Block;
           28   31    13         caseNode  Ljdk/nashorn/internal/ir/CaseNode;
           41   43     9  switchStatement  Ljdk/nashorn/internal/ir/SwitchNode;
      Exception table:
        from    to  target  type
           9    34      34  any

  private void labelStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2522
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* labelToken */
        start local 1 // long labelToken
         1: .line 2524
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* ident */
        start local 3 // jdk.nashorn.internal.ir.IdentNode ident
         2: .line 2526
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         3: .line 2528
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 3 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.findLabel:(Ljava/lang/String;)Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            ifnull 5
         4: .line 2529
            aload 0 /* this */
            ldc "duplicate.label"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 1 /* labelToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         5: .line 2532
      StackMap locals: long jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            new jdk.nashorn.internal.parser.ParserContextLabelNode
            dup
            aload 3 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.parser.ParserContextLabelNode.<init>:(Ljava/lang/String;)V
            astore 4 /* labelNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
         6: .line 2533
            aconst_null
            astore 5 /* body */
        start local 5 // jdk.nashorn.internal.ir.Block body
         7: .line 2535
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* labelNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         8: .line 2536
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 5 /* body */
         9: .line 2537
            goto 14
      StackMap locals: jdk.nashorn.internal.parser.Parser long jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextLabelNode jdk.nashorn.internal.ir.Block
      StackMap stack: java.lang.Throwable
        10: astore 6
        11: .line 2538
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 12
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.peek:()Ljdk/nashorn/internal/parser/ParserContextNode;
            instanceof jdk.nashorn.internal.parser.ParserContextLabelNode
            ifne 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 2539
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* labelNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        13: .line 2540
            aload 6
            athrow
        14: .line 2538
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 15
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.peek:()Ljdk/nashorn/internal/parser/ParserContextNode;
            instanceof jdk.nashorn.internal.parser.ParserContextLabelNode
            ifne 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 2539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 4 /* labelNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        16: .line 2542
            aload 0 /* this */
            new jdk.nashorn.internal.ir.LabelNode
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            lload 1 /* labelToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 3 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aload 5 /* body */
            invokespecial jdk.nashorn.internal.ir.LabelNode.<init>:(IJILjava/lang/String;Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        17: .line 2543
            return
        end local 5 // jdk.nashorn.internal.ir.Block body
        end local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
        end local 3 // jdk.nashorn.internal.ir.IdentNode ident
        end local 1 // long labelToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   18     1  labelToken  J
            2   18     3       ident  Ljdk/nashorn/internal/ir/IdentNode;
            6   18     4   labelNode  Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            7   18     5        body  Ljdk/nashorn/internal/ir/Block;
      Exception table:
        from    to  target  type
           7    10      10  any

  private void throwStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2555
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* throwLine */
        start local 1 // int throwLine
         1: .line 2556
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* throwToken */
        start local 2 // long throwToken
         2: .line 2558
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2560
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         4: .line 2563
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 3
                    3: 5
                   29: 5
                   53: 5
              default: 6
          }
         5: .line 2567
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
            goto 7
         6: .line 2570
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
         7: .line 2574
      StackMap locals:
      StackMap stack:
            aload 4 /* expression */
            ifnonnull 9
         8: .line 2575
            aload 0 /* this */
            ldc "expected.operand"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         9: .line 2578
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        10: .line 2580
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ThrowNode
            dup
            iload 1 /* throwLine */
            lload 2 /* throwToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* expression */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.ThrowNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Z)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        11: .line 2581
            return
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long throwToken
        end local 1 // int throwLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   12     1   throwLine  I
            2   12     2  throwToken  J
            4   12     4  expression  Ljdk/nashorn/internal/ir/Expression;

  private void tryStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=19, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2602
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* tryLine */
        start local 1 // int tryLine
         1: .line 2603
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* tryToken */
        start local 2 // long tryToken
         2: .line 2605
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2608
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 4 /* startLine */
        start local 4 // int startLine
         4: .line 2609
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 5 /* outer */
        start local 5 // jdk.nashorn.internal.parser.ParserContextBlockNode outer
         5: .line 2613
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 6 /* tryBody */
        start local 6 // jdk.nashorn.internal.ir.Block tryBody
         6: .line 2614
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* catchBlocks */
        start local 7 // java.util.List catchBlocks
         7: .line 2616
            goto 39
         8: .line 2617
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.ir.Block java.util.List
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 8 /* catchLine */
        start local 8 // int catchLine
         9: .line 2618
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 9 /* catchToken */
        start local 9 // long catchToken
        10: .line 2619
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        11: .line 2620
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        12: .line 2625
            aload 0 /* this */
            ldc "catch argument"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifierOrPattern:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/Expression;
            astore 11 /* exception */
        start local 11 // jdk.nashorn.internal.ir.Expression exception
        13: .line 2626
            aload 11 /* exception */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 14
            iconst_0
            goto 15
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
        14: iconst_1
      StackMap locals:
      StackMap stack: int
        15: istore 12 /* isDestructuring */
        start local 12 // boolean isDestructuring
        16: .line 2627
            iload 12 /* isDestructuring */
            ifeq 19
        17: .line 2628
            aload 0 /* this */
            aload 11 /* exception */
            new jdk.nashorn.internal.parser.Parser$5
            dup
            aload 0 /* this */
            invokespecial jdk.nashorn.internal.parser.Parser$5.<init>:(Ljdk/nashorn/internal/parser/Parser;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringBindingPattern:(Ljdk/nashorn/internal/ir/Expression;Ljava/util/function/Consumer;)V
        18: .line 2634
            goto 20
        19: .line 2636
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 11 /* exception */
            checkcast jdk.nashorn.internal.ir.IdentNode
            ldc "catch argument"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyStrictIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        20: .line 2644
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 24
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IF:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 24
        21: .line 2645
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        22: .line 2647
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 13 /* ifExpression */
        start local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        23: .line 2648
            goto 25
        end local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        24: .line 2649
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* ifExpression */
        start local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        25: .line 2652
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        26: .line 2654
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 14 /* catchBlock */
        start local 14 // jdk.nashorn.internal.parser.ParserContextBlockNode catchBlock
        27: .line 2657
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 15 /* catchBody */
        start local 15 // jdk.nashorn.internal.ir.Block catchBody
        28: .line 2658
            new jdk.nashorn.internal.ir.CatchNode
            dup
            iload 8 /* catchLine */
            lload 9 /* catchToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 11 /* exception */
            aload 13 /* ifExpression */
            aload 15 /* catchBody */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CatchNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Block;Z)V
            astore 16 /* catchNode */
        start local 16 // jdk.nashorn.internal.ir.CatchNode catchNode
        29: .line 2659
            aload 0 /* this */
            aload 16 /* catchNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 16 // jdk.nashorn.internal.ir.CatchNode catchNode
        end local 15 // jdk.nashorn.internal.ir.Block catchBody
        30: .line 2660
            goto 35
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.ir.Block java.util.List int long jdk.nashorn.internal.ir.Expression int jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
        31: astore 17
        32: .line 2661
            aload 0 /* this */
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        33: .line 2662
            aload 7 /* catchBlocks */
            new jdk.nashorn.internal.ir.Block
            dup
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        34: .line 2663
            aload 17
            athrow
        35: .line 2661
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        36: .line 2662
            aload 7 /* catchBlocks */
            new jdk.nashorn.internal.ir.Block
            dup
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            aload 14 /* catchBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        37: .line 2666
            aload 13 /* ifExpression */
            ifnonnull 39
        38: .line 2667
            goto 40
        end local 14 // jdk.nashorn.internal.parser.ParserContextBlockNode catchBlock
        end local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        end local 12 // boolean isDestructuring
        end local 11 // jdk.nashorn.internal.ir.Expression exception
        end local 9 // long catchToken
        end local 8 // int catchLine
        39: .line 2616
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.parser.ParserContextBlockNode jdk.nashorn.internal.ir.Block java.util.List
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.CATCH:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 8
        40: .line 2672
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* finallyStatements */
        start local 8 // jdk.nashorn.internal.ir.Block finallyStatements
        41: .line 2674
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.FINALLY:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 44
        42: .line 2675
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        43: .line 2676
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 8 /* finallyStatements */
        44: .line 2680
      StackMap locals: jdk.nashorn.internal.ir.Block
      StackMap stack:
            aload 7 /* catchBlocks */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 46
            aload 8 /* finallyStatements */
            ifnonnull 46
        45: .line 2681
            aload 0 /* this */
            ldc "missing.catch.or.finally"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 2 /* tryToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        46: .line 2684
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.TryNode
            dup
            iload 1 /* tryLine */
            lload 2 /* tryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 6 /* tryBody */
            aload 7 /* catchBlocks */
            aload 8 /* finallyStatements */
            invokespecial jdk.nashorn.internal.ir.TryNode.<init>:(IJILjdk/nashorn/internal/ir/Block;Ljava/util/List;Ljdk/nashorn/internal/ir/Block;)V
            astore 9 /* tryNode */
        start local 9 // jdk.nashorn.internal.ir.TryNode tryNode
        47: .line 2686
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 48
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.peek:()Ljdk/nashorn/internal/parser/ParserContextNode;
            aload 5 /* outer */
            if_acmpeq 48
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        48: .line 2687
      StackMap locals: jdk.nashorn.internal.ir.TryNode
      StackMap stack:
            aload 0 /* this */
            aload 9 /* tryNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 9 // jdk.nashorn.internal.ir.TryNode tryNode
        end local 8 // jdk.nashorn.internal.ir.Block finallyStatements
        end local 7 // java.util.List catchBlocks
        end local 6 // jdk.nashorn.internal.ir.Block tryBody
        49: .line 2688
            goto 53
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
        50: astore 18
        51: .line 2689
            aload 0 /* this */
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        52: .line 2690
            aload 18
            athrow
        53: .line 2689
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        54: .line 2692
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 4 /* startLine */
            new jdk.nashorn.internal.ir.Block
            dup
            lload 2 /* tryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        55: .line 2693
            return
        end local 5 // jdk.nashorn.internal.parser.ParserContextBlockNode outer
        end local 4 // int startLine
        end local 2 // long tryToken
        end local 1 // int tryLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   56     0               this  Ljdk/nashorn/internal/parser/Parser;
            1   56     1            tryLine  I
            2   56     2           tryToken  J
            4   56     4          startLine  I
            5   56     5              outer  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            6   49     6            tryBody  Ljdk/nashorn/internal/ir/Block;
            7   49     7        catchBlocks  Ljava/util/List<Ljdk/nashorn/internal/ir/Block;>;
            9   39     8          catchLine  I
           10   39     9         catchToken  J
           13   39    11          exception  Ljdk/nashorn/internal/ir/Expression;
           16   39    12    isDestructuring  Z
           23   24    13       ifExpression  Ljdk/nashorn/internal/ir/Expression;
           25   39    13       ifExpression  Ljdk/nashorn/internal/ir/Expression;
           27   39    14         catchBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           28   30    15          catchBody  Ljdk/nashorn/internal/ir/Block;
           29   30    16          catchNode  Ljdk/nashorn/internal/ir/CatchNode;
           41   49     8  finallyStatements  Ljdk/nashorn/internal/ir/Block;
           47   49     9            tryNode  Ljdk/nashorn/internal/ir/TryNode;
      Exception table:
        from    to  target  type
          27    31      31  any
           5    50      50  any

  private void debuggerStatement();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2705
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* debuggerLine */
        start local 1 // int debuggerLine
         1: .line 2706
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* debuggerToken */
        start local 2 // long debuggerToken
         2: .line 2708
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2709
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
         4: .line 2710
            aload 0 /* this */
            new jdk.nashorn.internal.ir.DebuggerNode
            dup
            iload 1 /* debuggerLine */
            lload 2 /* debuggerToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokespecial jdk.nashorn.internal.ir.DebuggerNode.<init>:(IJI)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
         5: .line 2711
            return
        end local 2 // long debuggerToken
        end local 1 // int debuggerLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Ljdk/nashorn/internal/parser/Parser;
            1    6     1   debuggerLine  I
            2    6     2  debuggerToken  J

  private jdk.nashorn.internal.ir.Expression primaryExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2736
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* primaryLine */
        start local 1 // int primaryLine
         1: .line 2737
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* primaryToken */
        start local 2 // long primaryToken
         2: .line 2739
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 21
                   14: 24
                   45: 22
                   49: 23
                   70: 16
                   82: 20
                   91: 3
                   93: 18
                  101: 14
                  102: 14
                  103: 12
                  104: 14
                  105: 14
                  106: 14
                  107: 14
                  108: 14
                  109: 15
                  110: 7
                  111: 14
                  112: 14
                  115: 39
                  116: 39
              default: 40
          }
         3: .line 2741
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         4: .line 2742
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         5: .line 2743
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokestatic jdk.nashorn.internal.parser.Parser.markThis:(Ljdk/nashorn/internal/parser/ParserContext;)V
         6: .line 2744
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* name */
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            areturn
        end local 4 // java.lang.String name
         7: .line 2746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
         8: .line 2747
            aload 5 /* ident */
            ifnonnull 10
         9: .line 2748
            goto 45
        10: .line 2750
      StackMap locals: jdk.nashorn.internal.parser.Parser int long top jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 0 /* this */
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.parser.Parser.detectSpecialProperty:(Ljdk/nashorn/internal/ir/IdentNode;)V
        11: .line 2751
            aload 5 /* ident */
            areturn
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        12: .line 2753
      StackMap locals: jdk.nashorn.internal.parser.Parser int long
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 14
        13: .line 2754
            aload 0 /* this */
            ldc "strict.no.octal"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        14: .line 2765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        15: .line 2767
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* primaryLine */
            lload 2 /* primaryToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.execString:(IJ)Ljdk/nashorn/internal/ir/CallNode;
            areturn
        16: .line 2769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        17: .line 2770
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            iconst_0
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JIZ)Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        18: .line 2772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        19: .line 2773
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            iconst_1
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JIZ)Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        20: .line 2775
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        21: .line 2776
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JI)Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        22: .line 2778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.arrayLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        23: .line 2780
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.objectLiteral:()Ljdk/nashorn/internal/ir/ObjectNode;
            areturn
        24: .line 2782
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        25: .line 2784
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 36
        26: .line 2785
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 30
        27: .line 2787
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        28: .line 2788
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        29: .line 2789
            new jdk.nashorn.internal.ir.ExpressionList
            dup
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.ExpressionList.<init>:(JILjava/util/List;)V
            areturn
        30: .line 2790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 36
        31: .line 2792
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Z)Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 6 /* restParam */
        start local 6 // jdk.nashorn.internal.ir.IdentNode restParam
        32: .line 2793
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        33: .line 2794
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        34: .line 2795
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        35: .line 2796
            new jdk.nashorn.internal.ir.ExpressionList
            dup
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 6 /* restParam */
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.ExpressionList.<init>:(JILjava/util/List;)V
            areturn
        end local 6 // jdk.nashorn.internal.ir.IdentNode restParam
        36: .line 2800
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 6 /* expression */
        start local 6 // jdk.nashorn.internal.ir.Expression expression
        37: .line 2802
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        38: .line 2804
            aload 6 /* expression */
            areturn
        end local 6 // jdk.nashorn.internal.ir.Expression expression
        39: .line 2807
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.templateLiteral:()Ljdk/nashorn/internal/ir/Expression;
            areturn
        40: .line 2811
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lineInfoReceiver:Ljdk/nashorn/internal/parser/Lexer$LineInfoReceiver;
            invokevirtual jdk.nashorn.internal.parser.Lexer.scanLiteral:(JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/parser/Lexer$LineInfoReceiver;)Z
            ifeq 43
        41: .line 2812
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        42: .line 2813
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        43: .line 2815
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            ifeq 45
        44: .line 2816
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            areturn
        45: .line 2821
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // long primaryToken
        end local 1 // int primaryLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   46     0          this  Ljdk/nashorn/internal/parser/Parser;
            1   46     1   primaryLine  I
            2   46     2  primaryToken  J
            4    7     4          name  Ljava/lang/String;
            8   12     5         ident  Ljdk/nashorn/internal/ir/IdentNode;
           32   36     6     restParam  Ljdk/nashorn/internal/ir/IdentNode;
           37   39     6    expression  Ljdk/nashorn/internal/ir/Expression;

  jdk.nashorn.internal.ir.CallNode execString(int, long);
    descriptor: (IJ)Ljdk/nashorn/internal/ir/CallNode;
    flags: (0x0000) 
    Code:
      stack=9, locals=6, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int primaryLine
        start local 2 // long primaryToken
         0: .line 2832
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "$EXEC"
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 4 /* execIdent */
        start local 4 // jdk.nashorn.internal.ir.IdentNode execIdent
         1: .line 2834
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2837
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         3: .line 2839
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 5 /* arguments */
        start local 5 // java.util.List arguments
         4: .line 2841
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         5: .line 2843
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 1 /* primaryLine */
            lload 2 /* primaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* execIdent */
            aload 5 /* arguments */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            areturn
        end local 5 // java.util.List arguments
        end local 4 // jdk.nashorn.internal.ir.IdentNode execIdent
        end local 2 // long primaryToken
        end local 1 // int primaryLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Ljdk/nashorn/internal/parser/Parser;
            0    6     1   primaryLine  I
            0    6     2  primaryToken  J
            1    6     4     execIdent  Ljdk/nashorn/internal/ir/IdentNode;
            4    6     5     arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
    MethodParameters:
              Name  Flags
      primaryLine   final
      primaryToken  final

  private jdk.nashorn.internal.ir.LiteralNode<jdk.nashorn.internal.ir.Expression[]> arrayLiteral();
    descriptor: ()Ljdk/nashorn/internal/ir/LiteralNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2869
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* arrayToken */
        start local 1 // long arrayToken
         1: .line 2871
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2874
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* elements */
        start local 3 // java.util.List elements
         3: .line 2876
            iconst_1
            istore 4 /* elision */
        start local 4 // boolean elision
         4: .line 2877
            iconst_0
            istore 5 /* hasSpread */
        start local 5 // boolean hasSpread
         5: .line 2880
      StackMap locals: jdk.nashorn.internal.parser.Parser long java.util.List int int
      StackMap stack:
            lconst_0
            lstore 6 /* spreadToken */
        start local 6 // long spreadToken
         6: .line 2881
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 3
                   21: 9
                   46: 7
                   55: 14
              default: 18
          }
         7: .line 2883
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 2885
            goto 29
         9: .line 2888
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 2891
            iload 4 /* elision */
            ifeq 12
        11: .line 2892
            aload 3 /* elements */
            aconst_null
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 2895
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* elision */
        13: .line 2897
            goto 5
        14: .line 2900
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 18
        15: .line 2901
            iconst_1
            istore 5 /* hasSpread */
        16: .line 2902
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* spreadToken */
        17: .line 2903
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        18: .line 2908
      StackMap locals:
      StackMap stack:
            iload 4 /* elision */
            ifne 20
        19: .line 2909
            aload 0 /* this */
            ldc "expected.comma"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        20: .line 2913
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* expression */
        start local 8 // jdk.nashorn.internal.ir.Expression expression
        21: .line 2914
            aload 8 /* expression */
            ifnull 26
        22: .line 2915
            lload 6 /* spreadToken */
            lconst_0
            lcmp
            ifeq 24
        23: .line 2916
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 6 /* spreadToken */
            getstatic jdk.nashorn.internal.parser.TokenType.SPREAD_ARRAY:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 8 /* expression */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            astore 8 /* expression */
        24: .line 2918
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 3 /* elements */
            aload 8 /* expression */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 2919
            goto 27
        26: .line 2920
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        27: .line 2923
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* elision */
        end local 8 // jdk.nashorn.internal.ir.Expression expression
        end local 6 // long spreadToken
        28: .line 2879
            goto 5
        29: .line 2928
      StackMap locals:
      StackMap stack:
            lload 1 /* arrayToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 3 /* elements */
            iload 5 /* hasSpread */
            iload 4 /* elision */
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/util/List;ZZ)Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        end local 5 // boolean hasSpread
        end local 4 // boolean elision
        end local 3 // java.util.List elements
        end local 1 // long arrayToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   30     0         this  Ljdk/nashorn/internal/parser/Parser;
            1   30     1   arrayToken  J
            3   30     3     elements  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
            4   30     4      elision  Z
            5   30     5    hasSpread  Z
            6   28     6  spreadToken  J
           21   28     8   expression  Ljdk/nashorn/internal/ir/Expression;
    Signature: ()Ljdk/nashorn/internal/ir/LiteralNode<[Ljdk/nashorn/internal/ir/Expression;>;

  private jdk.nashorn.internal.ir.ObjectNode objectLiteral();
    descriptor: ()Ljdk/nashorn/internal/ir/ObjectNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=16, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 2947
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* objectToken */
        start local 1 // long objectToken
         1: .line 2949
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2953
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* elements */
        start local 3 // java.util.List elements
         3: .line 2954
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.Map map
         4: .line 2957
            iconst_1
            istore 5 /* commaSeen */
        start local 5 // boolean commaSeen
         5: .line 2960
      StackMap locals: jdk.nashorn.internal.parser.Parser long java.util.List java.util.Map int
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 2
                   21: 8
                   53: 6
              default: 13
          }
         6: .line 2962
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 2963
            goto 51
         8: .line 2966
      StackMap locals:
      StackMap stack:
            iload 5 /* commaSeen */
            ifeq 10
         9: .line 2967
            aload 0 /* this */
            ldc "expected.property.id"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        10: .line 2969
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        11: .line 2970
            iconst_1
            istore 5 /* commaSeen */
        12: .line 2971
            goto 5
        13: .line 2974
      StackMap locals:
      StackMap stack:
            iload 5 /* commaSeen */
            ifne 15
        14: .line 2975
            aload 0 /* this */
            ldc "expected.comma"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        15: .line 2978
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* commaSeen */
        16: .line 2980
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyAssignment:()Ljdk/nashorn/internal/ir/PropertyNode;
            astore 6 /* property */
        start local 6 // jdk.nashorn.internal.ir.PropertyNode property
        17: .line 2982
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.isComputed:()Z
            ifeq 20
        18: .line 2983
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 2984
            goto 5
        20: .line 2987
      StackMap locals: jdk.nashorn.internal.ir.PropertyNode
      StackMap stack:
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            astore 7 /* key */
        start local 7 // java.lang.String key
        21: .line 2988
            aload 4 /* map */
            aload 7 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 8 /* existing */
        start local 8 // java.lang.Integer existing
        22: .line 2990
            aload 8 /* existing */
            ifnonnull 26
        23: .line 2991
            aload 4 /* map */
            aload 7 /* key */
            aload 3 /* elements */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 2992
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 2993
            goto 5
        26: .line 2996
      StackMap locals: java.lang.String java.lang.Integer
      StackMap stack:
            aload 3 /* elements */
            aload 8 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.PropertyNode
            astore 9 /* existingProperty */
        start local 9 // jdk.nashorn.internal.ir.PropertyNode existingProperty
        27: .line 3000
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getValue:()Ljdk/nashorn/internal/ir/Expression;
            astore 10 /* value */
        start local 10 // jdk.nashorn.internal.ir.Expression value
        28: .line 3001
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getGetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 11 /* getter */
        start local 11 // jdk.nashorn.internal.ir.FunctionNode getter
        29: .line 3002
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getSetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 12 /* setter */
        start local 12 // jdk.nashorn.internal.ir.FunctionNode setter
        30: .line 3004
            aload 9 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getValue:()Ljdk/nashorn/internal/ir/Expression;
            astore 13 /* prevValue */
        start local 13 // jdk.nashorn.internal.ir.Expression prevValue
        31: .line 3005
            aload 9 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getGetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 14 /* prevGetter */
        start local 14 // jdk.nashorn.internal.ir.FunctionNode prevGetter
        32: .line 3006
            aload 9 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getSetter:()Ljdk/nashorn/internal/ir/FunctionNode;
            astore 15 /* prevSetter */
        start local 15 // jdk.nashorn.internal.ir.FunctionNode prevSetter
        33: .line 3008
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifne 36
        34: .line 3009
            aload 0 /* this */
            aload 6 /* property */
            aload 10 /* value */
            aload 11 /* getter */
            aload 12 /* setter */
            aload 13 /* prevValue */
            aload 14 /* prevGetter */
            aload 15 /* prevSetter */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkPropertyRedefinition:(Ljdk/nashorn/internal/ir/PropertyNode;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;)V
        35: .line 3010
            goto 39
        36: .line 3011
      StackMap locals: jdk.nashorn.internal.parser.Parser long java.util.List java.util.Map int jdk.nashorn.internal.ir.PropertyNode java.lang.String java.lang.Integer jdk.nashorn.internal.ir.PropertyNode jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.FunctionNode jdk.nashorn.internal.ir.FunctionNode jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.FunctionNode jdk.nashorn.internal.ir.FunctionNode
      StackMap stack:
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKey:()Ljdk/nashorn/internal/ir/Expression;
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 39
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKey:()Ljdk/nashorn/internal/ir/Expression;
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isProtoPropertyName:()Z
            ifeq 39
        37: .line 3012
            aload 9 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKey:()Ljdk/nashorn/internal/ir/Expression;
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 39
            aload 9 /* existingProperty */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKey:()Ljdk/nashorn/internal/ir/Expression;
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isProtoPropertyName:()Z
            ifeq 39
        38: .line 3013
            aload 0 /* this */
            ldc "multiple.proto.key"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        39: .line 3017
      StackMap locals:
      StackMap stack:
            aload 10 /* value */
            ifnonnull 40
            aload 13 /* prevValue */
            ifnull 43
        40: .line 3018
      StackMap locals:
      StackMap stack:
            aload 4 /* map */
            aload 7 /* key */
            aload 3 /* elements */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 3019
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        42: .line 3020
            goto 5
      StackMap locals:
      StackMap stack:
        43: aload 11 /* getter */
            ifnull 47
        44: .line 3021
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 45
            aload 14 /* prevGetter */
            ifnonnull 45
            aload 15 /* prevSetter */
            ifnonnull 45
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        45: .line 3022
      StackMap locals:
      StackMap stack:
            aload 3 /* elements */
            aload 8 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            aload 9 /* existingProperty */
            aload 11 /* getter */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.setGetter:(Ljdk/nashorn/internal/ir/FunctionNode;)Ljdk/nashorn/internal/ir/PropertyNode;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        46: .line 3023
            goto 5
      StackMap locals:
      StackMap stack:
        47: aload 12 /* setter */
            ifnull 5
        48: .line 3024
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 49
            aload 14 /* prevGetter */
            ifnonnull 49
            aload 15 /* prevSetter */
            ifnonnull 49
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        49: .line 3025
      StackMap locals:
      StackMap stack:
            aload 3 /* elements */
            aload 8 /* existing */
            invokevirtual java.lang.Integer.intValue:()I
            aload 9 /* existingProperty */
            aload 12 /* setter */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.setSetter:(Ljdk/nashorn/internal/ir/FunctionNode;)Ljdk/nashorn/internal/ir/PropertyNode;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 15 // jdk.nashorn.internal.ir.FunctionNode prevSetter
        end local 14 // jdk.nashorn.internal.ir.FunctionNode prevGetter
        end local 13 // jdk.nashorn.internal.ir.Expression prevValue
        end local 12 // jdk.nashorn.internal.ir.FunctionNode setter
        end local 11 // jdk.nashorn.internal.ir.FunctionNode getter
        end local 10 // jdk.nashorn.internal.ir.Expression value
        end local 9 // jdk.nashorn.internal.ir.PropertyNode existingProperty
        end local 8 // java.lang.Integer existing
        end local 7 // java.lang.String key
        end local 6 // jdk.nashorn.internal.ir.PropertyNode property
        50: .line 2959
            goto 5
        51: .line 3031
      StackMap locals: jdk.nashorn.internal.parser.Parser long java.util.List java.util.Map int
      StackMap stack:
            new jdk.nashorn.internal.ir.ObjectNode
            dup
            lload 1 /* objectToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 3 /* elements */
            invokespecial jdk.nashorn.internal.ir.ObjectNode.<init>:(JILjava/util/List;)V
            areturn
        end local 5 // boolean commaSeen
        end local 4 // java.util.Map map
        end local 3 // java.util.List elements
        end local 1 // long objectToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   52     0              this  Ljdk/nashorn/internal/parser/Parser;
            1   52     1       objectToken  J
            3   52     3          elements  Ljava/util/List<Ljdk/nashorn/internal/ir/PropertyNode;>;
            4   52     4               map  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;
            5   52     5         commaSeen  Z
           17   50     6          property  Ljdk/nashorn/internal/ir/PropertyNode;
           21   50     7               key  Ljava/lang/String;
           22   50     8          existing  Ljava/lang/Integer;
           27   50     9  existingProperty  Ljdk/nashorn/internal/ir/PropertyNode;
           28   50    10             value  Ljdk/nashorn/internal/ir/Expression;
           29   50    11            getter  Ljdk/nashorn/internal/ir/FunctionNode;
           30   50    12            setter  Ljdk/nashorn/internal/ir/FunctionNode;
           31   50    13         prevValue  Ljdk/nashorn/internal/ir/Expression;
           32   50    14        prevGetter  Ljdk/nashorn/internal/ir/FunctionNode;
           33   50    15        prevSetter  Ljdk/nashorn/internal/ir/FunctionNode;

  private void checkPropertyRedefinition(jdk.nashorn.internal.ir.PropertyNode, jdk.nashorn.internal.ir.Expression, jdk.nashorn.internal.ir.FunctionNode, jdk.nashorn.internal.ir.FunctionNode, jdk.nashorn.internal.ir.Expression, jdk.nashorn.internal.ir.FunctionNode, jdk.nashorn.internal.ir.FunctionNode);
    descriptor: (Ljdk/nashorn/internal/ir/PropertyNode;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=8
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.PropertyNode property
        start local 2 // jdk.nashorn.internal.ir.Expression value
        start local 3 // jdk.nashorn.internal.ir.FunctionNode getter
        start local 4 // jdk.nashorn.internal.ir.FunctionNode setter
        start local 5 // jdk.nashorn.internal.ir.Expression prevValue
        start local 6 // jdk.nashorn.internal.ir.FunctionNode prevGetter
        start local 7 // jdk.nashorn.internal.ir.FunctionNode prevSetter
         0: .line 3036
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 2
            aload 2 /* value */
            ifnull 2
            aload 5 /* prevValue */
            ifnull 2
         1: .line 3037
            aload 0 /* this */
            ldc "property.redefinition"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         2: .line 3040
      StackMap locals:
      StackMap stack:
            aload 6 /* prevGetter */
            ifnonnull 3
            aload 7 /* prevSetter */
            ifnonnull 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 8 /* isPrevAccessor */
        start local 8 // boolean isPrevAccessor
         5: .line 3041
            aload 3 /* getter */
            ifnonnull 6
            aload 4 /* setter */
            ifnonnull 6
            iconst_0
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_1
      StackMap locals:
      StackMap stack: int
         7: istore 9 /* isAccessor */
        start local 9 // boolean isAccessor
         8: .line 3044
            aload 5 /* prevValue */
            ifnull 10
            iload 9 /* isAccessor */
            ifeq 10
         9: .line 3045
            aload 0 /* this */
            ldc "property.redefinition"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        10: .line 3049
      StackMap locals: int
      StackMap stack:
            iload 8 /* isPrevAccessor */
            ifeq 12
            aload 2 /* value */
            ifnull 12
        11: .line 3050
            aload 0 /* this */
            ldc "property.redefinition"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        12: .line 3053
      StackMap locals:
      StackMap stack:
            iload 9 /* isAccessor */
            ifeq 16
            iload 8 /* isPrevAccessor */
            ifeq 16
        13: .line 3054
            aload 3 /* getter */
            ifnull 14
            aload 6 /* prevGetter */
            ifnonnull 15
        14: .line 3055
      StackMap locals:
      StackMap stack:
            aload 4 /* setter */
            ifnull 16
            aload 7 /* prevSetter */
            ifnull 16
        15: .line 3056
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "property.redefinition"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getKeyName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        16: .line 3059
      StackMap locals:
      StackMap stack:
            return
        end local 9 // boolean isAccessor
        end local 8 // boolean isPrevAccessor
        end local 7 // jdk.nashorn.internal.ir.FunctionNode prevSetter
        end local 6 // jdk.nashorn.internal.ir.FunctionNode prevGetter
        end local 5 // jdk.nashorn.internal.ir.Expression prevValue
        end local 4 // jdk.nashorn.internal.ir.FunctionNode setter
        end local 3 // jdk.nashorn.internal.ir.FunctionNode getter
        end local 2 // jdk.nashorn.internal.ir.Expression value
        end local 1 // jdk.nashorn.internal.ir.PropertyNode property
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   17     1        property  Ljdk/nashorn/internal/ir/PropertyNode;
            0   17     2           value  Ljdk/nashorn/internal/ir/Expression;
            0   17     3          getter  Ljdk/nashorn/internal/ir/FunctionNode;
            0   17     4          setter  Ljdk/nashorn/internal/ir/FunctionNode;
            0   17     5       prevValue  Ljdk/nashorn/internal/ir/Expression;
            0   17     6      prevGetter  Ljdk/nashorn/internal/ir/FunctionNode;
            0   17     7      prevSetter  Ljdk/nashorn/internal/ir/FunctionNode;
            5   17     8  isPrevAccessor  Z
            8   17     9      isAccessor  Z
    MethodParameters:
            Name  Flags
      property    final
      value       final
      getter      final
      setter      final
      prevValue   final
      prevGetter  final
      prevSetter  final

  private jdk.nashorn.internal.ir.PropertyKey literalPropertyName();
    descriptor: ()Ljdk/nashorn/internal/ir/PropertyKey;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3071
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            tableswitch { // 101 - 110
                  101: 4
                  102: 4
                  103: 2
                  104: 4
                  105: 4
                  106: 4
                  107: 4
                  108: 4
                  109: 5
                  110: 1
              default: 5
          }
         1: .line 3073
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsPropertyName:()Ljdk/nashorn/internal/ir/IdentNode;
            areturn
         2: .line 3075
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 4
         3: .line 3076
            aload 0 /* this */
            ldc "strict.no.octal"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         4: .line 3085
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
         5: .line 3087
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsPropertyName:()Ljdk/nashorn/internal/ir/IdentNode;
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Expression computedPropertyName();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3098
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         1: .line 3099
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 1 /* expression */
        start local 1 // jdk.nashorn.internal.ir.Expression expression
         2: .line 3100
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         3: .line 3101
            aload 1 /* expression */
            areturn
        end local 1 // jdk.nashorn.internal.ir.Expression expression
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Ljdk/nashorn/internal/parser/Parser;
            2    4     1  expression  Ljdk/nashorn/internal/ir/Expression;

  private jdk.nashorn.internal.ir.Expression propertyName();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3112
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 2
         1: .line 3113
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.computedPropertyName:()Ljdk/nashorn/internal/ir/Expression;
            areturn
         2: .line 3115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.literalPropertyName:()Ljdk/nashorn/internal/ir/PropertyKey;
            checkcast jdk.nashorn.internal.ir.Expression
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.PropertyNode propertyAssignment();
    descriptor: ()Ljdk/nashorn/internal/ir/PropertyNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=14, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3140
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* propertyToken */
        start local 1 // long propertyToken
         1: .line 3141
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* functionLine */
        start local 3 // int functionLine
         2: .line 3146
            iconst_0
            istore 6 /* generator */
        start local 6 // boolean generator
         3: .line 3147
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 6
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 6
         4: .line 3148
            iconst_1
            istore 6 /* generator */
         5: .line 3149
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 3152
      StackMap locals: jdk.nashorn.internal.parser.Parser long int top top int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 7
            iconst_1
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 7 /* computed */
        start local 7 // boolean computed
         9: .line 3153
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 26
        10: .line 3155
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectValue:(Ljdk/nashorn/internal/parser/TokenType;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* ident */
        start local 8 // java.lang.String ident
        11: .line 3157
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 20
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 12
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifne 20
        12: .line 3158
      StackMap locals: int java.lang.String
      StackMap stack:
            lload 1 /* propertyToken */
            lstore 9 /* getSetToken */
        start local 9 // long getSetToken
        13: .line 3160
            aload 8 /* ident */
            dup
            astore 11
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
               102230: 14
               113762: 15
              default: 20
          }
      StackMap locals: long java.lang.String
      StackMap stack:
        14: aload 11
            ldc "get"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
            goto 20
      StackMap locals:
      StackMap stack:
        15: aload 11
            ldc "set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 18
            goto 20
        16: .line 3162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 9 /* getSetToken */
            iload 3 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyGetterFunction:(JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            astore 12 /* getter */
        start local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction getter
        17: .line 3163
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 1 /* propertyToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 12 /* getter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            aconst_null
            aload 12 /* getter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            aconst_null
            iconst_0
            aload 12 /* getter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 12 // jdk.nashorn.internal.parser.Parser$PropertyFunction getter
        18: .line 3166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 9 /* getSetToken */
            iload 3 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertySetterFunction:(JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            astore 13 /* setter */
        start local 13 // jdk.nashorn.internal.parser.Parser$PropertyFunction setter
        19: .line 3167
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 1 /* propertyToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 13 /* setter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.key:Ljdk/nashorn/internal/ir/Expression;
            aconst_null
            aconst_null
            aload 13 /* setter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            iconst_0
            aload 13 /* setter */
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.computed:Z
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 13 // jdk.nashorn.internal.parser.Parser$PropertyFunction setter
        end local 9 // long getSetToken
        20: .line 3173
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* isIdentifier */
        start local 5 // boolean isIdentifier
        21: .line 3174
            aload 0 /* this */
            lload 1 /* propertyToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 8 /* ident */
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsPropertyName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* identNode */
        start local 9 // jdk.nashorn.internal.ir.IdentNode identNode
        22: .line 3175
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 24
            aload 8 /* ident */
            ldc "__proto__"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 3176
            aload 9 /* identNode */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsProtoPropertyName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* identNode */
        24: .line 3178
      StackMap locals: jdk.nashorn.internal.parser.Parser long int top int int int java.lang.String jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 9 /* identNode */
            astore 4 /* propertyName */
        end local 9 // jdk.nashorn.internal.ir.IdentNode identNode
        end local 8 // java.lang.String ident
        start local 4 // jdk.nashorn.internal.ir.Expression propertyName
        25: .line 3179
            goto 28
        end local 5 // boolean isIdentifier
        end local 4 // jdk.nashorn.internal.ir.Expression propertyName
        26: .line 3180
      StackMap locals: jdk.nashorn.internal.parser.Parser long int top top int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            istore 5 /* isIdentifier */
        start local 5 // boolean isIdentifier
        27: .line 3181
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyName:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* propertyName */
        start local 4 // jdk.nashorn.internal.ir.Expression propertyName
        28: .line 3186
      StackMap locals: jdk.nashorn.internal.parser.Parser long int jdk.nashorn.internal.ir.Expression int int int
      StackMap stack:
            iload 6 /* generator */
            ifeq 30
        29: .line 3187
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        30: .line 3190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 33
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 33
        31: .line 3191
            aload 0 /* this */
            aload 4 /* propertyName */
            lload 1 /* propertyToken */
            iload 3 /* functionLine */
            iload 6 /* generator */
            ldc 2097152
            iload 7 /* computed */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyMethodFunction:(Ljdk/nashorn/internal/ir/Expression;JIZIZ)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            getfield jdk.nashorn.internal.parser.Parser$PropertyFunction.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            astore 8 /* propertyValue */
        start local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        32: .line 3192
            goto 50
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
      StackMap locals:
      StackMap stack:
        33: iload 5 /* isIdentifier */
            ifeq 42
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 34
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 34
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 42
      StackMap locals:
      StackMap stack:
        34: aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 42
        35: .line 3193
            aload 0 /* this */
            lload 1 /* propertyToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* propertyName */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getPropertyName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 8 /* propertyValue */
        start local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        36: .line 3194
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 50
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 50
        37: .line 3196
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 9 /* assignToken */
        start local 9 // long assignToken
        38: .line 3197
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        39: .line 3198
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 11 /* rhs */
        start local 11 // jdk.nashorn.internal.ir.Expression rhs
        40: .line 3199
            aload 0 /* this */
            lload 9 /* assignToken */
            aload 8 /* propertyValue */
            aload 11 /* rhs */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAssignment:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* propertyValue */
        end local 11 // jdk.nashorn.internal.ir.Expression rhs
        end local 9 // long assignToken
        41: .line 3201
            goto 50
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        42: .line 3202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        43: .line 3204
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            aload 4 /* propertyName */
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
        44: .line 3206
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* propertyValue */
        start local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        45: .line 3207
            goto 49
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
      StackMap locals:
      StackMap stack: java.lang.Throwable
        46: astore 9
        47: .line 3208
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        48: .line 3209
            aload 9
            athrow
        start local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        49: .line 3208
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        50: .line 3212
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.PropertyNode
            dup
            lload 1 /* propertyToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* propertyName */
            aload 8 /* propertyValue */
            aconst_null
            aconst_null
            iconst_0
            iload 7 /* computed */
            invokespecial jdk.nashorn.internal.ir.PropertyNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Ljdk/nashorn/internal/ir/FunctionNode;ZZ)V
            areturn
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        end local 7 // boolean computed
        end local 6 // boolean generator
        end local 5 // boolean isIdentifier
        end local 4 // jdk.nashorn.internal.ir.Expression propertyName
        end local 3 // int functionLine
        end local 1 // long propertyToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   51     0           this  Ljdk/nashorn/internal/parser/Parser;
            1   51     1  propertyToken  J
            2   51     3   functionLine  I
           25   26     4   propertyName  Ljdk/nashorn/internal/ir/Expression;
           28   51     4   propertyName  Ljdk/nashorn/internal/ir/Expression;
           21   26     5   isIdentifier  Z
           27   51     5   isIdentifier  Z
            3   51     6      generator  Z
            9   51     7       computed  Z
           11   25     8          ident  Ljava/lang/String;
           13   20     9    getSetToken  J
           17   18    12         getter  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
           19   20    13         setter  Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
           22   25     9      identNode  Ljdk/nashorn/internal/ir/IdentNode;
           32   33     8  propertyValue  Ljdk/nashorn/internal/ir/Expression;
           36   42     8  propertyValue  Ljdk/nashorn/internal/ir/Expression;
           45   46     8  propertyValue  Ljdk/nashorn/internal/ir/Expression;
           49   51     8  propertyValue  Ljdk/nashorn/internal/ir/Expression;
           38   41     9    assignToken  J
           40   41    11            rhs  Ljdk/nashorn/internal/ir/Expression;
      Exception table:
        from    to  target  type
          44    46      46  any

  private jdk.nashorn.internal.parser.Parser$PropertyFunction propertyGetterFunction(long, int);
    descriptor: (JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long getSetToken
        start local 3 // int functionLine
         0: .line 3216
            aload 0 /* this */
            lload 1 /* getSetToken */
            iload 3 /* functionLine */
            ldc 2097152
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyGetterFunction:(JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            areturn
        end local 3 // int functionLine
        end local 1 // long getSetToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1   getSetToken  J
            0    1     3  functionLine  I
    MethodParameters:
              Name  Flags
      getSetToken   final
      functionLine  final

  private jdk.nashorn.internal.parser.Parser$PropertyFunction propertyGetterFunction(long, int, int);
    descriptor: (JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=12, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long getSetToken
        start local 3 // int functionLine
        start local 4 // int flags
         0: .line 3220
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* computed */
        start local 5 // boolean computed
         3: .line 3221
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyName:()Ljdk/nashorn/internal/ir/Expression;
            astore 6 /* propertyName */
        start local 6 // jdk.nashorn.internal.ir.Expression propertyName
         4: .line 3222
            aload 6 /* propertyName */
            instanceof jdk.nashorn.internal.ir.PropertyKey
            ifeq 5
            aload 6 /* propertyName */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            goto 6
      StackMap locals: int jdk.nashorn.internal.ir.Expression
      StackMap stack:
         5: aload 0 /* this */
            iload 3 /* functionLine */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.getDefaultValidFunctionName:(IZ)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         6: astore 7 /* getterName */
        start local 7 // java.lang.String getterName
         7: .line 3223
            aload 0 /* this */
            aload 6 /* propertyName */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            new java.lang.StringBuilder
            dup
            ldc "get "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* getterName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 8 /* getNameNode */
        start local 8 // jdk.nashorn.internal.ir.IdentNode getNameNode
         8: .line 3224
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         9: .line 3225
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        10: .line 3227
            aload 0 /* this */
            aload 8 /* getNameNode */
            lload 1 /* getSetToken */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 3 /* functionLine */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 9 /* functionNode */
        start local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        11: .line 3228
            aload 9 /* functionNode */
            iload 4 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        12: .line 3229
            iload 5 /* computed */
            ifeq 14
        13: .line 3230
            aload 9 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        14: .line 3232
      StackMap locals: java.lang.String jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        15: .line 3238
            aload 0 /* this */
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.functionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
            astore 10 /* functionBody */
        start local 10 // jdk.nashorn.internal.ir.Block functionBody
        16: .line 3239
            goto 20
        end local 10 // jdk.nashorn.internal.ir.Block functionBody
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 11
        18: .line 3240
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        19: .line 3241
            aload 11
            athrow
        start local 10 // jdk.nashorn.internal.ir.Block functionBody
        20: .line 3240
      StackMap locals: jdk.nashorn.internal.ir.Block
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        21: .line 3243
            aload 0 /* this */
        22: .line 3244
            aload 9 /* functionNode */
        23: .line 3245
            lload 1 /* getSetToken */
        24: .line 3246
            aload 8 /* getNameNode */
        25: .line 3247
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        26: .line 3248
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        27: .line 3249
            iload 3 /* functionLine */
        28: .line 3250
            aload 10 /* functionBody */
        29: .line 3243
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 11 /* function */
        start local 11 // jdk.nashorn.internal.ir.FunctionNode function
        30: .line 3252
            new jdk.nashorn.internal.parser.Parser$PropertyFunction
            dup
            aload 6 /* propertyName */
            aload 11 /* function */
            iload 5 /* computed */
            invokespecial jdk.nashorn.internal.parser.Parser$PropertyFunction.<init>:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Z)V
            areturn
        end local 11 // jdk.nashorn.internal.ir.FunctionNode function
        end local 10 // jdk.nashorn.internal.ir.Block functionBody
        end local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 8 // jdk.nashorn.internal.ir.IdentNode getNameNode
        end local 7 // java.lang.String getterName
        end local 6 // jdk.nashorn.internal.ir.Expression propertyName
        end local 5 // boolean computed
        end local 4 // int flags
        end local 3 // int functionLine
        end local 1 // long getSetToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   31     0          this  Ljdk/nashorn/internal/parser/Parser;
            0   31     1   getSetToken  J
            0   31     3  functionLine  I
            0   31     4         flags  I
            3   31     5      computed  Z
            4   31     6  propertyName  Ljdk/nashorn/internal/ir/Expression;
            7   31     7    getterName  Ljava/lang/String;
            8   31     8   getNameNode  Ljdk/nashorn/internal/ir/IdentNode;
           11   31     9  functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           16   17    10  functionBody  Ljdk/nashorn/internal/ir/Block;
           20   31    10  functionBody  Ljdk/nashorn/internal/ir/Block;
           30   31    11      function  Ljdk/nashorn/internal/ir/FunctionNode;
      Exception table:
        from    to  target  type
          15    17      17  any
    MethodParameters:
              Name  Flags
      getSetToken   final
      functionLine  final
      flags         final

  private jdk.nashorn.internal.parser.Parser$PropertyFunction propertySetterFunction(long, int);
    descriptor: (JI)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long getSetToken
        start local 3 // int functionLine
         0: .line 3256
            aload 0 /* this */
            lload 1 /* getSetToken */
            iload 3 /* functionLine */
            ldc 2097152
            invokevirtual jdk.nashorn.internal.parser.Parser.propertySetterFunction:(JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
            areturn
        end local 3 // int functionLine
        end local 1 // long getSetToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1   getSetToken  J
            0    1     3  functionLine  I
    MethodParameters:
              Name  Flags
      getSetToken   final
      functionLine  final

  private jdk.nashorn.internal.parser.Parser$PropertyFunction propertySetterFunction(long, int, int);
    descriptor: (JII)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long getSetToken
        start local 3 // int functionLine
        start local 4 // int flags
         0: .line 3260
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* computed */
        start local 5 // boolean computed
         3: .line 3261
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.propertyName:()Ljdk/nashorn/internal/ir/Expression;
            astore 6 /* propertyName */
        start local 6 // jdk.nashorn.internal.ir.Expression propertyName
         4: .line 3262
            aload 6 /* propertyName */
            instanceof jdk.nashorn.internal.ir.PropertyKey
            ifeq 5
            aload 6 /* propertyName */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            goto 6
      StackMap locals: int jdk.nashorn.internal.ir.Expression
      StackMap stack:
         5: aload 0 /* this */
            iload 3 /* functionLine */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.getDefaultValidFunctionName:(IZ)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         6: astore 7 /* setterName */
        start local 7 // java.lang.String setterName
         7: .line 3263
            aload 0 /* this */
            aload 6 /* propertyName */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            new java.lang.StringBuilder
            dup
            ldc "set "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* setterName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 8 /* setNameNode */
        start local 8 // jdk.nashorn.internal.ir.IdentNode setNameNode
         8: .line 3264
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         9: .line 3268
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifeq 13
        10: .line 3269
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* argIdent */
        start local 9 // jdk.nashorn.internal.ir.IdentNode argIdent
        11: .line 3270
            aload 0 /* this */
            aload 9 /* argIdent */
            ldc "setter argument"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        12: .line 3271
            goto 14
        end local 9 // jdk.nashorn.internal.ir.IdentNode argIdent
        13: .line 3272
      StackMap locals: java.lang.String jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aconst_null
            astore 9 /* argIdent */
        start local 9 // jdk.nashorn.internal.ir.IdentNode argIdent
        14: .line 3274
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        15: .line 3275
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
        16: .line 3276
            aload 9 /* argIdent */
            ifnull 18
        17: .line 3277
            aload 10 /* parameters */
            aload 9 /* argIdent */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 3281
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            aload 8 /* setNameNode */
            lload 1 /* getSetToken */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 3 /* functionLine */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 11 /* functionNode */
        start local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        19: .line 3282
            aload 11 /* functionNode */
            iload 4 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        20: .line 3283
            iload 5 /* computed */
            ifeq 22
        21: .line 3284
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        22: .line 3286
      StackMap locals: jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        23: .line 3290
            aload 0 /* this */
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.functionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
            astore 12 /* functionBody */
        start local 12 // jdk.nashorn.internal.ir.Block functionBody
        24: .line 3291
            goto 28
        end local 12 // jdk.nashorn.internal.ir.Block functionBody
      StackMap locals:
      StackMap stack: java.lang.Throwable
        25: astore 13
        26: .line 3292
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        27: .line 3293
            aload 13
            athrow
        start local 12 // jdk.nashorn.internal.ir.Block functionBody
        28: .line 3292
      StackMap locals: jdk.nashorn.internal.ir.Block
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        29: .line 3296
            aload 0 /* this */
        30: .line 3297
            aload 11 /* functionNode */
        31: .line 3298
            lload 1 /* getSetToken */
        32: .line 3299
            aload 8 /* setNameNode */
        33: .line 3300
            aload 10 /* parameters */
        34: .line 3301
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        35: .line 3302
            iload 3 /* functionLine */
        36: .line 3303
            aload 12 /* functionBody */
        37: .line 3296
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 13 /* function */
        start local 13 // jdk.nashorn.internal.ir.FunctionNode function
        38: .line 3305
            new jdk.nashorn.internal.parser.Parser$PropertyFunction
            dup
            aload 6 /* propertyName */
            aload 13 /* function */
            iload 5 /* computed */
            invokespecial jdk.nashorn.internal.parser.Parser$PropertyFunction.<init>:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Z)V
            areturn
        end local 13 // jdk.nashorn.internal.ir.FunctionNode function
        end local 12 // jdk.nashorn.internal.ir.Block functionBody
        end local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 10 // java.util.List parameters
        end local 9 // jdk.nashorn.internal.ir.IdentNode argIdent
        end local 8 // jdk.nashorn.internal.ir.IdentNode setNameNode
        end local 7 // java.lang.String setterName
        end local 6 // jdk.nashorn.internal.ir.Expression propertyName
        end local 5 // boolean computed
        end local 4 // int flags
        end local 3 // int functionLine
        end local 1 // long getSetToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   39     0          this  Ljdk/nashorn/internal/parser/Parser;
            0   39     1   getSetToken  J
            0   39     3  functionLine  I
            0   39     4         flags  I
            3   39     5      computed  Z
            4   39     6  propertyName  Ljdk/nashorn/internal/ir/Expression;
            7   39     7    setterName  Ljava/lang/String;
            8   39     8   setNameNode  Ljdk/nashorn/internal/ir/IdentNode;
           11   13     9      argIdent  Ljdk/nashorn/internal/ir/IdentNode;
           14   39     9      argIdent  Ljdk/nashorn/internal/ir/IdentNode;
           16   39    10    parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           19   39    11  functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           24   25    12  functionBody  Ljdk/nashorn/internal/ir/Block;
           28   39    12  functionBody  Ljdk/nashorn/internal/ir/Block;
           38   39    13      function  Ljdk/nashorn/internal/ir/FunctionNode;
      Exception table:
        from    to  target  type
          23    25      25  any
    MethodParameters:
              Name  Flags
      getSetToken   final
      functionLine  final
      flags         final

  private jdk.nashorn.internal.parser.Parser$PropertyFunction propertyMethodFunction(jdk.nashorn.internal.ir.Expression, long, int, boolean, int, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;JIZIZ)Ljdk/nashorn/internal/parser/Parser$PropertyFunction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=18, args_size=7
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression key
        start local 2 // long methodToken
        start local 4 // int methodLine
        start local 5 // boolean generator
        start local 6 // int flags
        start local 7 // boolean computed
         0: .line 3309
            aload 1 /* key */
            instanceof jdk.nashorn.internal.ir.PropertyKey
            ifeq 1
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            iload 4 /* methodLine */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.getDefaultValidFunctionName:(IZ)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 8 /* methodName */
        start local 8 // java.lang.String methodName
         3: .line 3310
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual jdk.nashorn.internal.ir.Node.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 8 /* methodName */
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* methodNameNode */
        start local 9 // jdk.nashorn.internal.ir.IdentNode methodNameNode
         4: .line 3312
            iload 5 /* generator */
            ifeq 5
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GENERATOR:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            goto 6
      StackMap locals: java.lang.String jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
         5: getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.FunctionNode$Kind
         6: astore 10 /* functionKind */
        start local 10 // jdk.nashorn.internal.ir.FunctionNode$Kind functionKind
         7: .line 3313
            aload 0 /* this */
            aload 9 /* methodNameNode */
            lload 2 /* methodToken */
            aload 10 /* functionKind */
            iload 4 /* methodLine */
            aconst_null
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 11 /* functionNode */
        start local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         8: .line 3314
            aload 11 /* functionNode */
            iload 6 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         9: .line 3315
            iload 7 /* computed */
            ifeq 11
        10: .line 3316
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        11: .line 3318
      StackMap locals: jdk.nashorn.internal.ir.FunctionNode$Kind jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        12: .line 3321
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 12 /* parameterBlock */
        start local 12 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        13: .line 3324
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        14: .line 3325
            aload 0 /* this */
            iload 5 /* generator */
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Z)Ljava/util/List;
            astore 13 /* parameters */
        start local 13 // java.util.List parameters
        15: .line 3326
            aload 11 /* functionNode */
            aload 13 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        16: .line 3327
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        17: .line 3328
            goto 21
        end local 13 // java.util.List parameters
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression long int int int int java.lang.String jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.FunctionNode$Kind jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
        18: astore 14
        19: .line 3329
            aload 0 /* this */
            aload 12 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        20: .line 3330
            aload 14
            athrow
        start local 13 // java.util.List parameters
        21: .line 3329
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            aload 12 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        22: .line 3332
            aload 0 /* this */
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.functionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
            astore 14 /* functionBody */
        start local 14 // jdk.nashorn.internal.ir.Block functionBody
        23: .line 3334
            aload 14 /* functionBody */
            aload 12 /* parameterBlock */
            invokestatic jdk.nashorn.internal.parser.Parser.maybeWrapBodyInParameterBlock:(Ljdk/nashorn/internal/ir/Block;Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/ir/Block;
            astore 14 /* functionBody */
        24: .line 3336
            aload 0 /* this */
        25: .line 3337
            aload 11 /* functionNode */
        26: .line 3338
            lload 2 /* methodToken */
        27: .line 3339
            aload 9 /* methodNameNode */
        28: .line 3340
            aload 13 /* parameters */
        29: .line 3341
            aload 10 /* functionKind */
        30: .line 3342
            iload 4 /* methodLine */
        31: .line 3343
            aload 14 /* functionBody */
        32: .line 3336
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 15 /* function */
        start local 15 // jdk.nashorn.internal.ir.FunctionNode function
        33: .line 3344
            new jdk.nashorn.internal.parser.Parser$PropertyFunction
            dup
            aload 1 /* key */
            aload 15 /* function */
            iload 7 /* computed */
            invokespecial jdk.nashorn.internal.parser.Parser$PropertyFunction.<init>:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/FunctionNode;Z)V
            astore 17
        34: .line 3346
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        35: .line 3344
            aload 17
            areturn
        end local 15 // jdk.nashorn.internal.ir.FunctionNode function
        end local 14 // jdk.nashorn.internal.ir.Block functionBody
        end local 13 // java.util.List parameters
        end local 12 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        36: .line 3345
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression long int int int int java.lang.String jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.FunctionNode$Kind jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack: java.lang.Throwable
            astore 16
        37: .line 3346
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        38: .line 3347
            aload 16
            athrow
        end local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 10 // jdk.nashorn.internal.ir.FunctionNode$Kind functionKind
        end local 9 // jdk.nashorn.internal.ir.IdentNode methodNameNode
        end local 8 // java.lang.String methodName
        end local 7 // boolean computed
        end local 6 // int flags
        end local 5 // boolean generator
        end local 4 // int methodLine
        end local 2 // long methodToken
        end local 1 // jdk.nashorn.internal.ir.Expression key
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   39     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   39     1             key  Ljdk/nashorn/internal/ir/Expression;
            0   39     2     methodToken  J
            0   39     4      methodLine  I
            0   39     5       generator  Z
            0   39     6           flags  I
            0   39     7        computed  Z
            3   39     8      methodName  Ljava/lang/String;
            4   39     9  methodNameNode  Ljdk/nashorn/internal/ir/IdentNode;
            7   39    10    functionKind  Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            8   39    11    functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           13   36    12  parameterBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           15   18    13      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           21   36    13      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           23   36    14    functionBody  Ljdk/nashorn/internal/ir/Block;
           33   36    15        function  Ljdk/nashorn/internal/ir/FunctionNode;
      Exception table:
        from    to  target  type
          13    18      18  any
          12    34      36  any
    MethodParameters:
             Name  Flags
      key          final
      methodToken  final
      methodLine   final
      generator    final
      flags        final
      computed     final

  private jdk.nashorn.internal.ir.Expression leftHandSideExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3383
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* callLine */
        start local 1 // int callLine
         1: .line 3384
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* callToken */
        start local 2 // long callToken
         2: .line 3386
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.memberExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* lhs */
        start local 4 // jdk.nashorn.internal.ir.Expression lhs
         3: .line 3388
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         4: .line 3389
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.argumentList:()Ljava/util/ArrayList;
            invokestatic jdk.nashorn.internal.parser.Parser.optimizeList:(Ljava/util/ArrayList;)Ljava/util/List;
            astore 5 /* arguments */
        start local 5 // java.util.List arguments
         5: .line 3392
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 7
         6: .line 3393
            aload 0 /* this */
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.parser.Parser.detectSpecialFunction:(Ljdk/nashorn/internal/ir/IdentNode;)V
         7: .line 3396
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.Expression java.util.List
      StackMap stack:
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 1 /* callLine */
            lload 2 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* lhs */
            aload 5 /* arguments */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 4 /* lhs */
        end local 5 // java.util.List arguments
         8: .line 3402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* callLine */
         9: .line 3403
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* callToken */
        10: .line 3405
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 5
                   14: 11
                   25: 19
                   45: 14
                  115: 23
                  116: 23
              default: 26
          }
        11: .line 3408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.argumentList:()Ljava/util/ArrayList;
            invokestatic jdk.nashorn.internal.parser.Parser.optimizeList:(Ljava/util/ArrayList;)Ljava/util/List;
            astore 5 /* arguments */
        start local 5 // java.util.List arguments
        12: .line 3411
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 1 /* callLine */
            lload 2 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* lhs */
            aload 5 /* arguments */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 4 /* lhs */
        13: .line 3413
            goto 8
        end local 5 // java.util.List arguments
        14: .line 3416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        15: .line 3419
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* rhs */
        start local 5 // jdk.nashorn.internal.ir.Expression rhs
        16: .line 3421
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        17: .line 3424
            new jdk.nashorn.internal.ir.IndexNode
            dup
            lload 2 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* lhs */
            aload 5 /* rhs */
            invokespecial jdk.nashorn.internal.ir.IndexNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 4 /* lhs */
        18: .line 3426
            goto 8
        end local 5 // jdk.nashorn.internal.ir.Expression rhs
        19: .line 3429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        20: .line 3431
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* property */
        start local 5 // jdk.nashorn.internal.ir.IdentNode property
        21: .line 3434
            new jdk.nashorn.internal.ir.AccessNode
            dup
            lload 2 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* lhs */
            aload 5 /* property */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.ir.AccessNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljava/lang/String;)V
            astore 4 /* lhs */
        22: .line 3436
            goto 8
        end local 5 // jdk.nashorn.internal.ir.IdentNode property
        23: .line 3441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.templateLiteralArgumentList:()Ljava/util/List;
            astore 5 /* arguments */
        start local 5 // java.util.List arguments
        24: .line 3444
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 1 /* callLine */
            lload 2 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* lhs */
            aload 5 /* arguments */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 4 /* lhs */
        25: .line 3446
            goto 8
        end local 5 // java.util.List arguments
        26: .line 3453
      StackMap locals:
      StackMap stack:
            aload 4 /* lhs */
            areturn
        end local 4 // jdk.nashorn.internal.ir.Expression lhs
        end local 2 // long callToken
        end local 1 // int callLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Ljdk/nashorn/internal/parser/Parser;
            1   27     1   callLine  I
            2   27     2  callToken  J
            3   27     4        lhs  Ljdk/nashorn/internal/ir/Expression;
            5    8     5  arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
           12   14     5  arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
           16   19     5        rhs  Ljdk/nashorn/internal/ir/Expression;
           21   23     5   property  Ljdk/nashorn/internal/ir/IdentNode;
           24   26     5  arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;

  private jdk.nashorn.internal.ir.Expression newExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3467
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* newToken */
        start local 1 // long newToken
         1: .line 3469
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 3471
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.PERIOD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 11
         3: .line 3472
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 3473
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 10
            ldc "target"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         5: .line 3474
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isProgram:()Z
            ifeq 7
         6: .line 3475
            aload 0 /* this */
            ldc "new.target.in.function"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         7: .line 3477
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 3478
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokestatic jdk.nashorn.internal.parser.Parser.markNewTarget:(Ljdk/nashorn/internal/parser/ParserContext;)V
         9: .line 3479
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 1 /* newToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "new.target"
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            areturn
        10: .line 3481
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "expected.target"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        11: .line 3486
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* callLine */
        start local 3 // int callLine
        12: .line 3487
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.memberExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* constructor */
        start local 4 // jdk.nashorn.internal.ir.Expression constructor
        13: .line 3488
            aload 4 /* constructor */
            ifnonnull 15
        14: .line 3489
            aconst_null
            areturn
        15: .line 3495
      StackMap locals: int jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 18
        16: .line 3496
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.argumentList:()Ljava/util/ArrayList;
            astore 5 /* arguments */
        start local 5 // java.util.ArrayList arguments
        17: .line 3497
            goto 19
        end local 5 // java.util.ArrayList arguments
        18: .line 3498
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* arguments */
        start local 5 // java.util.ArrayList arguments
        19: .line 3510
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 21
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 21
        20: .line 3511
            aload 5 /* arguments */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.objectLiteral:()Ljdk/nashorn/internal/ir/ObjectNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        21: .line 3514
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 3 /* callLine */
            aload 4 /* constructor */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* constructor */
            aload 5 /* arguments */
            invokestatic jdk.nashorn.internal.parser.Parser.optimizeList:(Ljava/util/ArrayList;)Ljava/util/List;
            iconst_1
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 6 /* callNode */
        start local 6 // jdk.nashorn.internal.ir.CallNode callNode
        22: .line 3516
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 1 /* newToken */
            aload 6 /* callNode */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 6 // jdk.nashorn.internal.ir.CallNode callNode
        end local 5 // java.util.ArrayList arguments
        end local 4 // jdk.nashorn.internal.ir.Expression constructor
        end local 3 // int callLine
        end local 1 // long newToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Ljdk/nashorn/internal/parser/Parser;
            1   23     1     newToken  J
           12   23     3     callLine  I
           13   23     4  constructor  Ljdk/nashorn/internal/ir/Expression;
           17   18     5    arguments  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
           19   23     5    arguments  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
           22   23     6     callNode  Ljdk/nashorn/internal/ir/CallNode;

  private jdk.nashorn.internal.ir.Expression memberExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=7, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3546
            iconst_0
            istore 2 /* isSuper */
        start local 2 // boolean isSuper
         1: .line 3548
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                   59: 6
                   73: 4
                   81: 2
                   89: 9
              default: 23
          }
         2: .line 3551
      StackMap locals: jdk.nashorn.internal.parser.Parser top int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 1 /* lhs */
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
         3: .line 3552
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         4: .line 3556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.functionExpression:(ZZ)Ljdk/nashorn/internal/ir/Expression;
            astore 1 /* lhs */
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
         5: .line 3557
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         6: .line 3560
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 9
         7: .line 3561
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.classExpression:(Z)Ljdk/nashorn/internal/ir/ClassNode;
            astore 1 /* lhs */
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
         8: .line 3562
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         9: .line 3568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 23
        10: .line 3569
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getCurrentNonArrowFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 3 /* currentFunction */
        start local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        11: .line 3570
            aload 3 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isMethod:()Z
            ifeq 23
        12: .line 3571
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            lstore 4 /* identToken */
        start local 4 // long identToken
        13: .line 3572
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        14: .line 3573
            aload 0 /* this */
            lload 4 /* identToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            getstatic jdk.nashorn.internal.parser.TokenType.SUPER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 1 /* lhs */
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
        15: .line 3575
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 3
                   14: 19
                   25: 16
                   45: 16
              default: 22
          }
        16: .line 3578
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int jdk.nashorn.internal.parser.ParserContextFunctionNode long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getCurrentNonArrowFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            ldc 1048576
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        17: .line 3579
            iconst_1
            istore 2 /* isSuper */
        18: .line 3580
            goto 24
        19: .line 3582
      StackMap locals:
      StackMap stack:
            aload 3 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSubclassConstructor:()Z
            ifeq 22
        20: .line 3583
            aload 1 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDirectSuper:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 1 /* lhs */
        21: .line 3584
            goto 24
        22: .line 3589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "invalid.super"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 4 /* identToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 4 // long identToken
        end local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
        23: .line 3601
      StackMap locals: jdk.nashorn.internal.parser.Parser top int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.primaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 1 /* lhs */
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
        24: .line 3608
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* callToken */
        start local 3 // long callToken
        25: .line 3610
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                   25: 34
                   45: 26
                  115: 43
                  116: 43
              default: 47
          }
        26: .line 3612
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        27: .line 3615
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* index */
        start local 5 // jdk.nashorn.internal.ir.Expression index
        28: .line 3617
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        29: .line 3620
            new jdk.nashorn.internal.ir.IndexNode
            dup
            lload 3 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 1 /* lhs */
            aload 5 /* index */
            invokespecial jdk.nashorn.internal.ir.IndexNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 1 /* lhs */
        30: .line 3622
            iload 2 /* isSuper */
            ifeq 24
        31: .line 3623
            iconst_0
            istore 2 /* isSuper */
        32: .line 3624
            aload 1 /* lhs */
            checkcast jdk.nashorn.internal.ir.BaseNode
            invokevirtual jdk.nashorn.internal.ir.BaseNode.setIsSuper:()Ljdk/nashorn/internal/ir/BaseNode;
            astore 1 /* lhs */
        33: .line 3627
            goto 24
        end local 5 // jdk.nashorn.internal.ir.Expression index
        34: .line 3630
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            ifnonnull 36
        35: .line 3631
            aload 0 /* this */
            ldc "expected.operand"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        36: .line 3634
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        37: .line 3636
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* property */
        start local 5 // jdk.nashorn.internal.ir.IdentNode property
        38: .line 3639
            new jdk.nashorn.internal.ir.AccessNode
            dup
            lload 3 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 1 /* lhs */
            aload 5 /* property */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.ir.AccessNode.<init>:(JILjdk/nashorn/internal/ir/Expression;Ljava/lang/String;)V
            astore 1 /* lhs */
        39: .line 3641
            iload 2 /* isSuper */
            ifeq 24
        40: .line 3642
            iconst_0
            istore 2 /* isSuper */
        41: .line 3643
            aload 1 /* lhs */
            checkcast jdk.nashorn.internal.ir.BaseNode
            invokevirtual jdk.nashorn.internal.ir.BaseNode.setIsSuper:()Ljdk/nashorn/internal/ir/BaseNode;
            astore 1 /* lhs */
        42: .line 3646
            goto 24
        end local 5 // jdk.nashorn.internal.ir.IdentNode property
        43: .line 3651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 5 /* callLine */
        start local 5 // int callLine
        44: .line 3652
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.templateLiteralArgumentList:()Ljava/util/List;
            astore 6 /* arguments */
        start local 6 // java.util.List arguments
        45: .line 3654
            new jdk.nashorn.internal.ir.CallNode
            dup
            iload 5 /* callLine */
            lload 3 /* callToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 1 /* lhs */
            aload 6 /* arguments */
            iconst_0
            invokespecial jdk.nashorn.internal.ir.CallNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;Ljava/util/List;Z)V
            astore 1 /* lhs */
        46: .line 3656
            goto 24
        end local 6 // java.util.List arguments
        end local 5 // int callLine
        end local 3 // long callToken
        47: .line 3663
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            areturn
        end local 2 // boolean isSuper
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   48     0             this  Ljdk/nashorn/internal/parser/Parser;
            3    4     1              lhs  Ljdk/nashorn/internal/ir/Expression;
            5    6     1              lhs  Ljdk/nashorn/internal/ir/Expression;
            8    9     1              lhs  Ljdk/nashorn/internal/ir/Expression;
           15   23     1              lhs  Ljdk/nashorn/internal/ir/Expression;
           24   48     1              lhs  Ljdk/nashorn/internal/ir/Expression;
            1   48     2          isSuper  Z
           11   23     3  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           13   23     4       identToken  J
           25   47     3        callToken  J
           28   34     5            index  Ljdk/nashorn/internal/ir/Expression;
           38   43     5         property  Ljdk/nashorn/internal/ir/IdentNode;
           44   47     5         callLine  I
           45   47     6        arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;

  private java.util.ArrayList<jdk.nashorn.internal.ir.Expression> argumentList();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3684
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* nodeList */
        start local 1 // java.util.ArrayList nodeList
         1: .line 3686
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 3689
            iconst_1
            istore 2 /* first */
        start local 2 // boolean first
         3: .line 3691
            goto 16
         4: .line 3693
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            iload 2 /* first */
            ifne 7
         5: .line 3694
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         6: .line 3695
            goto 8
         7: .line 3696
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* first */
         8: .line 3699
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 3 /* spreadToken */
        start local 3 // long spreadToken
         9: .line 3700
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 12
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 12
        10: .line 3701
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* spreadToken */
        11: .line 3702
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        12: .line 3706
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* expression */
        start local 5 // jdk.nashorn.internal.ir.Expression expression
        13: .line 3707
            lload 3 /* spreadToken */
            lconst_0
            lcmp
            ifeq 15
        14: .line 3708
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 3 /* spreadToken */
            getstatic jdk.nashorn.internal.parser.TokenType.SPREAD_ARGUMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 5 /* expression */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            astore 5 /* expression */
        15: .line 3710
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 1 /* nodeList */
            aload 5 /* expression */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // jdk.nashorn.internal.ir.Expression expression
        end local 3 // long spreadToken
        16: .line 3691
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 4
        17: .line 3713
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        18: .line 3714
            aload 1 /* nodeList */
            areturn
        end local 2 // boolean first
        end local 1 // java.util.ArrayList nodeList
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Ljdk/nashorn/internal/parser/Parser;
            1   19     1     nodeList  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            3   19     2        first  Z
            9   16     3  spreadToken  J
           13   16     5   expression  Ljdk/nashorn/internal/ir/Expression;
    Signature: ()Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;

  private static <T> java.util.List<T> optimizeList(java.util.ArrayList<T>);
    descriptor: (Ljava/util/ArrayList;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.ArrayList list
         0: .line 3718
            aload 0 /* list */
            invokevirtual java.util.ArrayList.size:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 3
          }
         1: .line 3720
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 3723
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            iconst_0
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            areturn
         3: .line 3726
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokevirtual java.util.ArrayList.trimToSize:()V
         4: .line 3727
            aload 0 /* list */
            areturn
        end local 0 // java.util.ArrayList list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  list  Ljava/util/ArrayList<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/ArrayList<TT;>;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      list  final

  private jdk.nashorn.internal.ir.Expression functionExpression(boolean, boolean);
    descriptor: (ZZ)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=16, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean isStatement
        start local 2 // boolean topLevel
         0: .line 3747
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* functionToken */
        start local 3 // long functionToken
         1: .line 3748
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 5 /* functionLine */
        start local 5 // int functionLine
         2: .line 3750
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 3751
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 3753
            iconst_0
            istore 6 /* generator */
        start local 6 // boolean generator
         5: .line 3754
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 8
         6: .line 3755
            iconst_1
            istore 6 /* generator */
         7: .line 3756
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 3759
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 7 /* name */
        start local 7 // jdk.nashorn.internal.ir.IdentNode name
         9: .line 3761
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifeq 16
        10: .line 3762
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 13
            iload 1 /* isStatement */
            ifne 11
            iload 6 /* generator */
            ifne 12
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
        11: iload 1 /* isStatement */
            ifeq 13
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.inGeneratorFunction:()Z
            ifeq 13
        12: .line 3766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        13: .line 3768
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 7 /* name */
        14: .line 3769
            aload 0 /* this */
            aload 7 /* name */
            ldc "function name"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyStrictIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        15: .line 3770
            goto 19
      StackMap locals:
      StackMap stack:
        16: iload 1 /* isStatement */
            ifeq 19
        17: .line 3776
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifeq 19
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnonnull 19
        18: .line 3777
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        19: .line 3782
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* isAnonymous */
        start local 8 // boolean isAnonymous
        20: .line 3783
            aload 7 /* name */
            ifnonnull 24
        21: .line 3784
            aload 0 /* this */
            iload 5 /* functionLine */
            iload 1 /* isStatement */
            invokevirtual jdk.nashorn.internal.parser.Parser.getDefaultValidFunctionName:(IZ)Ljava/lang/String;
            astore 9 /* tmpName */
        start local 9 // java.lang.String tmpName
        22: .line 3785
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 3 /* functionToken */
            lload 3 /* functionToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 9 /* tmpName */
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 7 /* name */
        23: .line 3786
            iconst_1
            istore 8 /* isAnonymous */
        end local 9 // java.lang.String tmpName
        24: .line 3789
      StackMap locals: int
      StackMap stack:
            iload 6 /* generator */
            ifeq 25
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GENERATOR:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            goto 26
      StackMap locals:
      StackMap stack:
        25: getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.NORMAL:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.FunctionNode$Kind
        26: astore 9 /* functionKind */
        start local 9 // jdk.nashorn.internal.ir.FunctionNode$Kind functionKind
        27: .line 3790
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
        28: .line 3791
            aload 0 /* this */
            aload 7 /* name */
            lload 3 /* functionToken */
            aload 9 /* functionKind */
            iload 5 /* functionLine */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 11 /* functionNode */
        start local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        29: .line 3792
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        30: .line 3794
            aconst_null
            astore 12 /* functionBody */
        start local 12 // jdk.nashorn.internal.ir.Block functionBody
        31: .line 3797
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.hideDefaultName:()V
        32: .line 3799
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 13 /* parameterBlock */
        start local 13 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        33: .line 3801
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        34: .line 3802
            aload 0 /* this */
            iload 6 /* generator */
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Z)Ljava/util/List;
            astore 10 /* parameters */
        35: .line 3803
            aload 11 /* functionNode */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        36: .line 3804
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        37: .line 3805
            goto 41
      StackMap locals: jdk.nashorn.internal.parser.Parser int int long int int jdk.nashorn.internal.ir.IdentNode int jdk.nashorn.internal.ir.FunctionNode$Kind java.util.List jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.ir.Block jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
        38: astore 14
        39: .line 3806
            aload 0 /* this */
            aload 13 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        40: .line 3807
            aload 14
            athrow
        41: .line 3806
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 13 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        42: .line 3809
            aload 0 /* this */
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.functionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
            astore 12 /* functionBody */
        43: .line 3811
            aload 12 /* functionBody */
            aload 13 /* parameterBlock */
            invokestatic jdk.nashorn.internal.parser.Parser.maybeWrapBodyInParameterBlock:(Ljdk/nashorn/internal/ir/Block;Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/ir/Block;
            astore 12 /* functionBody */
        end local 13 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        44: .line 3812
            goto 49
      StackMap locals: jdk.nashorn.internal.parser.Parser int int long int int jdk.nashorn.internal.ir.IdentNode int jdk.nashorn.internal.ir.FunctionNode$Kind java.util.List jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.ir.Block
      StackMap stack: java.lang.Throwable
        45: astore 15
        46: .line 3813
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        47: .line 3814
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        48: .line 3815
            aload 15
            athrow
        49: .line 3813
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        50: .line 3814
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        51: .line 3817
            iload 1 /* isStatement */
            ifeq 63
        52: .line 3818
            iload 2 /* topLevel */
            ifne 53
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifne 53
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifne 55
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._function_statement:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            getstatic jdk.nashorn.internal.runtime.ScriptEnvironment$FunctionStatementBehavior.ACCEPT:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            if_acmpne 55
        53: .line 3819
      StackMap locals:
      StackMap stack:
            aload 11 /* functionNode */
            iconst_2
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        54: .line 3820
            goto 61
      StackMap locals:
      StackMap stack:
        55: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 57
        56: .line 3821
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.JSErrorType.SYNTAX_ERROR:Ljdk/nashorn/internal/runtime/JSErrorType;
            ldc "strict.no.func.decl.here"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 3 /* functionToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljdk/nashorn/internal/runtime/JSErrorType;Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        57: .line 3822
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._function_statement:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            getstatic jdk.nashorn.internal.runtime.ScriptEnvironment$FunctionStatementBehavior.ERROR:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            if_acmpne 59
        58: .line 3823
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.JSErrorType.SYNTAX_ERROR:Ljdk/nashorn/internal/runtime/JSErrorType;
            ldc "no.func.decl.here"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 3 /* functionToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljdk/nashorn/internal/runtime/JSErrorType;Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        59: .line 3824
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._function_statement:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            getstatic jdk.nashorn.internal.runtime.ScriptEnvironment$FunctionStatementBehavior.WARNING:Ljdk/nashorn/internal/runtime/ScriptEnvironment$FunctionStatementBehavior;
            if_acmpne 61
        60: .line 3825
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.JSErrorType.SYNTAX_ERROR:Ljdk/nashorn/internal/runtime/JSErrorType;
            ldc "no.func.decl.here.warn"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 3 /* functionToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.warning:(Ljdk/nashorn/internal/runtime/JSErrorType;Ljava/lang/String;J)V
        61: .line 3827
      StackMap locals:
      StackMap stack:
            aload 7 /* name */
            invokestatic jdk.nashorn.internal.parser.Parser.isArguments:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifeq 63
        62: .line 3828
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            sipush 256
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        63: .line 3832
      StackMap locals:
      StackMap stack:
            iload 8 /* isAnonymous */
            ifeq 65
        64: .line 3833
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        65: .line 3836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* parameters */
            aload 11 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyParameterList:(Ljava/util/List;Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        66: .line 3838
            aload 0 /* this */
        67: .line 3839
            aload 11 /* functionNode */
        68: .line 3840
            lload 3 /* functionToken */
        69: .line 3841
            aload 7 /* name */
        70: .line 3842
            aload 10 /* parameters */
        71: .line 3843
            aload 9 /* functionKind */
        72: .line 3844
            iload 5 /* functionLine */
        73: .line 3845
            aload 12 /* functionBody */
        74: .line 3838
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 13 /* function */
        start local 13 // jdk.nashorn.internal.ir.FunctionNode function
        75: .line 3847
            iload 1 /* isStatement */
            ifeq 91
        76: .line 3848
            iload 8 /* isAnonymous */
            ifeq 79
        77: .line 3849
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 5 /* functionLine */
            lload 3 /* functionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 13 /* function */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        78: .line 3850
            aload 13 /* function */
            areturn
        79: .line 3854
      StackMap locals: jdk.nashorn.internal.ir.FunctionNode
      StackMap stack:
            iload 2 /* topLevel */
            ifne 80
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifne 81
      StackMap locals:
      StackMap stack:
        80: iconst_0
            goto 82
      StackMap locals:
      StackMap stack:
        81: iconst_1
      StackMap locals:
      StackMap stack: int
        82: istore 14 /* varFlags */
        start local 14 // int varFlags
        83: .line 3855
            new jdk.nashorn.internal.ir.VarNode
            dup
            iload 5 /* functionLine */
            lload 3 /* functionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 7 /* name */
            aload 13 /* function */
            iload 14 /* varFlags */
            invokespecial jdk.nashorn.internal.ir.VarNode.<init>:(IJILjdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;I)V
            astore 15 /* varNode */
        start local 15 // jdk.nashorn.internal.ir.VarNode varNode
        84: .line 3856
            iload 2 /* topLevel */
            ifeq 87
        85: .line 3857
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
            aload 15 /* varNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        86: .line 3858
            goto 91
      StackMap locals: int jdk.nashorn.internal.ir.VarNode
      StackMap stack:
        87: aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.useBlockScope:()Z
            ifeq 90
        88: .line 3859
            aload 0 /* this */
            aload 15 /* varNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.prependStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        89: .line 3860
            goto 91
        90: .line 3861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 15 /* varNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 15 // jdk.nashorn.internal.ir.VarNode varNode
        end local 14 // int varFlags
        91: .line 3865
      StackMap locals:
      StackMap stack:
            aload 13 /* function */
            areturn
        end local 13 // jdk.nashorn.internal.ir.FunctionNode function
        end local 12 // jdk.nashorn.internal.ir.Block functionBody
        end local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 10 // java.util.List parameters
        end local 9 // jdk.nashorn.internal.ir.FunctionNode$Kind functionKind
        end local 8 // boolean isAnonymous
        end local 7 // jdk.nashorn.internal.ir.IdentNode name
        end local 6 // boolean generator
        end local 5 // int functionLine
        end local 3 // long functionToken
        end local 2 // boolean topLevel
        end local 1 // boolean isStatement
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   92     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   92     1     isStatement  Z
            0   92     2        topLevel  Z
            1   92     3   functionToken  J
            2   92     5    functionLine  I
            5   92     6       generator  Z
            9   92     7            name  Ljdk/nashorn/internal/ir/IdentNode;
           20   92     8     isAnonymous  Z
           22   24     9         tmpName  Ljava/lang/String;
           27   92     9    functionKind  Ljdk/nashorn/internal/ir/FunctionNode$Kind;
           28   92    10      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           29   92    11    functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           31   92    12    functionBody  Ljdk/nashorn/internal/ir/Block;
           33   44    13  parameterBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           75   92    13        function  Ljdk/nashorn/internal/ir/FunctionNode;
           83   91    14        varFlags  I
           84   91    15         varNode  Ljdk/nashorn/internal/ir/VarNode;
      Exception table:
        from    to  target  type
          33    38      38  any
          32    45      45  any
    MethodParameters:
             Name  Flags
      isStatement  final
      topLevel     final

  private void verifyParameterList(java.util.List<jdk.nashorn.internal.ir.IdentNode>, jdk.nashorn.internal.parser.ParserContextFunctionNode);
    descriptor: (Ljava/util/List;Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.util.List parameters
        start local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         0: .line 3869
            aload 2 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getDuplicateParameterBinding:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* duplicateParameter */
        start local 3 // jdk.nashorn.internal.ir.IdentNode duplicateParameter
         1: .line 3870
            aload 3 /* duplicateParameter */
            ifnull 17
         2: .line 3871
            aload 2 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isStrict:()Z
            ifne 3
            aload 2 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 3
            aload 2 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSimpleParameterList:()Z
            ifne 4
         3: .line 3872
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 0 /* this */
            ldc "strict.param.redefinition"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* duplicateParameter */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 3 /* duplicateParameter */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         4: .line 3875
      StackMap locals:
      StackMap stack:
            aload 1 /* parameters */
            invokeinterface java.util.List.size:()I
            istore 4 /* arity */
        start local 4 // int arity
         5: .line 3876
            new java.util.HashSet
            dup
            iload 4 /* arity */
            invokespecial java.util.HashSet.<init>:(I)V
            astore 5 /* parametersSet */
        start local 5 // java.util.HashSet parametersSet
         6: .line 3878
            iload 4 /* arity */
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
         7: goto 16
         8: .line 3879
      StackMap locals: int java.util.HashSet int
      StackMap stack:
            aload 1 /* parameters */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 7 /* parameter */
        start local 7 // jdk.nashorn.internal.ir.IdentNode parameter
         9: .line 3880
            aload 7 /* parameter */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            astore 8 /* parameterName */
        start local 8 // java.lang.String parameterName
        10: .line 3882
            aload 5 /* parametersSet */
            aload 8 /* parameterName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 14
        11: .line 3884
            aload 2 /* functionNode */
            aload 8 /* parameterName */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.uniqueName:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* parameterName */
        12: .line 3885
            aload 7 /* parameter */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            lstore 9 /* parameterToken */
        start local 9 // long parameterToken
        13: .line 3886
            aload 1 /* parameters */
            iload 6 /* i */
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 9 /* parameterToken */
            lload 9 /* parameterToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 2 /* functionNode */
            aload 8 /* parameterName */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.uniqueName:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // long parameterToken
        14: .line 3888
      StackMap locals: jdk.nashorn.internal.ir.IdentNode java.lang.String
      StackMap stack:
            aload 5 /* parametersSet */
            aload 8 /* parameterName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String parameterName
        end local 7 // jdk.nashorn.internal.ir.IdentNode parameter
        15: .line 3878
            iinc 6 /* i */ -1
      StackMap locals:
      StackMap stack:
        16: iload 6 /* i */
            ifge 8
        end local 6 // int i
        end local 5 // java.util.HashSet parametersSet
        end local 4 // int arity
        17: .line 3891
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.nashorn.internal.ir.IdentNode duplicateParameter
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 1 // java.util.List parameters
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0                this  Ljdk/nashorn/internal/parser/Parser;
            0   18     1          parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            0   18     2        functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            1   18     3  duplicateParameter  Ljdk/nashorn/internal/ir/IdentNode;
            5   17     4               arity  I
            6   17     5       parametersSet  Ljava/util/HashSet<Ljava/lang/String;>;
            7   17     6                   i  I
            9   15     7           parameter  Ljdk/nashorn/internal/ir/IdentNode;
           10   15     8       parameterName  Ljava/lang/String;
           13   14     9      parameterToken  J
    Signature: (Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
    MethodParameters:
              Name  Flags
      parameters    final
      functionNode  final

  private static jdk.nashorn.internal.ir.Block maybeWrapBodyInParameterBlock(jdk.nashorn.internal.ir.Block, jdk.nashorn.internal.parser.ParserContextBlockNode);
    descriptor: (Ljdk/nashorn/internal/ir/Block;Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/ir/Block;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Block functionBody
        start local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
         0: .line 3894
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* functionBody */
            invokevirtual jdk.nashorn.internal.ir.Block.isFunctionBody:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 3895
      StackMap locals:
      StackMap stack:
            aload 1 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 4
         2: .line 3896
            aload 1 /* parameterBlock */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            aload 0 /* functionBody */
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(Ljdk/nashorn/internal/ir/Block;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
         3: .line 3897
            new jdk.nashorn.internal.ir.Block
            dup
            aload 1 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
            aload 0 /* functionBody */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
            aload 0 /* functionBody */
            invokevirtual jdk.nashorn.internal.ir.Block.getFlags:()I
            bipush 64
            ior
            bipush -33
            iand
            aload 1 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            areturn
         4: .line 3899
      StackMap locals:
      StackMap stack:
            aload 0 /* functionBody */
            areturn
        end local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        end local 0 // jdk.nashorn.internal.ir.Block functionBody
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0    functionBody  Ljdk/nashorn/internal/ir/Block;
            0    5     1  parameterBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
    MethodParameters:
                Name  Flags
      functionBody    final
      parameterBlock  final

  private java.lang.String getDefaultValidFunctionName(int, boolean);
    descriptor: (IZ)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int functionLine
        start local 2 // boolean isStatement
         0: .line 3903
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getDefaultFunctionName:()Ljava/lang/String;
            astore 3 /* defaultFunctionName */
        start local 3 // java.lang.String defaultFunctionName
         1: .line 3904
            aload 3 /* defaultFunctionName */
            invokestatic jdk.nashorn.internal.parser.Parser.isValidIdentifier:(Ljava/lang/String;)Z
            ifeq 5
         2: .line 3905
            iload 2 /* isStatement */
            ifeq 4
         3: .line 3908
            new java.lang.StringBuilder
            dup
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.ANON_FUNCTION_PREFIX:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* defaultFunctionName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         4: .line 3910
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* defaultFunctionName */
            areturn
         5: .line 3912
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.ANON_FUNCTION_PREFIX:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* functionLine */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.String defaultFunctionName
        end local 2 // boolean isStatement
        end local 1 // int functionLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0                 this  Ljdk/nashorn/internal/parser/Parser;
            0    6     1         functionLine  I
            0    6     2          isStatement  Z
            1    6     3  defaultFunctionName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      functionLine  final
      isStatement   final

  private static boolean isValidIdentifier(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String name
         0: .line 3916
            aload 0 /* name */
            ifnull 1
            aload 0 /* name */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 2
         1: .line 3917
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 3919
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isJavaIdentifierStart:(C)Z
            ifne 4
         3: .line 3920
            iconst_0
            ireturn
         4: .line 3922
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* i */
        start local 1 // int i
         5: goto 9
         6: .line 3923
      StackMap locals: int
      StackMap stack:
            aload 0 /* name */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
            ifne 8
         7: .line 3924
            iconst_0
            ireturn
         8: .line 3922
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 1 /* i */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            if_icmplt 6
        end local 1 // int i
        10: .line 3927
            iconst_1
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  name  Ljava/lang/String;
            5   10     1     i  I
    MethodParameters:
      Name  Flags
      name  final

  private java.lang.String getDefaultFunctionName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3931
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifne 8
         1: .line 3932
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.peek:()Ljava/lang/Object;
            astore 1 /* nameExpr */
        start local 1 // java.lang.Object nameExpr
         2: .line 3933
            aload 1 /* nameExpr */
            instanceof jdk.nashorn.internal.ir.PropertyKey
            ifeq 5
         3: .line 3934
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.markDefaultNameUsed:()V
         4: .line 3935
            aload 1 /* nameExpr */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            areturn
         5: .line 3936
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* nameExpr */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifeq 8
         6: .line 3937
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.markDefaultNameUsed:()V
         7: .line 3938
            aload 1 /* nameExpr */
            checkcast jdk.nashorn.internal.ir.AccessNode
            invokevirtual jdk.nashorn.internal.ir.AccessNode.getProperty:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.Object nameExpr
         8: .line 3941
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljdk/nashorn/internal/parser/Parser;
            2    8     1  nameExpr  Ljava/lang/Object;

  private void markDefaultNameUsed();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3945
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
         1: .line 3946
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.hideDefaultName:()V
         2: .line 3947
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void hideDefaultName();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 3952
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            ldc ""
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
         1: .line 3953
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;

  private java.util.List<jdk.nashorn.internal.ir.IdentNode> formalParameterList(boolean);
    descriptor: (Z)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean yield
         0: .line 3966
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            iload 1 /* yield */
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Ljdk/nashorn/internal/parser/TokenType;Z)Ljava/util/List;
            areturn
        end local 1 // boolean yield
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  yield  Z
    Signature: (Z)Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
    MethodParameters:
       Name  Flags
      yield  final

  private java.util.List<jdk.nashorn.internal.ir.IdentNode> formalParameterList(jdk.nashorn.internal.parser.TokenType, boolean);
    descriptor: (Ljdk/nashorn/internal/parser/TokenType;Z)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=15, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.TokenType endType
        start local 2 // boolean yield
         0: .line 3984
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* parameters */
        start local 3 // java.util.ArrayList parameters
         1: .line 3986
            iconst_1
            istore 4 /* first */
        start local 4 // boolean first
         2: .line 3988
            goto 68
         3: .line 3990
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            iload 4 /* first */
            ifne 6
         4: .line 3991
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         5: .line 3992
            goto 7
         6: .line 3993
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* first */
         7: .line 3996
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* restParameter */
        start local 5 // boolean restParameter
         8: .line 3997
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 11
         9: .line 3998
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 3999
            iconst_1
            istore 5 /* restParameter */
        11: .line 4002
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 13
            iload 2 /* yield */
            ifeq 13
        12: .line 4003
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        13: .line 4006
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* paramToken */
        start local 6 // long paramToken
        14: .line 4007
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 8 /* paramLine */
        start local 8 // int paramLine
        15: .line 4010
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifne 16
            iload 5 /* restParameter */
            ifne 16
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifne 44
        16: .line 4011
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifier:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        start local 9 // jdk.nashorn.internal.ir.IdentNode ident
        17: .line 4013
            iload 5 /* restParameter */
            ifeq 22
        18: .line 4014
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsRestParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        19: .line 4016
            aload 0 /* this */
            aload 1 /* endType */
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        20: .line 4017
            aload 3 /* parameters */
            aload 9 /* ident */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        21: .line 4018
            goto 69
        22: .line 4019
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 38
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 38
        23: .line 4020
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        24: .line 4021
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDefaultParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        25: .line 4023
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 27
            iload 2 /* yield */
            ifeq 27
        26: .line 4025
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        27: .line 4029
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 10 /* initializer */
        start local 10 // jdk.nashorn.internal.ir.Expression initializer
        28: .line 4031
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 11 /* currentFunction */
        start local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        29: .line 4032
            aload 11 /* currentFunction */
            ifnull 38
        30: .line 4033
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 34
        31: .line 4035
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 9 /* ident */
            aload 10 /* initializer */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 12 /* assignment */
        start local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        32: .line 4036
            aload 11 /* currentFunction */
            aload 9 /* ident */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        end local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        33: .line 4037
            goto 38
        34: .line 4040
      StackMap locals: jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.EQ_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 9 /* ident */
            lload 6 /* paramToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.parser.Parser.newUndefinedLiteral:(JI)Ljdk/nashorn/internal/ir/UnaryNode;
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 12 /* test */
        start local 12 // jdk.nashorn.internal.ir.BinaryNode test
        35: .line 4041
            new jdk.nashorn.internal.ir.TernaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 12 /* test */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 10 /* initializer */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 9 /* ident */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.TernaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            astore 13 /* value */
        start local 13 // jdk.nashorn.internal.ir.TernaryNode value
        36: .line 4042
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 9 /* ident */
            aload 13 /* value */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 14 /* assignment */
        start local 14 // jdk.nashorn.internal.ir.BinaryNode assignment
        37: .line 4043
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 11 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 8 /* paramLine */
            aload 14 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getToken:()J
            aload 14 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getFinish:()I
            aload 14 /* assignment */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 14 // jdk.nashorn.internal.ir.BinaryNode assignment
        end local 13 // jdk.nashorn.internal.ir.TernaryNode value
        end local 12 // jdk.nashorn.internal.ir.BinaryNode test
        end local 11 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 10 // jdk.nashorn.internal.ir.Expression initializer
        38: .line 4048
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 10 /* currentFunction */
        start local 10 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        39: .line 4049
            aload 10 /* currentFunction */
            ifnull 67
        40: .line 4050
            aload 10 /* currentFunction */
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterBinding:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            pop
        41: .line 4051
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isRestParameter:()Z
            ifne 42
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isDefaultParameter:()Z
            ifeq 67
        42: .line 4052
      StackMap locals: jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 10 /* currentFunction */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setSimpleParameterList:(Z)V
        end local 10 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        43: .line 4055
            goto 67
        end local 9 // jdk.nashorn.internal.ir.IdentNode ident
        44: .line 4056
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingPattern:()Ljdk/nashorn/internal/ir/Expression;
            astore 10 /* pattern */
        start local 10 // jdk.nashorn.internal.ir.Expression pattern
        45: .line 4058
            aload 0 /* this */
            lload 6 /* paramToken */
            aload 10 /* pattern */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            ldc "arguments[%d]"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* parameters */
            invokevirtual java.util.ArrayList.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDestructuredParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        start local 9 // jdk.nashorn.internal.ir.IdentNode ident
        46: .line 4059
            aload 0 /* this */
            aload 10 /* pattern */
            lload 6 /* paramToken */
            iload 8 /* paramLine */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringParameterBindingPattern:(Ljdk/nashorn/internal/ir/Expression;JILjava/lang/String;)V
        47: .line 4061
            aload 9 /* ident */
            astore 11 /* value */
        start local 11 // jdk.nashorn.internal.ir.Expression value
        48: .line 4062
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 57
        49: .line 4063
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        50: .line 4064
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDefaultParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        51: .line 4067
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 12 /* initializer */
        start local 12 // jdk.nashorn.internal.ir.Expression initializer
        52: .line 4069
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 55
        53: .line 4071
            aload 12 /* initializer */
            astore 11 /* value */
        54: .line 4072
            goto 57
        55: .line 4074
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.TokenType int java.util.ArrayList int int long int jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.Expression
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.EQ_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 9 /* ident */
            lload 6 /* paramToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.parser.Parser.newUndefinedLiteral:(JI)Ljdk/nashorn/internal/ir/UnaryNode;
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 13 /* test */
        start local 13 // jdk.nashorn.internal.ir.BinaryNode test
        56: .line 4075
            new jdk.nashorn.internal.ir.TernaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 13 /* test */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 12 /* initializer */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 9 /* ident */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.TernaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            astore 11 /* value */
        end local 13 // jdk.nashorn.internal.ir.BinaryNode test
        end local 12 // jdk.nashorn.internal.ir.Expression initializer
        57: .line 4079
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 12 /* currentFunction */
        start local 12 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        58: .line 4080
            aload 12 /* currentFunction */
            ifnull 67
        59: .line 4082
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 6 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 10 /* pattern */
            aload 11 /* value */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 13 /* assignment */
        start local 13 // jdk.nashorn.internal.ir.BinaryNode assignment
        60: .line 4083
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 66
        61: .line 4085
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isDefaultParameter:()Z
            ifeq 64
        62: .line 4086
            aload 12 /* currentFunction */
            aload 9 /* ident */
            aload 13 /* assignment */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        63: .line 4087
            goto 67
        64: .line 4088
      StackMap locals: jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.ir.BinaryNode
      StackMap stack:
            aload 12 /* currentFunction */
            aload 9 /* ident */
            aload 10 /* pattern */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        65: .line 4090
            goto 67
        66: .line 4091
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 12 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 8 /* paramLine */
            aload 13 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getToken:()J
            aload 13 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getFinish:()I
            aload 13 /* assignment */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 13 // jdk.nashorn.internal.ir.BinaryNode assignment
        end local 12 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 11 // jdk.nashorn.internal.ir.Expression value
        end local 10 // jdk.nashorn.internal.ir.Expression pattern
        67: .line 4095
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.TokenType int java.util.ArrayList int int long int jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 3 /* parameters */
            aload 9 /* ident */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // jdk.nashorn.internal.ir.IdentNode ident
        end local 8 // int paramLine
        end local 6 // long paramToken
        end local 5 // boolean restParameter
        68: .line 3988
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.TokenType int java.util.ArrayList int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            aload 1 /* endType */
            if_acmpne 3
        69: .line 4098
      StackMap locals:
      StackMap stack:
            aload 3 /* parameters */
            invokevirtual java.util.ArrayList.trimToSize:()V
        70: .line 4099
            aload 3 /* parameters */
            areturn
        end local 4 // boolean first
        end local 3 // java.util.ArrayList parameters
        end local 2 // boolean yield
        end local 1 // jdk.nashorn.internal.parser.TokenType endType
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   71     0             this  Ljdk/nashorn/internal/parser/Parser;
            0   71     1          endType  Ljdk/nashorn/internal/parser/TokenType;
            0   71     2            yield  Z
            1   71     3       parameters  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/IdentNode;>;
            2   71     4            first  Z
            8   68     5    restParameter  Z
           14   68     6       paramToken  J
           15   68     8        paramLine  I
           17   44     9            ident  Ljdk/nashorn/internal/ir/IdentNode;
           46   68     9            ident  Ljdk/nashorn/internal/ir/IdentNode;
           28   38    10      initializer  Ljdk/nashorn/internal/ir/Expression;
           29   38    11  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           32   33    12       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
           35   38    12             test  Ljdk/nashorn/internal/ir/BinaryNode;
           36   38    13            value  Ljdk/nashorn/internal/ir/TernaryNode;
           37   38    14       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
           39   43    10  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           45   67    10          pattern  Ljdk/nashorn/internal/ir/Expression;
           48   67    11            value  Ljdk/nashorn/internal/ir/Expression;
           52   57    12      initializer  Ljdk/nashorn/internal/ir/Expression;
           56   57    13             test  Ljdk/nashorn/internal/ir/BinaryNode;
           58   67    12  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           60   67    13       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
    Signature: (Ljdk/nashorn/internal/parser/TokenType;Z)Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
    MethodParameters:
         Name  Flags
      endType  final
      yield    final

  private void verifyDestructuringParameterBindingPattern(jdk.nashorn.internal.ir.Expression, long, int, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;JILjava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=6, args_size=5
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression pattern
        start local 2 // long paramToken
        start local 4 // int paramLine
        start local 5 // java.lang.String contextString
         0: .line 4103
            aload 0 /* this */
            aload 1 /* pattern */
            new jdk.nashorn.internal.parser.Parser$6
            dup
            aload 0 /* this */
            aload 5 /* contextString */
            iload 4 /* paramLine */
            lload 2 /* paramToken */
            aload 1 /* pattern */
            invokespecial jdk.nashorn.internal.parser.Parser$6.<init>:(Ljdk/nashorn/internal/parser/Parser;Ljava/lang/String;IJLjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringBindingPattern:(Ljdk/nashorn/internal/ir/Expression;Ljava/util/function/Consumer;)V
         1: .line 4119
            return
        end local 5 // java.lang.String contextString
        end local 4 // int paramLine
        end local 2 // long paramToken
        end local 1 // jdk.nashorn.internal.ir.Expression pattern
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1        pattern  Ljdk/nashorn/internal/ir/Expression;
            0    2     2     paramToken  J
            0    2     4      paramLine  I
            0    2     5  contextString  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      pattern        final
      paramToken     final
      paramLine      final
      contextString  final

  private jdk.nashorn.internal.ir.Block functionBody(jdk.nashorn.internal.parser.ParserContextFunctionNode);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=16, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         0: .line 4131
            lconst_0
            lstore 2 /* lastToken */
        start local 2 // long lastToken
         1: .line 4132
            aconst_null
            astore 4 /* body */
        start local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode body
         2: .line 4133
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 5 /* bodyToken */
        start local 5 // long bodyToken
         3: .line 4135
            iconst_0
            istore 8 /* bodyFinish */
        start local 8 // int bodyFinish
         4: .line 4138
            aconst_null
            astore 10 /* endParserState */
        start local 10 // java.lang.Object endParserState
         5: .line 4141
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 4 /* body */
         6: .line 4142
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._debug_scopes:Z
            ifeq 8
         7: .line 4144
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokestatic jdk.nashorn.internal.parser.Parser.markEval:(Ljdk/nashorn/internal/parser/ParserContext;)V
         8: .line 4146
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int top java.lang.Object
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 9
            aload 1 /* functionNode */
            ifnonnull 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 4147
      StackMap locals:
      StackMap stack:
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getId:()I
            istore 11 /* functionId */
        start local 11 // int functionId
        10: .line 4148
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnull 11
            iload 11 /* functionId */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getFunctionNodeId:()I
            if_icmple 11
            iconst_0
            goto 12
      StackMap locals: int
      StackMap stack:
        11: iconst_1
      StackMap locals:
      StackMap stack: int
        12: istore 9 /* parseBody */
        start local 9 // boolean parseBody
        13: .line 4150
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifeq 14
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpne 27
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int int java.lang.Object int
      StackMap stack:
        14: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 27
        15: .line 4159
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 12 /* expr */
        start local 12 // jdk.nashorn.internal.ir.Expression expr
        16: .line 4160
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.previousToken:J
            lstore 2 /* lastToken */
        17: .line 4161
            aload 1 /* functionNode */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.previousToken:J
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setLastToken:(J)V
        18: .line 4162
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 19
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            if_acmpeq 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 4164
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            lload 2 /* lastToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            lload 2 /* lastToken */
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 20
            iconst_0
            goto 21
      StackMap locals:
      StackMap stack: int
        20: lload 2 /* lastToken */
            invokestatic jdk.nashorn.internal.parser.Token.descLength:(J)I
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int int java.lang.Object int jdk.nashorn.internal.ir.Expression
      StackMap stack: int int
        21: iadd
            istore 13 /* lastFinish */
        start local 13 // int lastFinish
        22: .line 4170
            iload 9 /* parseBody */
            ifeq 49
        23: .line 4171
            aload 1 /* functionNode */
            ldc 67108864
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        24: .line 4172
            new jdk.nashorn.internal.ir.ReturnNode
            dup
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getLineNumber:()I
            aload 12 /* expr */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            iload 13 /* lastFinish */
            aload 12 /* expr */
            invokespecial jdk.nashorn.internal.ir.ReturnNode.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            astore 14 /* returnNode */
        start local 14 // jdk.nashorn.internal.ir.ReturnNode returnNode
        25: .line 4173
            aload 0 /* this */
            aload 14 /* returnNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 14 // jdk.nashorn.internal.ir.ReturnNode returnNode
        end local 13 // int lastFinish
        end local 12 // jdk.nashorn.internal.ir.Expression expr
        26: .line 4176
            goto 49
        27: .line 4177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        28: .line 4178
            iload 9 /* parseBody */
            ifne 29
            aload 0 /* this */
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.skipFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Z
            ifne 42
        29: .line 4179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        30: .line 4181
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
            astore 12 /* prevFunctionDecls */
        start local 12 // java.util.List prevFunctionDecls
        31: .line 4182
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        32: .line 4184
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.sourceElements:(I)V
        33: .line 4185
            aload 0 /* this */
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        34: .line 4186
            goto 38
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int int java.lang.Object int java.util.List
      StackMap stack: java.lang.Throwable
        35: astore 13
        36: .line 4187
            aload 0 /* this */
            aload 12 /* prevFunctionDecls */
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        37: .line 4188
            aload 13
            athrow
        38: .line 4187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* prevFunctionDecls */
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        39: .line 4190
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastToken */
        40: .line 4191
            iload 9 /* parseBody */
            ifeq 42
        41: .line 4196
            new jdk.nashorn.internal.parser.Parser$ParserState
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.linePosition:I
            invokespecial jdk.nashorn.internal.parser.Parser$ParserState.<init>:(III)V
            astore 10 /* endParserState */
        end local 12 // java.util.List prevFunctionDecls
        42: .line 4209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            istore 8 /* bodyFinish */
        43: .line 4210
            aload 1 /* functionNode */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setLastToken:(J)V
        44: .line 4211
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        end local 11 // int functionId
        45: .line 4213
            goto 49
        end local 9 // boolean parseBody
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int top java.lang.Object
      StackMap stack: java.lang.Throwable
        46: astore 15
        47: .line 4214
            aload 0 /* this */
            aload 4 /* body */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        48: .line 4215
            aload 15
            athrow
        start local 9 // boolean parseBody
        49: .line 4214
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode long jdk.nashorn.internal.parser.ParserContextBlockNode long top int int java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 4 /* body */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        50: .line 4219
            iload 9 /* parseBody */
            ifeq 53
        51: .line 4220
            aload 1 /* functionNode */
            aload 10 /* endParserState */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setEndParserState:(Ljava/lang/Object;)V
        52: .line 4221
            goto 55
      StackMap locals:
      StackMap stack:
        53: aload 4 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 55
        54: .line 4227
            aload 4 /* body */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setStatements:(Ljava/util/List;)V
        55: .line 4230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnull 62
        56: .line 4235
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getId:()I
            invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getScriptFunctionData:(I)Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            astore 11 /* data */
        start local 11 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData data
        57: .line 4236
            aload 11 /* data */
            ifnull 62
        58: .line 4239
            aload 1 /* functionNode */
            aload 11 /* data */
            invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getFunctionFlags:()I
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        59: .line 4242
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.hasNestedEval:()Z
            ifeq 62
        60: .line 4243
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 61
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.hasScopeBlock:()Z
            ifne 61
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        61: .line 4244
      StackMap locals: jdk.nashorn.internal.runtime.RecompilableScriptFunctionData
      StackMap stack:
            aload 4 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        end local 11 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData data
        62: .line 4248
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.ir.Block
            dup
            lload 5 /* bodyToken */
            iload 8 /* bodyFinish */
            aload 4 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 32
            ior
            aload 4 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            astore 7 /* functionBody */
        start local 7 // jdk.nashorn.internal.ir.Block functionBody
        63: .line 4249
            aload 7 /* functionBody */
            areturn
        end local 10 // java.lang.Object endParserState
        end local 9 // boolean parseBody
        end local 8 // int bodyFinish
        end local 7 // jdk.nashorn.internal.ir.Block functionBody
        end local 5 // long bodyToken
        end local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        end local 2 // long lastToken
        end local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   64     0               this  Ljdk/nashorn/internal/parser/Parser;
            0   64     1       functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            1   64     2          lastToken  J
            2   64     4               body  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            3   64     5          bodyToken  J
           63   64     7       functionBody  Ljdk/nashorn/internal/ir/Block;
            4   64     8         bodyFinish  I
           13   46     9          parseBody  Z
           49   64     9          parseBody  Z
            5   64    10     endParserState  Ljava/lang/Object;
           10   45    11         functionId  I
           16   26    12               expr  Ljdk/nashorn/internal/ir/Expression;
           22   26    13         lastFinish  I
           25   26    14         returnNode  Ljdk/nashorn/internal/ir/ReturnNode;
           31   42    12  prevFunctionDecls  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
           57   62    11               data  Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
      Exception table:
        from    to  target  type
          32    35      35  any
           5    46      46  any
    MethodParameters:
              Name  Flags
      functionNode  final

  private boolean skipFunctionBody(jdk.nashorn.internal.parser.ParserContextFunctionNode);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         0: .line 4253
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnonnull 2
         1: .line 4255
            iconst_0
            ireturn
         2: .line 4258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getId:()I
            invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getScriptFunctionData:(I)Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            astore 2 /* data */
        start local 2 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData data
         3: .line 4259
            aload 2 /* data */
            ifnonnull 5
         4: .line 4263
            iconst_0
            ireturn
         5: .line 4265
      StackMap locals: jdk.nashorn.internal.runtime.RecompilableScriptFunctionData
      StackMap stack:
            aload 2 /* data */
            invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getEndParserState:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.Parser$ParserState
            astore 3 /* parserState */
        start local 3 // jdk.nashorn.internal.parser.Parser$ParserState parserState
         6: .line 4266
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 7
            aload 3 /* parserState */
            ifnonnull 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 4268
      StackMap locals: jdk.nashorn.internal.parser.Parser$ParserState
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            invokevirtual jdk.nashorn.internal.parser.TokenStream.last:()I
            if_icmpge 19
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.position:I
            if_icmpge 19
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.position:I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            invokevirtual jdk.nashorn.internal.parser.TokenStream.last:()I
            invokevirtual jdk.nashorn.internal.parser.TokenStream.get:(I)J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            if_icmpgt 19
         8: .line 4270
            goto 18
         9: .line 4271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iconst_1
            iadd
            invokevirtual jdk.nashorn.internal.parser.TokenStream.get:(I)J
            lstore 4 /* nextToken */
        start local 4 // long nextToken
        10: .line 4272
            lload 4 /* nextToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.position:I
            if_icmpne 17
            lload 4 /* nextToken */
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 17
        11: .line 4273
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            invokevirtual jdk.nashorn.internal.parser.TokenStream.get:(I)J
            putfield jdk.nashorn.internal.parser.Parser.token:J
        12: .line 4274
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            putfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
        13: .line 4275
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        14: .line 4276
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 16
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 15
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.position:I
            if_icmpeq 16
      StackMap locals: long
      StackMap stack:
        15: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        16: .line 4277
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // long nextToken
        17: .line 4270
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iconst_1
            iadd
            putfield jdk.nashorn.internal.parser.Parser.k:I
      StackMap locals:
      StackMap stack:
        18: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            invokevirtual jdk.nashorn.internal.parser.TokenStream.last:()I
            if_icmplt 9
        19: .line 4282
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            invokevirtual jdk.nashorn.internal.parser.TokenStream.reset:()V
        20: .line 4283
            aload 0 /* this */
            aload 3 /* parserState */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.stream:Ljdk/nashorn/internal/parser/TokenStream;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.scripting:Z
            ifeq 21
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._no_syntax_extensions:Z
            ifne 21
            iconst_1
            goto 22
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.runtime.RecompilableScriptFunctionData jdk.nashorn.internal.parser.Parser$ParserState
      StackMap stack: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.Parser$ParserState jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.Lexer jdk.nashorn.internal.parser.TokenStream
        21: iconst_0
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.runtime.RecompilableScriptFunctionData jdk.nashorn.internal.parser.Parser$ParserState
      StackMap stack: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.Parser$ParserState jdk.nashorn.internal.runtime.Source jdk.nashorn.internal.parser.Lexer jdk.nashorn.internal.parser.TokenStream int
        22: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._es6:Z
            invokevirtual jdk.nashorn.internal.parser.Parser$ParserState.createLexer:(Ljdk/nashorn/internal/runtime/Source;Ljdk/nashorn/internal/parser/Lexer;Ljdk/nashorn/internal/parser/TokenStream;ZZ)Ljdk/nashorn/internal/parser/Lexer;
            putfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
        23: .line 4284
            aload 0 /* this */
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.line:I
            putfield jdk.nashorn.internal.parser.Parser.line:I
        24: .line 4285
            aload 0 /* this */
            aload 3 /* parserState */
            getfield jdk.nashorn.internal.parser.Parser$ParserState.linePosition:I
            putfield jdk.nashorn.internal.parser.Parser.linePosition:I
        25: .line 4288
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            putfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
        26: .line 4289
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
        27: .line 4291
            iconst_1
            ireturn
        end local 3 // jdk.nashorn.internal.parser.Parser$ParserState parserState
        end local 2 // jdk.nashorn.internal.runtime.RecompilableScriptFunctionData data
        end local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Ljdk/nashorn/internal/parser/Parser;
            0   28     1  functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            3   28     2          data  Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            6   28     3   parserState  Ljdk/nashorn/internal/parser/Parser$ParserState;
           10   17     4     nextToken  J
    MethodParameters:
              Name  Flags
      functionNode  final

  private void printAST(jdk.nashorn.internal.ir.FunctionNode);
    descriptor: (Ljdk/nashorn/internal/ir/FunctionNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.FunctionNode functionNode
         0: .line 4319
            aload 1 /* functionNode */
            iconst_4
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getDebugFlag:(I)Z
            ifeq 2
         1: .line 4320
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            new jdk.nashorn.internal.ir.debug.ASTWriter
            dup
            aload 1 /* functionNode */
            invokespecial jdk.nashorn.internal.ir.debug.ASTWriter.<init>:(Ljdk/nashorn/internal/ir/Node;)V
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
         2: .line 4323
      StackMap locals:
      StackMap stack:
            aload 1 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getDebugFlag:(I)Z
            ifeq 4
         3: .line 4324
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            invokevirtual jdk.nashorn.internal.runtime.ScriptEnvironment.getErr:()Ljava/io/PrintWriter;
            new jdk.nashorn.internal.ir.debug.PrintVisitor
            dup
            aload 1 /* functionNode */
            iconst_1
            iconst_0
            invokespecial jdk.nashorn.internal.ir.debug.PrintVisitor.<init>:(Ljdk/nashorn/internal/ir/Node;ZZ)V
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
         4: .line 4326
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljdk/nashorn/internal/parser/Parser;
            0    5     1  functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
    MethodParameters:
              Name  Flags
      functionNode  final

  private void addFunctionDeclarations(jdk.nashorn.internal.parser.ParserContextFunctionNode);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         0: .line 4329
            aconst_null
            astore 2 /* lastDecl */
        start local 2 // jdk.nashorn.internal.ir.VarNode lastDecl
         1: .line 4330
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         2: goto 9
         3: .line 4331
      StackMap locals: jdk.nashorn.internal.ir.VarNode int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 4 /* decl */
        start local 4 // jdk.nashorn.internal.ir.Statement decl
         4: .line 4332
            aload 2 /* lastDecl */
            ifnonnull 7
            aload 4 /* decl */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 7
         5: .line 4333
            aload 4 /* decl */
            checkcast jdk.nashorn.internal.ir.VarNode
            iconst_4
            invokevirtual jdk.nashorn.internal.ir.VarNode.setFlag:(I)Ljdk/nashorn/internal/ir/VarNode;
            dup
            astore 2 /* lastDecl */
            astore 4 /* decl */
         6: .line 4334
            aload 1 /* functionNode */
            sipush 1024
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         7: .line 4336
      StackMap locals: jdk.nashorn.internal.ir.Statement
      StackMap stack:
            aload 0 /* this */
            aload 4 /* decl */
            invokevirtual jdk.nashorn.internal.parser.Parser.prependStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 4 // jdk.nashorn.internal.ir.Statement decl
         8: .line 4330
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            ifge 3
        end local 3 // int i
        10: .line 4338
            return
        end local 2 // jdk.nashorn.internal.ir.VarNode lastDecl
        end local 1 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Ljdk/nashorn/internal/parser/Parser;
            0   11     1  functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            1   11     2      lastDecl  Ljdk/nashorn/internal/ir/VarNode;
            2   10     3             i  I
            4    8     4          decl  Ljdk/nashorn/internal/ir/Statement;
    MethodParameters:
              Name  Flags
      functionNode  final

  private jdk.nashorn.internal.ir.RuntimeNode referenceError(jdk.nashorn.internal.ir.Expression, jdk.nashorn.internal.ir.Expression, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/RuntimeNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression lhs
        start local 2 // jdk.nashorn.internal.ir.Expression rhs
        start local 3 // boolean earlyError
         0: .line 4341
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifne 1
            iload 3 /* earlyError */
            ifeq 2
         1: .line 4342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.JSErrorType.REFERENCE_ERROR:Ljdk/nashorn/internal/runtime/JSErrorType;
            ldc "invalid.lvalue"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljdk/nashorn/internal/runtime/JSErrorType;Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         2: .line 4344
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* args */
        start local 4 // java.util.ArrayList args
         3: .line 4345
            aload 4 /* args */
            aload 1 /* lhs */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 4346
            aload 2 /* rhs */
            ifnonnull 7
         5: .line 4347
            aload 4 /* args */
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JI)Ljdk/nashorn/internal/ir/LiteralNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         6: .line 4348
            goto 8
         7: .line 4349
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 4 /* args */
            aload 2 /* rhs */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         8: .line 4351
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.toString:()Ljava/lang/String;
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/LiteralNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         9: .line 4352
            new jdk.nashorn.internal.ir.RuntimeNode
            dup
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            aload 1 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            getstatic jdk.nashorn.internal.ir.RuntimeNode$Request.REFERENCE_ERROR:Ljdk/nashorn/internal/ir/RuntimeNode$Request;
            aload 4 /* args */
            invokespecial jdk.nashorn.internal.ir.RuntimeNode.<init>:(JILjdk/nashorn/internal/ir/RuntimeNode$Request;Ljava/util/List;)V
            areturn
        end local 4 // java.util.ArrayList args
        end local 3 // boolean earlyError
        end local 2 // jdk.nashorn.internal.ir.Expression rhs
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljdk/nashorn/internal/parser/Parser;
            0   10     1         lhs  Ljdk/nashorn/internal/ir/Expression;
            0   10     2         rhs  Ljdk/nashorn/internal/ir/Expression;
            0   10     3  earlyError  Z
            3   10     4        args  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
    MethodParameters:
            Name  Flags
      lhs         final
      rhs         final
      earlyError  final

  private jdk.nashorn.internal.ir.Expression unaryExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=9, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4381
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* unaryLine */
        start local 1 // int unaryLine
         1: .line 4382
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* unaryToken */
        start local 2 // long unaryToken
         2: .line 4384
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 9
                    6: 9
                   18: 9
                   19: 12
                   22: 9
                   23: 12
                   54: 9
                   64: 3
                   95: 9
                   97: 9
              default: 18
          }
         3: .line 4386
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 4387
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expr */
        start local 4 // jdk.nashorn.internal.ir.Expression expr
         5: .line 4388
            aload 4 /* expr */
            instanceof jdk.nashorn.internal.ir.BaseNode
            ifne 6
            aload 4 /* expr */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 7
         6: .line 4389
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 2 /* unaryToken */
            aload 4 /* expr */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
         7: .line 4391
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 1 /* unaryLine */
            lload 2 /* unaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 4 /* expr */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
         8: .line 4392
            lload 2 /* unaryToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            iconst_1
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JIZ)Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        end local 4 // jdk.nashorn.internal.ir.Expression expr
         9: .line 4400
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 4401
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expr */
        start local 4 // jdk.nashorn.internal.ir.Expression expr
        11: .line 4402
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 2 /* unaryToken */
            aload 4 /* expr */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 4 // jdk.nashorn.internal.ir.Expression expr
        12: .line 4406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 5 /* opType */
        start local 5 // jdk.nashorn.internal.parser.TokenType opType
        13: .line 4407
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        14: .line 4409
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.leftHandSideExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 6 /* lhs */
        start local 6 // jdk.nashorn.internal.ir.Expression lhs
        15: .line 4411
            aload 6 /* lhs */
            ifnonnull 17
        16: .line 4412
            aload 0 /* this */
            ldc "expected.lvalue"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        17: .line 4415
      StackMap locals: jdk.nashorn.internal.parser.Parser int long top jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            lload 2 /* unaryToken */
            aload 5 /* opType */
            aload 6 /* lhs */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIncDecExpression:(JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 6 // jdk.nashorn.internal.ir.Expression lhs
        end local 5 // jdk.nashorn.internal.parser.TokenType opType
        18: .line 4421
      StackMap locals: jdk.nashorn.internal.parser.Parser int long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.leftHandSideExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
        19: .line 4423
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.last:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 28
        20: .line 4424
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            tableswitch { // 19 - 23
                   19: 21
                   20: 28
                   21: 28
                   22: 28
                   23: 21
              default: 28
          }
        21: .line 4427
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 5 /* opToken */
        start local 5 // long opToken
        22: .line 4428
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 7 /* opType */
        start local 7 // jdk.nashorn.internal.parser.TokenType opType
        23: .line 4429
            aload 4 /* expression */
            astore 8 /* lhs */
        start local 8 // jdk.nashorn.internal.ir.Expression lhs
        24: .line 4431
            aload 8 /* lhs */
            ifnonnull 26
        25: .line 4432
            aload 0 /* this */
            ldc "expected.lvalue"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        26: .line 4434
      StackMap locals: long jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        27: .line 4436
            aload 0 /* this */
            lload 5 /* opToken */
            aload 7 /* opType */
            aload 8 /* lhs */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIncDecExpression:(JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 8 // jdk.nashorn.internal.ir.Expression lhs
        end local 7 // jdk.nashorn.internal.parser.TokenType opType
        end local 5 // long opToken
        28: .line 4442
      StackMap locals:
      StackMap stack:
            aload 4 /* expression */
            ifnonnull 30
        29: .line 4443
            aload 0 /* this */
            ldc "expected.operand"
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getNameOrType:()Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        30: .line 4446
      StackMap locals:
      StackMap stack:
            aload 4 /* expression */
            areturn
        end local 4 // jdk.nashorn.internal.ir.Expression expression
        end local 2 // long unaryToken
        end local 1 // int unaryLine
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   31     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   31     1   unaryLine  I
            2   31     2  unaryToken  J
            5    9     4        expr  Ljdk/nashorn/internal/ir/Expression;
           11   12     4        expr  Ljdk/nashorn/internal/ir/Expression;
           13   18     5      opType  Ljdk/nashorn/internal/parser/TokenType;
           15   18     6         lhs  Ljdk/nashorn/internal/ir/Expression;
           19   31     4  expression  Ljdk/nashorn/internal/ir/Expression;
           22   28     5     opToken  J
           23   28     7      opType  Ljdk/nashorn/internal/parser/TokenType;
           24   28     8         lhs  Ljdk/nashorn/internal/ir/Expression;

  private jdk.nashorn.internal.ir.Expression verifyIncDecExpression(long, jdk.nashorn.internal.parser.TokenType, jdk.nashorn.internal.ir.Expression, boolean);
    descriptor: (JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long unaryToken
        start local 3 // jdk.nashorn.internal.parser.TokenType opType
        start local 4 // jdk.nashorn.internal.ir.Expression lhs
        start local 5 // boolean isPostfix
         0: .line 4450
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 4 /* lhs */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 4452
      StackMap locals:
      StackMap stack:
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifne 5
         2: .line 4453
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IndexNode
            ifne 5
         3: .line 4454
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifne 5
         4: .line 4455
            aload 0 /* this */
            aload 4 /* lhs */
            aconst_null
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._early_lvalue_error:Z
            invokevirtual jdk.nashorn.internal.parser.Parser.referenceError:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/RuntimeNode;
            areturn
         5: .line 4458
      StackMap locals:
      StackMap stack:
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 9
         6: .line 4459
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokestatic jdk.nashorn.internal.parser.Parser.checkIdentLValue:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifne 8
         7: .line 4460
            aload 0 /* this */
            aload 4 /* lhs */
            aconst_null
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.referenceError:(Ljdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/RuntimeNode;
            areturn
         8: .line 4462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            new java.lang.StringBuilder
            dup
            ldc "operand for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* opType */
            invokevirtual jdk.nashorn.internal.parser.TokenType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " operator"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         9: .line 4465
      StackMap locals:
      StackMap stack:
            lload 1 /* unaryToken */
            aload 3 /* opType */
            aload 4 /* lhs */
            iload 5 /* isPostfix */
            invokestatic jdk.nashorn.internal.parser.Parser.incDecExpression:(JLjdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/ir/Expression;Z)Ljdk/nashorn/internal/ir/UnaryNode;
            areturn
        end local 5 // boolean isPostfix
        end local 4 // jdk.nashorn.internal.ir.Expression lhs
        end local 3 // jdk.nashorn.internal.parser.TokenType opType
        end local 1 // long unaryToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljdk/nashorn/internal/parser/Parser;
            0   10     1  unaryToken  J
            0   10     3      opType  Ljdk/nashorn/internal/parser/TokenType;
            0   10     4         lhs  Ljdk/nashorn/internal/ir/Expression;
            0   10     5   isPostfix  Z
    MethodParameters:
            Name  Flags
      unaryToken  final
      opType      final
      lhs         final
      isPostfix   final

  protected jdk.nashorn.internal.ir.Expression expression();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4566
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Z)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Expression expression(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean noIn
         0: .line 4570
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 2 /* assignmentExpression */
        start local 2 // jdk.nashorn.internal.ir.Expression assignmentExpression
         1: .line 4571
            goto 14
         2: .line 4572
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* commaToken */
        start local 3 // long commaToken
         3: .line 4573
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 4575
            iconst_0
            istore 5 /* rhsRestParameter */
        start local 5 // boolean rhsRestParameter
         5: .line 4576
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 9
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 9
         6: .line 4579
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isRestParameterEndOfArrowFunctionParameterList:()Z
            ifeq 9
         7: .line 4580
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 4581
            iconst_1
            istore 5 /* rhsRestParameter */
         9: .line 4585
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 6 /* rhs */
        start local 6 // jdk.nashorn.internal.ir.Expression rhs
        10: .line 4587
            iload 5 /* rhsRestParameter */
            ifeq 13
        11: .line 4588
            aload 6 /* rhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsRestParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 6 /* rhs */
        12: .line 4592
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 13
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 4595
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 3 /* commaToken */
            aload 2 /* assignmentExpression */
            aload 6 /* rhs */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 2 /* assignmentExpression */
        end local 6 // jdk.nashorn.internal.ir.Expression rhs
        end local 5 // boolean rhsRestParameter
        end local 3 // long commaToken
        14: .line 4571
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 2
        15: .line 4597
            aload 2 /* assignmentExpression */
            areturn
        end local 2 // jdk.nashorn.internal.ir.Expression assignmentExpression
        end local 1 // boolean noIn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   16     0                  this  Ljdk/nashorn/internal/parser/Parser;
            0   16     1                  noIn  Z
            1   16     2  assignmentExpression  Ljdk/nashorn/internal/ir/Expression;
            3   14     3            commaToken  J
            5   14     5      rhsRestParameter  Z
           10   14     6                   rhs  Ljdk/nashorn/internal/ir/Expression;
    MethodParameters:
      Name  Flags
      noIn  final

  private jdk.nashorn.internal.ir.Expression expression(int, boolean);
    descriptor: (IZ)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int minPrecedence
        start local 2 // boolean noIn
         0: .line 4601
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            iload 1 /* minPrecedence */
            iload 2 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 2 // boolean noIn
        end local 1 // int minPrecedence
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  minPrecedence  I
            0    1     2           noIn  Z
    MethodParameters:
               Name  Flags
      minPrecedence  final
      noIn           final

  private jdk.nashorn.internal.ir.JoinPredecessorExpression joinPredecessorExpression();
    descriptor: ()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4605
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Expression expression(jdk.nashorn.internal.ir.Expression, int, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=12, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression exprLhs
        start local 2 // int minPrecedence
        start local 3 // boolean noIn
         0: .line 4610
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            istore 4 /* precedence */
        start local 4 // int precedence
         1: .line 4611
            aload 1 /* exprLhs */
            astore 5 /* lhs */
        start local 5 // jdk.nashorn.internal.ir.Expression lhs
         2: .line 4614
            goto 34
         3: .line 4616
      StackMap locals: int jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* op */
        start local 6 // long op
         4: .line 4618
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
         5: .line 4620
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 4624
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* trueExpr */
        start local 8 // jdk.nashorn.internal.ir.Expression trueExpr
         7: .line 4626
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         8: .line 4629
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            iload 3 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* falseExpr */
        start local 9 // jdk.nashorn.internal.ir.Expression falseExpr
         9: .line 4632
            new jdk.nashorn.internal.ir.TernaryNode
            dup
            lload 6 /* op */
            aload 5 /* lhs */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 8 /* trueExpr */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 9 /* falseExpr */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.TernaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            astore 5 /* lhs */
        end local 9 // jdk.nashorn.internal.ir.Expression falseExpr
        end local 8 // jdk.nashorn.internal.ir.Expression trueExpr
        10: .line 4633
            goto 33
        11: .line 4635
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        12: .line 4639
            lload 6 /* op */
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 13
            iconst_1
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 9 /* isAssign */
        start local 9 // boolean isAssign
        15: .line 4640
            iload 9 /* isAssign */
            ifeq 17
        16: .line 4641
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            aload 5 /* lhs */
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
        17: .line 4644
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int int jdk.nashorn.internal.ir.Expression long top int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* rhs */
        start local 8 // jdk.nashorn.internal.ir.Expression rhs
        18: .line 4646
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            istore 10 /* nextPrecedence */
        start local 10 // int nextPrecedence
        19: .line 4649
            goto 22
        20: .line 4652
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int int jdk.nashorn.internal.ir.Expression long jdk.nashorn.internal.ir.Expression int int
      StackMap stack:
            aload 0 /* this */
            aload 8 /* rhs */
            iload 10 /* nextPrecedence */
            iload 3 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(Ljdk/nashorn/internal/ir/Expression;IZ)Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* rhs */
        21: .line 4653
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            istore 10 /* nextPrecedence */
        22: .line 4649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            iload 3 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.TokenType.isOperator:(Z)Z
            ifeq 30
        23: .line 4650
            iload 10 /* nextPrecedence */
            iload 4 /* precedence */
            if_icmpgt 20
        24: .line 4651
            iload 10 /* nextPrecedence */
            iload 4 /* precedence */
            if_icmpne 30
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.isLeftAssociative:()Z
            ifeq 20
        end local 10 // int nextPrecedence
        25: .line 4655
            goto 30
        end local 8 // jdk.nashorn.internal.ir.Expression rhs
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int int jdk.nashorn.internal.ir.Expression long top int
      StackMap stack: java.lang.Throwable
        26: astore 11
        27: .line 4656
            iload 9 /* isAssign */
            ifeq 29
        28: .line 4657
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        29: .line 4659
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int int jdk.nashorn.internal.ir.Expression long top int top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        start local 8 // jdk.nashorn.internal.ir.Expression rhs
        30: .line 4656
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int int jdk.nashorn.internal.ir.Expression long jdk.nashorn.internal.ir.Expression int
      StackMap stack:
            iload 9 /* isAssign */
            ifeq 32
        31: .line 4657
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        32: .line 4660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 6 /* op */
            aload 5 /* lhs */
            aload 8 /* rhs */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAssignment:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* lhs */
        end local 9 // boolean isAssign
        end local 8 // jdk.nashorn.internal.ir.Expression rhs
        33: .line 4663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            istore 4 /* precedence */
        end local 6 // long op
        34: .line 4614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            iload 3 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.TokenType.isOperator:(Z)Z
            ifeq 35
            iload 4 /* precedence */
            iload 2 /* minPrecedence */
            if_icmpge 3
        35: .line 4666
      StackMap locals:
      StackMap stack:
            aload 5 /* lhs */
            areturn
        end local 5 // jdk.nashorn.internal.ir.Expression lhs
        end local 4 // int precedence
        end local 3 // boolean noIn
        end local 2 // int minPrecedence
        end local 1 // jdk.nashorn.internal.ir.Expression exprLhs
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   36     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   36     1         exprLhs  Ljdk/nashorn/internal/ir/Expression;
            0   36     2   minPrecedence  I
            0   36     3            noIn  Z
            1   36     4      precedence  I
            2   36     5             lhs  Ljdk/nashorn/internal/ir/Expression;
            4   34     6              op  J
            7   10     8        trueExpr  Ljdk/nashorn/internal/ir/Expression;
            9   10     9       falseExpr  Ljdk/nashorn/internal/ir/Expression;
           18   26     8             rhs  Ljdk/nashorn/internal/ir/Expression;
           30   33     8             rhs  Ljdk/nashorn/internal/ir/Expression;
           15   33     9        isAssign  Z
           19   25    10  nextPrecedence  I
      Exception table:
        from    to  target  type
          17    26      26  any
    MethodParameters:
               Name  Flags
      exprLhs        final
      minPrecedence  final
      noIn           final

  protected jdk.nashorn.internal.ir.Expression assignmentExpression(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean noIn
         0: .line 4686
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.inGeneratorFunction:()Z
            ifeq 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 2
         1: .line 4687
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.yieldExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            areturn
         2: .line 4690
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* startToken */
        start local 2 // long startToken
         3: .line 4691
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 4 /* startLine */
        start local 4 // int startLine
         4: .line 4692
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.conditionalExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* exprLhs */
        start local 5 // jdk.nashorn.internal.ir.Expression exprLhs
         5: .line 4694
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 14
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 14
         6: .line 4695
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkNoLineTerminator:()Z
            ifeq 14
         7: .line 4697
            aload 5 /* exprLhs */
            instanceof jdk.nashorn.internal.ir.ExpressionList
            ifeq 12
         8: .line 4698
            aload 5 /* exprLhs */
            checkcast jdk.nashorn.internal.ir.ExpressionList
            invokevirtual jdk.nashorn.internal.ir.ExpressionList.getExpressions:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 9
            aconst_null
            goto 10
      StackMap locals: long int jdk.nashorn.internal.ir.Expression
      StackMap stack:
         9: aload 5 /* exprLhs */
            checkcast jdk.nashorn.internal.ir.ExpressionList
            invokevirtual jdk.nashorn.internal.ir.ExpressionList.getExpressions:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Expression
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.ir.Expression
        10: astore 6 /* paramListExpr */
        start local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        11: .line 4699
            goto 13
        end local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        12: .line 4700
      StackMap locals:
      StackMap stack:
            aload 5 /* exprLhs */
            astore 6 /* paramListExpr */
        start local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        13: .line 4702
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            lload 2 /* startToken */
            iload 4 /* startLine */
            aload 6 /* paramListExpr */
            invokevirtual jdk.nashorn.internal.parser.Parser.arrowFunction:(JILjdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        14: .line 4705
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 15
            aload 5 /* exprLhs */
            instanceof jdk.nashorn.internal.ir.ExpressionList
            ifeq 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 4707
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Parser.isAssignmentOperator:(Ljdk/nashorn/internal/parser/TokenType;)Z
            ifeq 32
        16: .line 4708
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 17
            iconst_1
            goto 18
      StackMap locals:
      StackMap stack:
        17: iconst_0
      StackMap locals:
      StackMap stack: int
        18: istore 6 /* isAssign */
        start local 6 // boolean isAssign
        19: .line 4709
            iload 6 /* isAssign */
            ifeq 21
        20: .line 4710
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            aload 5 /* exprLhs */
            invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
        21: .line 4713
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 7 /* assignToken */
        start local 7 // long assignToken
        22: .line 4714
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        23: .line 4715
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* exprRhs */
        start local 9 // jdk.nashorn.internal.ir.Expression exprRhs
        24: .line 4716
            aload 0 /* this */
            lload 7 /* assignToken */
            aload 5 /* exprLhs */
            aload 9 /* exprRhs */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyAssignment:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
            astore 11
        25: .line 4718
            iload 6 /* isAssign */
            ifeq 27
        26: .line 4719
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        27: .line 4716
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.ir.Expression int long jdk.nashorn.internal.ir.Expression top jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 11
            areturn
        end local 9 // jdk.nashorn.internal.ir.Expression exprRhs
        end local 7 // long assignToken
        28: .line 4717
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.ir.Expression int
      StackMap stack: java.lang.Throwable
            astore 10
        29: .line 4718
            iload 6 /* isAssign */
            ifeq 31
        30: .line 4719
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        31: .line 4721
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.ir.Expression int top top top java.lang.Throwable
      StackMap stack:
            aload 10
            athrow
        end local 6 // boolean isAssign
        32: .line 4723
      StackMap locals: jdk.nashorn.internal.parser.Parser int long int jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 5 /* exprLhs */
            areturn
        end local 5 // jdk.nashorn.internal.ir.Expression exprLhs
        end local 4 // int startLine
        end local 2 // long startToken
        end local 1 // boolean noIn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   33     1           noIn  Z
            3   33     2     startToken  J
            4   33     4      startLine  I
            5   33     5        exprLhs  Ljdk/nashorn/internal/ir/Expression;
           11   12     6  paramListExpr  Ljdk/nashorn/internal/ir/Expression;
           13   14     6  paramListExpr  Ljdk/nashorn/internal/ir/Expression;
           19   32     6       isAssign  Z
           22   28     7    assignToken  J
           24   28     9        exprRhs  Ljdk/nashorn/internal/ir/Expression;
      Exception table:
        from    to  target  type
          21    25      28  any
    MethodParameters:
      Name  Flags
      noIn  final

  private static boolean isAssignmentOperator(jdk.nashorn.internal.parser.TokenType);
    descriptor: (Ljdk/nashorn/internal/parser/TokenType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.TokenType type
         0: .line 4731
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* type */
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 12
                   10: 1
                   13: 1
                   17: 1
                   20: 1
                   24: 1
                   27: 1
                   32: 1
                   34: 1
                   41: 1
                   43: 1
                   48: 1
                   51: 1
              default: 2
          }
         1: .line 4744
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 4746
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.parser.TokenType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  type  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
      Name  Flags
      type  final

  private jdk.nashorn.internal.ir.Expression conditionalExpression(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // boolean noIn
         0: .line 4753
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.getPrecedence:()I
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:(IZ)Ljdk/nashorn/internal/ir/Expression;
            areturn
        end local 1 // boolean noIn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;
            0    1     1  noIn  Z
    MethodParameters:
      Name  Flags
      noIn  final

  private jdk.nashorn.internal.ir.Expression arrowFunction(long, int, jdk.nashorn.internal.ir.Expression);
    descriptor: (JILjdk/nashorn/internal/ir/Expression;)Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=15, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // long startToken
        start local 3 // int functionLine
        start local 4 // jdk.nashorn.internal.ir.Expression paramListExpr
         0: .line 4765
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkNoLineTerminator:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 4766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         2: .line 4768
            lload 1 /* startToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            lstore 5 /* functionToken */
        start local 5 // long functionToken
         3: .line 4769
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 5 /* functionToken */
            lload 5 /* functionToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            new java.lang.StringBuilder
            dup
            ldc "=>:"
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* functionLine */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 7 /* name */
        start local 7 // jdk.nashorn.internal.ir.IdentNode name
         4: .line 4770
            aload 0 /* this */
            aload 7 /* name */
            lload 5 /* functionToken */
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 3 /* functionLine */
            aconst_null
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 8 /* functionNode */
        start local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
         5: .line 4771
            aload 8 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 4773
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
         7: .line 4775
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 9 /* parameterBlock */
        start local 9 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
         8: .line 4778
            aload 0 /* this */
            aload 4 /* paramListExpr */
            iload 3 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.convertArrowFunctionParameterList:(Ljdk/nashorn/internal/ir/Expression;I)Ljava/util/List;
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
         9: .line 4779
            aload 8 /* functionNode */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        10: .line 4781
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSimpleParameterList:()Z
            ifne 16
        11: .line 4782
            aload 0 /* this */
            aload 9 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.markEvalInArrowParameterList:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)V
        12: .line 4784
            goto 16
        end local 10 // java.util.List parameters
      StackMap locals: jdk.nashorn.internal.parser.Parser long int jdk.nashorn.internal.ir.Expression long jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.parser.ParserContextBlockNode
      StackMap stack: java.lang.Throwable
        13: astore 11
        14: .line 4785
            aload 0 /* this */
            aload 9 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        15: .line 4786
            aload 11
            athrow
        start local 10 // java.util.List parameters
        16: .line 4785
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            aload 9 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        17: .line 4787
            aload 0 /* this */
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.functionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/ir/Block;
            astore 11 /* functionBody */
        start local 11 // jdk.nashorn.internal.ir.Block functionBody
        18: .line 4789
            aload 11 /* functionBody */
            aload 9 /* parameterBlock */
            invokestatic jdk.nashorn.internal.parser.Parser.maybeWrapBodyInParameterBlock:(Ljdk/nashorn/internal/ir/Block;Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/ir/Block;
            astore 11 /* functionBody */
        19: .line 4791
            aload 0 /* this */
            aload 10 /* parameters */
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyParameterList:(Ljava/util/List;Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        20: .line 4793
            aload 0 /* this */
        21: .line 4794
            aload 8 /* functionNode */
        22: .line 4795
            lload 5 /* functionToken */
        23: .line 4796
            aload 7 /* name */
        24: .line 4797
            aload 10 /* parameters */
        25: .line 4798
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        26: .line 4799
            iload 3 /* functionLine */
        27: .line 4800
            aload 11 /* functionBody */
        28: .line 4793
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 12 /* function */
        start local 12 // jdk.nashorn.internal.ir.FunctionNode function
        29: .line 4801
            aload 12 /* function */
            astore 14
        30: .line 4803
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        31: .line 4801
            aload 14
            areturn
        end local 12 // jdk.nashorn.internal.ir.FunctionNode function
        end local 11 // jdk.nashorn.internal.ir.Block functionBody
        end local 10 // java.util.List parameters
        end local 9 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        32: .line 4802
      StackMap locals: jdk.nashorn.internal.parser.Parser long int jdk.nashorn.internal.ir.Expression long jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack: java.lang.Throwable
            astore 13
        33: .line 4803
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        34: .line 4804
            aload 13
            athrow
        end local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode functionNode
        end local 7 // jdk.nashorn.internal.ir.IdentNode name
        end local 5 // long functionToken
        end local 4 // jdk.nashorn.internal.ir.Expression paramListExpr
        end local 3 // int functionLine
        end local 1 // long startToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   35     0            this  Ljdk/nashorn/internal/parser/Parser;
            0   35     1      startToken  J
            0   35     3    functionLine  I
            0   35     4   paramListExpr  Ljdk/nashorn/internal/ir/Expression;
            3   35     5   functionToken  J
            4   35     7            name  Ljdk/nashorn/internal/ir/IdentNode;
            5   35     8    functionNode  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            8   32     9  parameterBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            9   13    10      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           16   32    10      parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           18   32    11    functionBody  Ljdk/nashorn/internal/ir/Block;
           29   32    12        function  Ljdk/nashorn/internal/ir/FunctionNode;
      Exception table:
        from    to  target  type
           8    13      13  any
           7    30      32  any
    MethodParameters:
               Name  Flags
      startToken     final
      functionLine   final
      paramListExpr  final

  private void markEvalInArrowParameterList(jdk.nashorn.internal.parser.ParserContextBlockNode);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContextBlockNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
         0: .line 4808
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         1: .line 4809
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 3 /* current */
        start local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode current
         2: .line 4810
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 4 /* parent */
        start local 4 // jdk.nashorn.internal.parser.ParserContextFunctionNode parent
         3: .line 4812
            aload 4 /* parent */
            bipush 32
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getFlag:(I)I
            ifeq 8
         4: .line 4815
            aload 1 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextBlockNode java.util.Iterator jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.parser.ParserContextFunctionNode top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 5 /* st */
        start local 5 // jdk.nashorn.internal.ir.Statement st
         6: .line 4816
            aload 5 /* st */
            new jdk.nashorn.internal.parser.Parser$7
            dup
            aload 0 /* this */
            new jdk.nashorn.internal.ir.LexicalContext
            dup
            invokespecial jdk.nashorn.internal.ir.LexicalContext.<init>:()V
            aload 3 /* current */
            invokespecial jdk.nashorn.internal.parser.Parser$7.<init>:(Ljdk/nashorn/internal/parser/Parser;Ljdk/nashorn/internal/ir/LexicalContext;Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
            invokevirtual jdk.nashorn.internal.ir.Statement.accept:(Ljdk/nashorn/internal/ir/visitor/NodeVisitor;)Ljdk/nashorn/internal/ir/Node;
            pop
        end local 5 // jdk.nashorn.internal.ir.Statement st
         7: .line 4815
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 4828
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.parser.ParserContextBlockNode java.util.Iterator jdk.nashorn.internal.parser.ParserContextFunctionNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            return
        end local 4 // jdk.nashorn.internal.parser.ParserContextFunctionNode parent
        end local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode current
        end local 2 // java.util.Iterator iter
        end local 1 // jdk.nashorn.internal.parser.ParserContextBlockNode parameterBlock
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Ljdk/nashorn/internal/parser/Parser;
            0    9     1  parameterBlock  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            1    9     2            iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            2    9     3         current  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            3    9     4          parent  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            6    7     5              st  Ljdk/nashorn/internal/ir/Statement;
    MethodParameters:
                Name  Flags
      parameterBlock  final

  private java.util.List<jdk.nashorn.internal.ir.IdentNode> convertArrowFunctionParameterList(jdk.nashorn.internal.ir.Expression, int);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;I)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression paramListExpr
        start local 2 // int functionLine
         0: .line 4832
            aload 1 /* paramListExpr */
            ifnonnull 3
         1: .line 4834
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 3 /* parameters */
        start local 3 // java.util.List parameters
         2: .line 4835
            goto 16
        end local 3 // java.util.List parameters
      StackMap locals:
      StackMap stack:
         3: aload 1 /* paramListExpr */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifne 4
            aload 1 /* paramListExpr */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.ir.Expression.isTokenType:(Ljdk/nashorn/internal/parser/TokenType;)Z
            ifne 4
            aload 0 /* this */
            aload 1 /* paramListExpr */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifeq 6
         4: .line 4836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* paramListExpr */
            iconst_0
            iload 2 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyArrowParameter:(Ljdk/nashorn/internal/ir/Expression;II)Ljdk/nashorn/internal/ir/IdentNode;
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 3 /* parameters */
        start local 3 // java.util.List parameters
         5: .line 4837
            goto 16
        end local 3 // java.util.List parameters
      StackMap locals:
      StackMap stack:
         6: aload 1 /* paramListExpr */
            instanceof jdk.nashorn.internal.ir.BinaryNode
            ifeq 15
            aload 1 /* paramListExpr */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 15
         7: .line 4838
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* parameters */
        start local 3 // java.util.List parameters
         8: .line 4839
            aload 1 /* paramListExpr */
            astore 4 /* car */
        start local 4 // jdk.nashorn.internal.ir.Expression car
         9: .line 4841
      StackMap locals: java.util.List jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 4 /* car */
            checkcast jdk.nashorn.internal.ir.BinaryNode
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.rhs:()Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* cdr */
        start local 5 // jdk.nashorn.internal.ir.Expression cdr
        10: .line 4842
            aload 3 /* parameters */
            iconst_0
            aload 0 /* this */
            aload 5 /* cdr */
            aload 3 /* parameters */
            invokeinterface java.util.List.size:()I
            iload 2 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyArrowParameter:(Ljdk/nashorn/internal/ir/Expression;II)Ljdk/nashorn/internal/ir/IdentNode;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        11: .line 4843
            aload 4 /* car */
            checkcast jdk.nashorn.internal.ir.BinaryNode
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.lhs:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* car */
        end local 5 // jdk.nashorn.internal.ir.Expression cdr
        12: .line 4844
            aload 4 /* car */
            instanceof jdk.nashorn.internal.ir.BinaryNode
            ifeq 13
            aload 4 /* car */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokestatic jdk.nashorn.internal.parser.Token.descType:(J)Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 9
        13: .line 4845
      StackMap locals:
      StackMap stack:
            aload 3 /* parameters */
            iconst_0
            aload 0 /* this */
            aload 4 /* car */
            aload 3 /* parameters */
            invokeinterface java.util.List.size:()I
            iload 2 /* functionLine */
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyArrowParameter:(Ljdk/nashorn/internal/ir/Expression;II)Ljdk/nashorn/internal/ir/IdentNode;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        end local 4 // jdk.nashorn.internal.ir.Expression car
        14: .line 4846
            goto 16
        end local 3 // java.util.List parameters
        15: .line 4847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "expected.arrow.parameter"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* paramListExpr */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        start local 3 // java.util.List parameters
        16: .line 4849
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* parameters */
            areturn
        end local 3 // java.util.List parameters
        end local 2 // int functionLine
        end local 1 // jdk.nashorn.internal.ir.Expression paramListExpr
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   17     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   17     1  paramListExpr  Ljdk/nashorn/internal/ir/Expression;
            0   17     2   functionLine  I
            2    3     3     parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            5    6     3     parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            8   15     3     parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
           16   17     3     parameters  Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
            9   14     4            car  Ljdk/nashorn/internal/ir/Expression;
           10   12     5            cdr  Ljdk/nashorn/internal/ir/Expression;
    Signature: (Ljdk/nashorn/internal/ir/Expression;I)Ljava/util/List<Ljdk/nashorn/internal/ir/IdentNode;>;
    MethodParameters:
               Name  Flags
      paramListExpr  final
      functionLine   final

  private jdk.nashorn.internal.ir.IdentNode verifyArrowParameter(jdk.nashorn.internal.ir.Expression, int, int);
    descriptor: (Ljdk/nashorn/internal/ir/Expression;II)Ljdk/nashorn/internal/ir/IdentNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=13, args_size=4
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Expression param
        start local 2 // int index
        start local 3 // int paramLine
         0: .line 4854
            aload 1 /* param */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 7
         1: .line 4855
            aload 1 /* param */
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 4 /* ident */
        start local 4 // jdk.nashorn.internal.ir.IdentNode ident
         2: .line 4856
            aload 0 /* this */
            aload 4 /* ident */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyStrictIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         3: .line 4857
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 5 /* currentFunction */
        start local 5 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
         4: .line 4858
            aload 5 /* currentFunction */
            ifnull 6
         5: .line 4859
            aload 5 /* currentFunction */
            aload 4 /* ident */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterBinding:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            pop
         6: .line 4861
      StackMap locals: jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 4 /* ident */
            areturn
        end local 5 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 4 // jdk.nashorn.internal.ir.IdentNode ident
         7: .line 4864
      StackMap locals:
      StackMap stack:
            aload 1 /* param */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.ir.Expression.isTokenType:(Ljdk/nashorn/internal/parser/TokenType;)Z
            ifeq 38
         8: .line 4865
            aload 1 /* param */
            checkcast jdk.nashorn.internal.ir.BinaryNode
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.lhs:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* lhs */
        start local 4 // jdk.nashorn.internal.ir.Expression lhs
         9: .line 4866
            aload 4 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            lstore 5 /* paramToken */
        start local 5 // long paramToken
        10: .line 4867
            aload 1 /* param */
            checkcast jdk.nashorn.internal.ir.BinaryNode
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.rhs:()Ljdk/nashorn/internal/ir/Expression;
            astore 7 /* initializer */
        start local 7 // jdk.nashorn.internal.ir.Expression initializer
        11: .line 4868
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 25
        12: .line 4870
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 8 /* ident */
        start local 8 // jdk.nashorn.internal.ir.IdentNode ident
        13: .line 4872
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 9 /* currentFunction */
        start local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        14: .line 4873
            aload 9 /* currentFunction */
            ifnull 24
        15: .line 4874
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 18
        16: .line 4875
            aload 9 /* currentFunction */
            aload 8 /* ident */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        17: .line 4876
            goto 22
        18: .line 4877
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int jdk.nashorn.internal.ir.Expression long jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.EQ_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 8 /* ident */
            lload 5 /* paramToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.parser.Parser.newUndefinedLiteral:(JI)Ljdk/nashorn/internal/ir/UnaryNode;
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 10 /* test */
        start local 10 // jdk.nashorn.internal.ir.BinaryNode test
        19: .line 4878
            new jdk.nashorn.internal.ir.TernaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 10 /* test */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 7 /* initializer */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 8 /* ident */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.TernaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            astore 11 /* value */
        start local 11 // jdk.nashorn.internal.ir.TernaryNode value
        20: .line 4879
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 8 /* ident */
            aload 11 /* value */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 12 /* assignment */
        start local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        21: .line 4880
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 3 /* paramLine */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getToken:()J
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getFinish:()I
            aload 12 /* assignment */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        end local 11 // jdk.nashorn.internal.ir.TernaryNode value
        end local 10 // jdk.nashorn.internal.ir.BinaryNode test
        22: .line 4883
      StackMap locals:
      StackMap stack:
            aload 9 /* currentFunction */
            aload 8 /* ident */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterBinding:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            pop
        23: .line 4884
            aload 9 /* currentFunction */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setSimpleParameterList:(Z)V
        24: .line 4886
      StackMap locals:
      StackMap stack:
            aload 8 /* ident */
            areturn
        end local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 8 // jdk.nashorn.internal.ir.IdentNode ident
        25: .line 4887
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* lhs */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifeq 50
        26: .line 4890
            aload 0 /* this */
            lload 5 /* paramToken */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            ldc "arguments[%d]"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDestructuredParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDefaultParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 8 /* ident */
        start local 8 // jdk.nashorn.internal.ir.IdentNode ident
        27: .line 4891
            aload 0 /* this */
            aload 1 /* param */
            lload 5 /* paramToken */
            iload 3 /* paramLine */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringParameterBindingPattern:(Ljdk/nashorn/internal/ir/Expression;JILjava/lang/String;)V
        28: .line 4893
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 9 /* currentFunction */
        start local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        29: .line 4894
            aload 9 /* currentFunction */
            ifnull 37
        30: .line 4895
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 33
        31: .line 4896
            aload 9 /* currentFunction */
            aload 8 /* ident */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        32: .line 4897
            goto 37
        33: .line 4898
      StackMap locals: jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.EQ_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 8 /* ident */
            lload 5 /* paramToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.parser.Parser.newUndefinedLiteral:(JI)Ljdk/nashorn/internal/ir/UnaryNode;
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 10 /* test */
        start local 10 // jdk.nashorn.internal.ir.BinaryNode test
        34: .line 4899
            new jdk.nashorn.internal.ir.TernaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 10 /* test */
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 7 /* initializer */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            aload 8 /* ident */
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:(Ljdk/nashorn/internal/ir/Expression;)V
            invokespecial jdk.nashorn.internal.ir.TernaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;Ljdk/nashorn/internal/ir/JoinPredecessorExpression;)V
            astore 11 /* value */
        start local 11 // jdk.nashorn.internal.ir.TernaryNode value
        35: .line 4900
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 5 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 1 /* param */
            aload 11 /* value */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 12 /* assignment */
        start local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        36: .line 4901
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 3 /* paramLine */
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getToken:()J
            aload 12 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getFinish:()I
            aload 12 /* assignment */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 12 // jdk.nashorn.internal.ir.BinaryNode assignment
        end local 11 // jdk.nashorn.internal.ir.TernaryNode value
        end local 10 // jdk.nashorn.internal.ir.BinaryNode test
        37: .line 4904
      StackMap locals:
      StackMap stack:
            aload 8 /* ident */
            areturn
        end local 9 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 8 // jdk.nashorn.internal.ir.IdentNode ident
        end local 7 // jdk.nashorn.internal.ir.Expression initializer
        end local 5 // long paramToken
        end local 4 // jdk.nashorn.internal.ir.Expression lhs
        38: .line 4906
      StackMap locals: jdk.nashorn.internal.parser.Parser jdk.nashorn.internal.ir.Expression int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.parser.Parser.isDestructuringLhs:(Ljdk/nashorn/internal/ir/Expression;)Z
            ifeq 50
        39: .line 4908
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            lstore 4 /* paramToken */
        start local 4 // long paramToken
        40: .line 4911
            aload 0 /* this */
            lload 4 /* paramToken */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.ir.Expression.getFinish:()I
            ldc "arguments[%d]"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDestructuredParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 6 /* ident */
        start local 6 // jdk.nashorn.internal.ir.IdentNode ident
        41: .line 4912
            aload 0 /* this */
            aload 1 /* param */
            lload 4 /* paramToken */
            iload 3 /* paramLine */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyDestructuringParameterBindingPattern:(Ljdk/nashorn/internal/ir/Expression;JILjava/lang/String;)V
        42: .line 4914
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 7 /* currentFunction */
        start local 7 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        43: .line 4915
            aload 7 /* currentFunction */
            ifnull 49
        44: .line 4916
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 47
        45: .line 4917
            aload 7 /* currentFunction */
            aload 6 /* ident */
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterExpression:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
        46: .line 4918
            goto 49
        47: .line 4919
      StackMap locals: long jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 4 /* paramToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 1 /* param */
            aload 6 /* ident */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 8 /* assignment */
        start local 8 // jdk.nashorn.internal.ir.BinaryNode assignment
        48: .line 4920
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 7 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            new jdk.nashorn.internal.ir.ExpressionStatement
            dup
            iload 3 /* paramLine */
            aload 8 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getToken:()J
            aload 8 /* assignment */
            invokevirtual jdk.nashorn.internal.ir.BinaryNode.getFinish:()I
            aload 8 /* assignment */
            invokespecial jdk.nashorn.internal.ir.ExpressionStatement.<init>:(IJILjdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 8 // jdk.nashorn.internal.ir.BinaryNode assignment
        49: .line 4923
      StackMap locals:
      StackMap stack:
            aload 6 /* ident */
            areturn
        end local 7 // jdk.nashorn.internal.parser.ParserContextFunctionNode currentFunction
        end local 6 // jdk.nashorn.internal.ir.IdentNode ident
        end local 4 // long paramToken
        50: .line 4925
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "invalid.arrow.parameter"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 3 // int paramLine
        end local 2 // int index
        end local 1 // jdk.nashorn.internal.ir.Expression param
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   51     0             this  Ljdk/nashorn/internal/parser/Parser;
            0   51     1            param  Ljdk/nashorn/internal/ir/Expression;
            0   51     2            index  I
            0   51     3        paramLine  I
            2    7     4            ident  Ljdk/nashorn/internal/ir/IdentNode;
            4    7     5  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            9   38     4              lhs  Ljdk/nashorn/internal/ir/Expression;
           10   38     5       paramToken  J
           11   38     7      initializer  Ljdk/nashorn/internal/ir/Expression;
           13   25     8            ident  Ljdk/nashorn/internal/ir/IdentNode;
           14   25     9  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           19   22    10             test  Ljdk/nashorn/internal/ir/BinaryNode;
           20   22    11            value  Ljdk/nashorn/internal/ir/TernaryNode;
           21   22    12       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
           27   38     8            ident  Ljdk/nashorn/internal/ir/IdentNode;
           29   38     9  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           34   37    10             test  Ljdk/nashorn/internal/ir/BinaryNode;
           35   37    11            value  Ljdk/nashorn/internal/ir/TernaryNode;
           36   37    12       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
           40   50     4       paramToken  J
           41   50     6            ident  Ljdk/nashorn/internal/ir/IdentNode;
           43   50     7  currentFunction  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           48   49     8       assignment  Ljdk/nashorn/internal/ir/BinaryNode;
    MethodParameters:
           Name  Flags
      param      final
      index      final
      paramLine  final

  private boolean checkNoLineTerminator();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4929
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 4930
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.last:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 3
         2: .line 4931
            iconst_1
            ireturn
         3: .line 4932
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.last:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 5
         4: .line 4933
            iconst_1
            ireturn
         5: .line 4935
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iconst_1
            isub
            istore 1 /* i */
        start local 1 // int i
         6: goto 16
         7: .line 4936
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            astore 2 /* t */
        start local 2 // jdk.nashorn.internal.parser.TokenType t
         8: .line 4937
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 2 /* t */
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 4
                    3: 10
                    4: 11
                   15: 9
                  110: 9
              default: 12
          }
         9: .line 4940
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            iconst_1
            ireturn
        10: .line 4942
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        11: .line 4944
      StackMap locals:
      StackMap stack:
            goto 15
        12: .line 4946
      StackMap locals:
      StackMap stack:
            aload 2 /* t */
            invokevirtual jdk.nashorn.internal.parser.TokenType.getKind:()Ljdk/nashorn/internal/parser/TokenKind;
            getstatic jdk.nashorn.internal.parser.TokenKind.FUTURESTRICT:Ljdk/nashorn/internal/parser/TokenKind;
            if_acmpne 14
        13: .line 4947
            iconst_1
            ireturn
        14: .line 4949
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        15: .line 4935
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
      StackMap locals:
      StackMap stack:
        16: iload 1 /* i */
            ifge 7
        end local 1 // int i
        17: .line 4952
            iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Ljdk/nashorn/internal/parser/Parser;
            6   17     1     i  I
            8   15     2     t  Ljdk/nashorn/internal/parser/TokenType;

  private boolean isRestParameterEndOfArrowFunctionParameterList();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4960
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 4962
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* i */
        start local 1 // int i
         2: .line 4964
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iload 1 /* i */
            iinc 1 /* i */ 1
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            astore 2 /* t */
        start local 2 // jdk.nashorn.internal.parser.TokenType t
         3: .line 4965
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 5
         4: .line 4966
            goto 8
         5: .line 4967
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 2
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 7
         6: .line 4968
            goto 2
         7: .line 4970
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
         8: .line 4974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iload 1 /* i */
            iinc 1 /* i */ 1
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            astore 2 /* t */
        start local 2 // jdk.nashorn.internal.parser.TokenType t
         9: .line 4975
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
        10: .line 4976
            goto 14
        11: .line 4977
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 8
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 13
        12: .line 4978
            goto 8
        13: .line 4980
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        14: .line 4984
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.k:I
            iload 1 /* i */
            iinc 1 /* i */ 1
            iadd
            invokevirtual jdk.nashorn.internal.parser.Parser.T:(I)Ljdk/nashorn/internal/parser/TokenType;
            astore 2 /* t */
        start local 2 // jdk.nashorn.internal.parser.TokenType t
        15: .line 4985
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 17
        16: .line 4986
            goto 20
        17: .line 4987
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 19
        18: .line 4988
            goto 14
        19: .line 4990
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        20: .line 4993
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // int i
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Ljdk/nashorn/internal/parser/Parser;
            2   21     1     i  I
            3    8     2     t  Ljdk/nashorn/internal/parser/TokenType;
            9   14     2     t  Ljdk/nashorn/internal/parser/TokenType;
           15   20     2     t  Ljdk/nashorn/internal/parser/TokenType;

  private void endOfLine();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5000
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 6
                    2: 3
                    3: 1
                   15: 3
                   29: 1
                   46: 3
                   53: 3
              default: 4
          }
         1: .line 5003
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5004
            goto 6
         3: .line 5009
      StackMap locals:
      StackMap stack:
            goto 6
         4: .line 5011
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.last:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 6
         5: .line 5012
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         6: .line 5016
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/nashorn/internal/parser/Parser;

  private jdk.nashorn.internal.ir.Expression templateLiteral();
    descriptor: ()Ljdk/nashorn/internal/ir/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5022
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_HEAD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 5023
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 1 /* noSubstitutionTemplate */
        start local 1 // boolean noSubstitutionTemplate
         4: .line 5024
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastLiteralToken */
        start local 2 // long lastLiteralToken
         5: .line 5025
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            astore 4 /* literal */
        start local 4 // jdk.nashorn.internal.ir.LiteralNode literal
         6: .line 5026
            iload 1 /* noSubstitutionTemplate */
            ifeq 8
         7: .line 5027
            aload 4 /* literal */
            areturn
         8: .line 5030
      StackMap locals: int long jdk.nashorn.internal.ir.LiteralNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.env:Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._parse_only:Z
            ifeq 20
         9: .line 5031
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* exprs */
        start local 5 // java.util.List exprs
        10: .line 5032
            aload 5 /* exprs */
            aload 4 /* literal */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 5035
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 7 /* expression */
        start local 7 // jdk.nashorn.internal.ir.Expression expression
        12: .line 5036
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 14
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_TAIL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 14
        13: .line 5037
            aload 0 /* this */
            ldc "unterminated.template.expression"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        14: .line 5039
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.LiteralNode java.util.List top jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 5 /* exprs */
            aload 7 /* expression */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 5040
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 6 /* lastLiteralType */
        start local 6 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        16: .line 5041
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            astore 4 /* literal */
        17: .line 5042
            aload 5 /* exprs */
            aload 4 /* literal */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // jdk.nashorn.internal.ir.Expression expression
        18: .line 5043
            aload 6 /* lastLiteralType */
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 11
        19: .line 5044
            new jdk.nashorn.internal.ir.TemplateLiteral
            dup
            aload 5 /* exprs */
            invokespecial jdk.nashorn.internal.ir.TemplateLiteral.<init>:(Ljava/util/List;)V
            areturn
        end local 6 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        end local 5 // java.util.List exprs
        20: .line 5046
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.LiteralNode
      StackMap stack:
            aload 4 /* literal */
            astore 5 /* concat */
        start local 5 // jdk.nashorn.internal.ir.Expression concat
        21: .line 5049
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 7 /* expression */
        start local 7 // jdk.nashorn.internal.ir.Expression expression
        22: .line 5050
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 24
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_TAIL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 24
        23: .line 5051
            aload 0 /* this */
            ldc "unterminated.template.expression"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        24: .line 5053
      StackMap locals: jdk.nashorn.internal.parser.Parser int long jdk.nashorn.internal.ir.LiteralNode jdk.nashorn.internal.ir.Expression top jdk.nashorn.internal.ir.Expression
      StackMap stack:
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 2 /* lastLiteralToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 5 /* concat */
            aload 7 /* expression */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 5 /* concat */
        25: .line 5054
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 6 /* lastLiteralType */
        start local 6 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        26: .line 5055
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastLiteralToken */
        27: .line 5056
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            astore 4 /* literal */
        28: .line 5057
            new jdk.nashorn.internal.ir.BinaryNode
            dup
            lload 2 /* lastLiteralToken */
            getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 5 /* concat */
            aload 4 /* literal */
            invokespecial jdk.nashorn.internal.ir.BinaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;Ljdk/nashorn/internal/ir/Expression;)V
            astore 5 /* concat */
        end local 7 // jdk.nashorn.internal.ir.Expression expression
        29: .line 5058
            aload 6 /* lastLiteralType */
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 21
        30: .line 5059
            aload 5 /* concat */
            areturn
        end local 6 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        end local 5 // jdk.nashorn.internal.ir.Expression concat
        end local 4 // jdk.nashorn.internal.ir.LiteralNode literal
        end local 2 // long lastLiteralToken
        end local 1 // boolean noSubstitutionTemplate
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   31     0                    this  Ljdk/nashorn/internal/parser/Parser;
            4   31     1  noSubstitutionTemplate  Z
            5   31     2        lastLiteralToken  J
            6   31     4                 literal  Ljdk/nashorn/internal/ir/LiteralNode<*>;
           10   20     5                   exprs  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
           16   20     6         lastLiteralType  Ljdk/nashorn/internal/parser/TokenType;
           12   18     7              expression  Ljdk/nashorn/internal/ir/Expression;
           21   31     5                  concat  Ljdk/nashorn/internal/ir/Expression;
           26   31     6         lastLiteralType  Ljdk/nashorn/internal/parser/TokenType;
           22   29     7              expression  Ljdk/nashorn/internal/ir/Expression;

  private java.util.List<jdk.nashorn.internal.ir.Expression> templateLiteralArgumentList();
    descriptor: ()Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=10, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5068
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_HEAD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 5069
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* argumentList */
        start local 1 // java.util.ArrayList argumentList
         2: .line 5070
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* rawStrings */
        start local 2 // java.util.ArrayList rawStrings
         3: .line 5071
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* cookedStrings */
        start local 3 // java.util.ArrayList cookedStrings
         4: .line 5072
            aload 1 /* argumentList */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 5074
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* templateToken */
        start local 4 // long templateToken
         6: .line 5075
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_HEAD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 7
            iconst_1
            goto 8
      StackMap locals: jdk.nashorn.internal.parser.Parser java.util.ArrayList java.util.ArrayList java.util.ArrayList long
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 6 /* hasSubstitutions */
        start local 6 // boolean hasSubstitutions
         9: .line 5076
            aload 0 /* this */
            aload 2 /* rawStrings */
            aload 3 /* cookedStrings */
            invokevirtual jdk.nashorn.internal.parser.Parser.addTemplateLiteralString:(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
        10: .line 5078
            iload 6 /* hasSubstitutions */
            ifeq 18
        11: .line 5081
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* expression */
        start local 8 // jdk.nashorn.internal.ir.Expression expression
        12: .line 5082
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 14
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_TAIL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 14
        13: .line 5083
            aload 0 /* this */
            ldc "unterminated.template.expression"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        14: .line 5085
      StackMap locals: jdk.nashorn.internal.parser.Parser java.util.ArrayList java.util.ArrayList java.util.ArrayList long int top jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 1 /* argumentList */
            aload 8 /* expression */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        15: .line 5087
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 7 /* lastLiteralType */
        start local 7 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        16: .line 5088
            aload 0 /* this */
            aload 2 /* rawStrings */
            aload 3 /* cookedStrings */
            invokevirtual jdk.nashorn.internal.parser.Parser.addTemplateLiteralString:(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
        end local 8 // jdk.nashorn.internal.ir.Expression expression
        17: .line 5089
            aload 7 /* lastLiteralType */
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 11
        end local 7 // jdk.nashorn.internal.parser.TokenType lastLiteralType
        18: .line 5092
      StackMap locals: jdk.nashorn.internal.parser.Parser java.util.ArrayList java.util.ArrayList java.util.ArrayList long int
      StackMap stack:
            lload 4 /* templateToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 2 /* rawStrings */
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/util/List;)Ljdk/nashorn/internal/ir/LiteralNode;
            astore 7 /* rawStringArray */
        start local 7 // jdk.nashorn.internal.ir.LiteralNode rawStringArray
        19: .line 5093
            lload 4 /* templateToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 3 /* cookedStrings */
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/util/List;)Ljdk/nashorn/internal/ir/LiteralNode;
            astore 8 /* cookedStringArray */
        start local 8 // jdk.nashorn.internal.ir.LiteralNode cookedStringArray
        20: .line 5094
            new jdk.nashorn.internal.ir.RuntimeNode
            dup
            lload 4 /* templateToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            getstatic jdk.nashorn.internal.ir.RuntimeNode$Request.GET_TEMPLATE_OBJECT:Ljdk/nashorn/internal/ir/RuntimeNode$Request;
            iconst_2
            anewarray jdk.nashorn.internal.ir.Expression
            dup
            iconst_0
            aload 7 /* rawStringArray */
            aastore
            dup
            iconst_1
            aload 8 /* cookedStringArray */
            aastore
            invokespecial jdk.nashorn.internal.ir.RuntimeNode.<init>:(JILjdk/nashorn/internal/ir/RuntimeNode$Request;[Ljdk/nashorn/internal/ir/Expression;)V
            astore 9 /* templateObject */
        start local 9 // jdk.nashorn.internal.ir.RuntimeNode templateObject
        21: .line 5095
            aload 1 /* argumentList */
            iconst_0
            aload 9 /* templateObject */
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 5096
            aload 1 /* argumentList */
            invokestatic jdk.nashorn.internal.parser.Parser.optimizeList:(Ljava/util/ArrayList;)Ljava/util/List;
            areturn
        end local 9 // jdk.nashorn.internal.ir.RuntimeNode templateObject
        end local 8 // jdk.nashorn.internal.ir.LiteralNode cookedStringArray
        end local 7 // jdk.nashorn.internal.ir.LiteralNode rawStringArray
        end local 6 // boolean hasSubstitutions
        end local 4 // long templateToken
        end local 3 // java.util.ArrayList cookedStrings
        end local 2 // java.util.ArrayList rawStrings
        end local 1 // java.util.ArrayList argumentList
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0               this  Ljdk/nashorn/internal/parser/Parser;
            2   23     1       argumentList  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            3   23     2         rawStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            4   23     3      cookedStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            6   23     4      templateToken  J
            9   23     6   hasSubstitutions  Z
           16   18     7    lastLiteralType  Ljdk/nashorn/internal/parser/TokenType;
           12   17     8         expression  Ljdk/nashorn/internal/ir/Expression;
           19   23     7     rawStringArray  Ljdk/nashorn/internal/ir/LiteralNode<[Ljdk/nashorn/internal/ir/Expression;>;
           20   23     8  cookedStringArray  Ljdk/nashorn/internal/ir/LiteralNode<[Ljdk/nashorn/internal/ir/Expression;>;
           21   23     9     templateObject  Ljdk/nashorn/internal/ir/RuntimeNode;
    Signature: ()Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;

  private void addTemplateLiteralString(java.util.ArrayList<jdk.nashorn.internal.ir.Expression>, java.util.ArrayList<jdk.nashorn.internal.ir.Expression>);
    descriptor: (Ljava/util/ArrayList;Ljava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.util.ArrayList rawStrings
        start local 2 // java.util.ArrayList cookedStrings
         0: .line 5100
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* stringToken */
        start local 3 // long stringToken
         1: .line 5101
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lexer:Ljdk/nashorn/internal/parser/Lexer;
            lload 3 /* stringToken */
            invokevirtual jdk.nashorn.internal.parser.Lexer.valueOfRawString:(J)Ljava/lang/String;
            astore 5 /* rawString */
        start local 5 // java.lang.String rawString
         2: .line 5102
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* cookedString */
        start local 6 // java.lang.String cookedString
         3: .line 5103
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 5104
            aload 1 /* rawStrings */
            lload 3 /* stringToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 5 /* rawString */
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/LiteralNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 5105
            aload 2 /* cookedStrings */
            lload 3 /* stringToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 6 /* cookedString */
            invokestatic jdk.nashorn.internal.ir.LiteralNode.newInstance:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/LiteralNode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         6: .line 5106
            return
        end local 6 // java.lang.String cookedString
        end local 5 // java.lang.String rawString
        end local 3 // long stringToken
        end local 2 // java.util.ArrayList cookedStrings
        end local 1 // java.util.ArrayList rawStrings
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    7     1     rawStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            0    7     2  cookedStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            1    7     3    stringToken  J
            2    7     5      rawString  Ljava/lang/String;
            3    7     6   cookedString  Ljava/lang/String;
    Signature: (Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;)V
    MethodParameters:
               Name  Flags
      rawStrings     final
      cookedStrings  final

  private jdk.nashorn.internal.ir.FunctionNode module(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // java.lang.String moduleName
         0: .line 5119
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            istore 2 /* oldStrictMode */
        start local 2 // boolean oldStrictMode
         1: .line 5121
            aload 0 /* this */
            iconst_1
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
         2: .line 5124
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokestatic jdk.nashorn.internal.parser.Token.withDelimiter:(J)J
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* functionStart */
        start local 3 // int functionStart
         3: .line 5125
            getstatic jdk.nashorn.internal.parser.TokenType.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            iload 3 /* functionStart */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.source:Ljdk/nashorn/internal/runtime/Source;
            invokevirtual jdk.nashorn.internal.runtime.Source.getLength:()I
            iload 3 /* functionStart */
            isub
            invokestatic jdk.nashorn.internal.parser.Token.toDesc:(Ljdk/nashorn/internal/parser/TokenType;II)J
            lstore 4 /* functionToken */
        start local 4 // long functionToken
         4: .line 5126
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 6 /* functionLine */
        start local 6 // int functionLine
         5: .line 5128
            new jdk.nashorn.internal.ir.IdentNode
            dup
            lload 4 /* functionToken */
            lload 4 /* functionToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            aload 1 /* moduleName */
            invokespecial jdk.nashorn.internal.ir.IdentNode.<init>:(JILjava/lang/String;)V
            astore 7 /* ident */
        start local 7 // jdk.nashorn.internal.ir.IdentNode ident
         6: .line 5129
            aload 0 /* this */
         7: .line 5130
            aload 7 /* ident */
         8: .line 5131
            lload 4 /* functionToken */
         9: .line 5132
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.MODULE:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        10: .line 5133
            iload 6 /* functionLine */
        11: .line 5134
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        12: .line 5129
            invokevirtual jdk.nashorn.internal.parser.Parser.createParserContextFunctionNode:(Ljdk/nashorn/internal/ir/IdentNode;JLjdk/nashorn/internal/ir/FunctionNode$Kind;ILjava/util/List;)Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            astore 8 /* script */
        start local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode script
        13: .line 5135
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 8 /* script */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        14: .line 5137
            new jdk.nashorn.internal.parser.ParserContextModuleNode
            dup
            aload 1 /* moduleName */
            invokespecial jdk.nashorn.internal.parser.ParserContextModuleNode.<init>:(Ljava/lang/String;)V
            astore 9 /* module */
        start local 9 // jdk.nashorn.internal.parser.ParserContextModuleNode module
        15: .line 5138
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* module */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        16: .line 5140
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 10 /* body */
        start local 10 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        17: .line 5142
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        18: .line 5143
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.moduleBody:()V
        19: .line 5144
            aload 0 /* this */
            aload 8 /* script */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        20: .line 5145
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        21: .line 5147
            aload 0 /* this */
            aload 10 /* body */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
        22: .line 5148
            aload 10 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        23: .line 5149
            new jdk.nashorn.internal.ir.Block
            dup
            lload 4 /* functionToken */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 10 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getFlags:()I
            bipush 16
            ior
            bipush 32
            ior
            aload 10 /* body */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JIILjava/util/List;)V
            astore 11 /* programBody */
        start local 11 // jdk.nashorn.internal.ir.Block programBody
        24: .line 5150
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 9 /* module */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        25: .line 5151
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 8 /* script */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.pop:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        26: .line 5152
            aload 8 /* script */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setLastToken:(J)V
        27: .line 5154
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        28: .line 5156
            aload 8 /* script */
            aload 9 /* module */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.createModule:()Ljdk/nashorn/internal/ir/Module;
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setModule:(Ljdk/nashorn/internal/ir/Module;)V
        29: .line 5157
            aload 0 /* this */
            aload 8 /* script */
            lload 4 /* functionToken */
            aload 7 /* ident */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.MODULE:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            iload 6 /* functionLine */
            aload 11 /* programBody */
            invokevirtual jdk.nashorn.internal.parser.Parser.createFunctionNode:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;JLjdk/nashorn/internal/ir/IdentNode;Ljava/util/List;Ljdk/nashorn/internal/ir/FunctionNode$Kind;ILjdk/nashorn/internal/ir/Block;)Ljdk/nashorn/internal/ir/FunctionNode;
            astore 13
        30: .line 5159
            aload 0 /* this */
            iload 2 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        31: .line 5157
            aload 13
            areturn
        end local 11 // jdk.nashorn.internal.ir.Block programBody
        end local 10 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        end local 9 // jdk.nashorn.internal.parser.ParserContextModuleNode module
        end local 8 // jdk.nashorn.internal.parser.ParserContextFunctionNode script
        end local 7 // jdk.nashorn.internal.ir.IdentNode ident
        end local 6 // int functionLine
        end local 4 // long functionToken
        end local 3 // int functionStart
        32: .line 5158
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int
      StackMap stack: java.lang.Throwable
            astore 12
        33: .line 5159
            aload 0 /* this */
            iload 2 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        34: .line 5160
            aload 12
            athrow
        end local 2 // boolean oldStrictMode
        end local 1 // java.lang.String moduleName
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   35     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   35     1     moduleName  Ljava/lang/String;
            1   35     2  oldStrictMode  Z
            3   32     3  functionStart  I
            4   32     4  functionToken  J
            5   32     6   functionLine  I
            6   32     7          ident  Ljdk/nashorn/internal/ir/IdentNode;
           13   32     8         script  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           15   32     9         module  Ljdk/nashorn/internal/parser/ParserContextModuleNode;
           17   32    10           body  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
           24   32    11    programBody  Ljdk/nashorn/internal/ir/Block;
      Exception table:
        from    to  target  type
           1    30      32  any
    MethodParameters:
            Name  Flags
      moduleName  final

  private void moduleBody();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5180
            goto 8
         1: .line 5181
      StackMap locals:
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 3
                    2: 2
                   68: 5
                   76: 3
              default: 7
          }
         2: .line 5183
      StackMap locals:
      StackMap stack:
            goto 9
         3: .line 5185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.importDeclaration:()V
         4: .line 5186
            goto 8
         5: .line 5188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.exportDeclaration:()V
         6: .line 5189
            goto 8
         7: .line 5192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.statement:(ZIZZ)V
         8: .line 5180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 1
         9: .line 5196
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljdk/nashorn/internal/parser/Parser;

  private void importDeclaration();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5219
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            istore 1 /* startPosition */
        start local 1 // int startPosition
         1: .line 5220
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IMPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         2: .line 5221
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentModule:()Ljdk/nashorn/internal/parser/ParserContextModuleNode;
            astore 2 /* module */
        start local 2 // jdk.nashorn.internal.parser.ParserContextModuleNode module
         3: .line 5222
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.STRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 4
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         4: .line 5224
      StackMap locals: int jdk.nashorn.internal.parser.ParserContextModuleNode
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* moduleSpecifier */
        start local 3 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
         5: .line 5225
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 5226
            aload 2 /* module */
            aload 3 /* moduleSpecifier */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
        end local 3 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
         7: .line 5227
            goto 37
         8: .line 5230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
         9: .line 5231
            aload 0 /* this */
            iload 1 /* startPosition */
            invokevirtual jdk.nashorn.internal.parser.Parser.nameSpaceImport:(I)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 3 /* importEntries */
        start local 3 // java.util.List importEntries
        10: .line 5232
            goto 30
        end local 3 // java.util.List importEntries
      StackMap locals:
      StackMap stack:
        11: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 14
        12: .line 5233
            aload 0 /* this */
            iload 1 /* startPosition */
            invokevirtual jdk.nashorn.internal.parser.Parser.namedImports:(I)Ljava/util/List;
            astore 3 /* importEntries */
        start local 3 // java.util.List importEntries
        13: .line 5234
            goto 30
        end local 3 // java.util.List importEntries
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifeq 29
        15: .line 5236
            aload 0 /* this */
            ldc "ImportedBinding"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifier:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* importedDefaultBinding */
        start local 4 // jdk.nashorn.internal.ir.IdentNode importedDefaultBinding
        16: .line 5237
            aload 4 /* importedDefaultBinding */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ImportEntry.importSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            astore 5 /* defaultImport */
        start local 5 // jdk.nashorn.internal.ir.Module$ImportEntry defaultImport
        17: .line 5239
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 27
        18: .line 5240
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        19: .line 5241
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* importEntries */
        start local 3 // java.util.List importEntries
        20: .line 5242
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 23
        21: .line 5243
            aload 3 /* importEntries */
            aload 0 /* this */
            iload 1 /* startPosition */
            invokevirtual jdk.nashorn.internal.parser.Parser.nameSpaceImport:(I)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 5244
            goto 30
      StackMap locals: java.util.List jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.Module$ImportEntry
      StackMap stack:
        23: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 26
        24: .line 5245
            aload 3 /* importEntries */
            aload 0 /* this */
            iload 1 /* startPosition */
            invokevirtual jdk.nashorn.internal.parser.Parser.namedImports:(I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        25: .line 5246
            goto 30
        26: .line 5247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "expected.named.import"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 3 // java.util.List importEntries
        27: .line 5250
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode top jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.Module$ImportEntry
      StackMap stack:
            aload 5 /* defaultImport */
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            astore 3 /* importEntries */
        end local 5 // jdk.nashorn.internal.ir.Module$ImportEntry defaultImport
        end local 4 // jdk.nashorn.internal.ir.IdentNode importedDefaultBinding
        start local 3 // java.util.List importEntries
        28: .line 5252
            goto 30
        end local 3 // java.util.List importEntries
        29: .line 5253
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode
      StackMap stack:
            aload 0 /* this */
            ldc "expected.import"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        start local 3 // java.util.List importEntries
        30: .line 5256
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.fromClause:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* moduleSpecifier */
        start local 4 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
        31: .line 5257
            aload 2 /* module */
            aload 4 /* moduleSpecifier */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
        32: .line 5258
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        33: goto 36
        34: .line 5259
      StackMap locals: jdk.nashorn.internal.ir.IdentNode int
      StackMap stack:
            aload 2 /* module */
            aload 3 /* importEntries */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Module$ImportEntry
            aload 4 /* moduleSpecifier */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokevirtual jdk.nashorn.internal.ir.Module$ImportEntry.withFrom:(Ljdk/nashorn/internal/ir/IdentNode;I)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addImportEntry:(Ljdk/nashorn/internal/ir/Module$ImportEntry;)V
        35: .line 5258
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 5 /* i */
            aload 3 /* importEntries */
            invokeinterface java.util.List.size:()I
            if_icmplt 34
        end local 5 // int i
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
        end local 3 // java.util.List importEntries
        37: .line 5262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        38: .line 5263
            return
        end local 2 // jdk.nashorn.internal.parser.ParserContextModuleNode module
        end local 1 // int startPosition
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   39     0                    this  Ljdk/nashorn/internal/parser/Parser;
            1   39     1           startPosition  I
            3   39     2                  module  Ljdk/nashorn/internal/parser/ParserContextModuleNode;
            5    7     3         moduleSpecifier  Ljdk/nashorn/internal/ir/IdentNode;
           10   11     3           importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
           13   14     3           importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
           20   27     3           importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
           28   29     3           importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
           30   37     3           importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
           16   28     4  importedDefaultBinding  Ljdk/nashorn/internal/ir/IdentNode;
           17   28     5           defaultImport  Ljdk/nashorn/internal/ir/Module$ImportEntry;
           31   37     4         moduleSpecifier  Ljdk/nashorn/internal/ir/IdentNode;
           33   37     5                       i  I

  private jdk.nashorn.internal.ir.Module$ImportEntry nameSpaceImport(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Module$ImportEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int startPosition
         0: .line 5273
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 5274
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "*"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 2 /* starName */
        start local 2 // jdk.nashorn.internal.ir.IdentNode starName
         2: .line 5275
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 5276
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* asToken */
        start local 3 // long asToken
         4: .line 5277
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectValue:(Ljdk/nashorn/internal/parser/TokenType;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* as */
        start local 5 // java.lang.String as
         5: .line 5278
            ldc "as"
            aload 5 /* as */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 5279
            aload 0 /* this */
            ldc "expected.as"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 3 /* asToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         7: .line 5281
      StackMap locals: jdk.nashorn.internal.ir.IdentNode long java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "ImportedBinding"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifier:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 6 /* localNameSpace */
        start local 6 // jdk.nashorn.internal.ir.IdentNode localNameSpace
         8: .line 5282
            aload 2 /* starName */
            aload 6 /* localNameSpace */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ImportEntry.importSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            areturn
        end local 6 // jdk.nashorn.internal.ir.IdentNode localNameSpace
        end local 5 // java.lang.String as
        end local 3 // long asToken
        end local 2 // jdk.nashorn.internal.ir.IdentNode starName
        end local 1 // int startPosition
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Ljdk/nashorn/internal/parser/Parser;
            0    9     1   startPosition  I
            2    9     2        starName  Ljdk/nashorn/internal/ir/IdentNode;
            4    9     3         asToken  J
            5    9     5              as  Ljava/lang/String;
            8    9     6  localNameSpace  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
               Name  Flags
      startPosition  final

  private java.util.List<jdk.nashorn.internal.ir.Module$ImportEntry> namedImports(int);
    descriptor: (I)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int startPosition
         0: .line 5300
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 5301
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5302
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* importEntries */
        start local 2 // java.util.List importEntries
         3: .line 5303
            goto 17
         4: .line 5304
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            istore 3 /* bindingIdentifier */
        start local 3 // boolean bindingIdentifier
         5: .line 5305
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* nameToken */
        start local 4 // long nameToken
         6: .line 5306
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 6 /* importName */
        start local 6 // jdk.nashorn.internal.ir.IdentNode importName
         7: .line 5307
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 12
            ldc "as"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
         8: .line 5308
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         9: .line 5309
            aload 0 /* this */
            ldc "ImportedBinding"
            invokevirtual jdk.nashorn.internal.parser.Parser.bindingIdentifier:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 7 /* localName */
        start local 7 // jdk.nashorn.internal.ir.IdentNode localName
        10: .line 5310
            aload 2 /* importEntries */
            aload 6 /* importName */
            aload 7 /* localName */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ImportEntry.importSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // jdk.nashorn.internal.ir.IdentNode localName
        11: .line 5311
            goto 15
      StackMap locals: int long jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
        12: iload 3 /* bindingIdentifier */
            ifne 14
        13: .line 5312
            aload 0 /* this */
            ldc "expected.binding.identifier"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 4 /* nameToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        14: .line 5314
      StackMap locals:
      StackMap stack:
            aload 2 /* importEntries */
            aload 6 /* importName */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ImportEntry.importSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ImportEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 5316
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 18
        16: .line 5317
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        end local 6 // jdk.nashorn.internal.ir.IdentNode importName
        end local 4 // long nameToken
        end local 3 // boolean bindingIdentifier
        17: .line 5303
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 4
        18: .line 5322
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        19: .line 5323
            aload 2 /* importEntries */
            areturn
        end local 2 // java.util.List importEntries
        end local 1 // int startPosition
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Ljdk/nashorn/internal/parser/Parser;
            0   20     1      startPosition  I
            3   20     2      importEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
            5   17     3  bindingIdentifier  Z
            6   17     4          nameToken  J
            7   17     6         importName  Ljdk/nashorn/internal/ir/IdentNode;
           10   11     7          localName  Ljdk/nashorn/internal/ir/IdentNode;
    Signature: (I)Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ImportEntry;>;
    MethodParameters:
               Name  Flags
      startPosition  final

  private jdk.nashorn.internal.ir.IdentNode fromClause();
    descriptor: ()Ljdk/nashorn/internal/ir/IdentNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5331
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* fromToken */
        start local 1 // long fromToken
         1: .line 5332
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectValue:(Ljdk/nashorn/internal/parser/TokenType;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* name */
        start local 3 // java.lang.String name
         2: .line 5333
            ldc "from"
            aload 3 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 5334
            aload 0 /* this */
            ldc "expected.from"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            lload 1 /* fromToken */
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
         4: .line 5336
      StackMap locals: long java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.STRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 5
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         5: .line 5337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* moduleSpecifier */
        start local 4 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
         6: .line 5338
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 5339
            aload 4 /* moduleSpecifier */
            areturn
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
         8: .line 5341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.STRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expectMessage:(Ljdk/nashorn/internal/parser/TokenType;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        end local 3 // java.lang.String name
        end local 1 // long fromToken
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0             this  Ljdk/nashorn/internal/parser/Parser;
            1    9     1        fromToken  J
            2    9     3             name  Ljava/lang/String;
            6    8     4  moduleSpecifier  Ljdk/nashorn/internal/ir/IdentNode;

  private void exportDeclaration();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5359
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.EXPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         1: .line 5360
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            istore 1 /* startPosition */
        start local 1 // int startPosition
         2: .line 5361
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentModule:()Ljdk/nashorn/internal/parser/ParserContextModuleNode;
            astore 2 /* module */
        start local 2 // jdk.nashorn.internal.parser.ParserContextModuleNode module
         3: .line 5362
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 8
                   16: 4
                   49: 11
                   59: 60
                   60: 51
                   63: 26
                   73: 63
                   80: 51
                   96: 51
              default: 66
          }
         4: .line 5364
      StackMap locals: int jdk.nashorn.internal.parser.ParserContextModuleNode
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "*"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* starName */
        start local 3 // jdk.nashorn.internal.ir.IdentNode starName
         5: .line 5365
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 5366
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.fromClause:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* moduleRequest */
        start local 4 // jdk.nashorn.internal.ir.IdentNode moduleRequest
         7: .line 5367
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
         8: .line 5368
            aload 2 /* module */
            aload 4 /* moduleRequest */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
         9: .line 5369
            aload 2 /* module */
            aload 3 /* starName */
            aload 4 /* moduleRequest */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportStarFrom:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addStarExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        10: .line 5370
            goto 67
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleRequest
        end local 3 // jdk.nashorn.internal.ir.IdentNode starName
        11: .line 5373
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* startPosition */
            invokevirtual jdk.nashorn.internal.parser.Parser.exportClause:(I)Ljava/util/List;
            astore 3 /* exportEntries */
        start local 3 // java.util.List exportEntries
        12: .line 5374
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 20
            ldc "from"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        13: .line 5375
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.fromClause:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* moduleRequest */
        start local 4 // jdk.nashorn.internal.ir.IdentNode moduleRequest
        14: .line 5376
            aload 2 /* module */
            aload 4 /* moduleRequest */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
        15: .line 5377
            aload 3 /* exportEntries */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 18
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode java.util.List jdk.nashorn.internal.ir.IdentNode top java.util.Iterator
      StackMap stack:
        16: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Module$ExportEntry
            astore 5 /* exportEntry */
        start local 5 // jdk.nashorn.internal.ir.Module$ExportEntry exportEntry
        17: .line 5378
            aload 2 /* module */
            aload 5 /* exportEntry */
            aload 4 /* moduleRequest */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokevirtual jdk.nashorn.internal.ir.Module$ExportEntry.withFrom:(Ljdk/nashorn/internal/ir/IdentNode;I)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addIndirectExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        end local 5 // jdk.nashorn.internal.ir.Module$ExportEntry exportEntry
        18: .line 5377
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleRequest
        19: .line 5380
            goto 24
        20: .line 5381
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode java.util.List
      StackMap stack:
            aload 3 /* exportEntries */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 23
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode java.util.List top java.util.Iterator
      StackMap stack:
        21: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Module$ExportEntry
            astore 4 /* exportEntry */
        start local 4 // jdk.nashorn.internal.ir.Module$ExportEntry exportEntry
        22: .line 5382
            aload 2 /* module */
            aload 4 /* exportEntry */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        end local 4 // jdk.nashorn.internal.ir.Module$ExportEntry exportEntry
        23: .line 5381
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        24: .line 5385
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode java.util.List
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        25: .line 5386
            goto 67
        end local 3 // java.util.List exportEntries
        26: .line 5389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "default"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* defaultName */
        start local 3 // jdk.nashorn.internal.ir.IdentNode defaultName
        27: .line 5390
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        28: .line 5393
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 6 /* lineNumber */
        start local 6 // int lineNumber
        29: .line 5394
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 7 /* rhsToken */
        start local 7 // long rhsToken
        30: .line 5396
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iaload
            lookupswitch { // 2
                   59: 35
                   73: 31
              default: 39
          }
        31: .line 5398
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode jdk.nashorn.internal.ir.IdentNode top top int long
      StackMap stack:
            aload 0 /* this */
            iconst_0
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.functionExpression:(ZZ)Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* assignmentExpression */
        start local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        32: .line 5399
            aload 4 /* assignmentExpression */
            checkcast jdk.nashorn.internal.ir.FunctionNode
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
        33: .line 5400
            iconst_1
            istore 9 /* declaration */
        start local 9 // boolean declaration
        34: .line 5401
            goto 42
        end local 9 // boolean declaration
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        end local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        35: .line 5403
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.classDeclaration:(Z)Ljdk/nashorn/internal/ir/ClassNode;
            astore 4 /* assignmentExpression */
        start local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        36: .line 5404
            aload 4 /* assignmentExpression */
            checkcast jdk.nashorn.internal.ir.ClassNode
            invokevirtual jdk.nashorn.internal.ir.ClassNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
        37: .line 5405
            iconst_1
            istore 9 /* declaration */
        start local 9 // boolean declaration
        38: .line 5406
            goto 42
        end local 9 // boolean declaration
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        end local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        39: .line 5408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.assignmentExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* assignmentExpression */
        start local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        40: .line 5409
            aconst_null
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
        41: .line 5410
            iconst_0
            istore 9 /* declaration */
        start local 9 // boolean declaration
        42: .line 5413
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode jdk.nashorn.internal.ir.IdentNode jdk.nashorn.internal.ir.Expression jdk.nashorn.internal.ir.IdentNode int long int
      StackMap stack:
            aload 5 /* ident */
            ifnull 45
        43: .line 5414
            aload 2 /* module */
            aload 3 /* defaultName */
            aload 5 /* ident */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportDefault:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        44: .line 5415
            goto 67
        45: .line 5416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 7 /* rhsToken */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            ldc "*default*"
            invokevirtual jdk.nashorn.internal.parser.Parser.createIdentNode:(JILjava/lang/String;)Ljdk/nashorn/internal/ir/IdentNode;
            astore 5 /* ident */
        46: .line 5417
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            new jdk.nashorn.internal.ir.VarNode
            dup
            iload 6 /* lineNumber */
            lload 7 /* rhsToken */
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            aload 5 /* ident */
            aload 4 /* assignmentExpression */
            invokespecial jdk.nashorn.internal.ir.VarNode.<init>:(IJILjdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/Expression;)V
            invokevirtual jdk.nashorn.internal.parser.ParserContext.appendStatementToCurrentNode:(Ljdk/nashorn/internal/ir/Statement;)V
        47: .line 5418
            iload 9 /* declaration */
            ifne 49
        48: .line 5419
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        49: .line 5421
      StackMap locals:
      StackMap stack:
            aload 2 /* module */
            aload 3 /* defaultName */
            aload 5 /* ident */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportDefault:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        50: .line 5423
            goto 67
        end local 9 // boolean declaration
        end local 7 // long rhsToken
        end local 6 // int lineNumber
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        end local 4 // jdk.nashorn.internal.ir.Expression assignmentExpression
        end local 3 // jdk.nashorn.internal.ir.IdentNode defaultName
        51: .line 5427
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            astore 10 /* statements */
        start local 10 // java.util.List statements
        52: .line 5428
            aload 10 /* statements */
            invokeinterface java.util.List.size:()I
            istore 11 /* previousEnd */
        start local 11 // int previousEnd
        53: .line 5429
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.variableStatement:(Ljdk/nashorn/internal/parser/TokenType;)V
        54: .line 5430
            aload 10 /* statements */
            iload 11 /* previousEnd */
            aload 10 /* statements */
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 58
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode top top top top top top top java.util.List int top java.util.Iterator
      StackMap stack:
        55: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 12 /* statement */
        start local 12 // jdk.nashorn.internal.ir.Statement statement
        56: .line 5431
            aload 12 /* statement */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 58
        57: .line 5432
            aload 2 /* module */
            aload 12 /* statement */
            checkcast jdk.nashorn.internal.ir.VarNode
            invokevirtual jdk.nashorn.internal.ir.VarNode.getName:()Ljdk/nashorn/internal/ir/IdentNode;
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        end local 12 // jdk.nashorn.internal.ir.Statement statement
        58: .line 5430
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 55
        59: .line 5435
            goto 67
        end local 11 // int previousEnd
        end local 10 // java.util.List statements
        60: .line 5437
      StackMap locals: jdk.nashorn.internal.parser.Parser int jdk.nashorn.internal.parser.ParserContextModuleNode
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.classDeclaration:(Z)Ljdk/nashorn/internal/ir/ClassNode;
            astore 12 /* classDeclaration */
        start local 12 // jdk.nashorn.internal.ir.ClassNode classDeclaration
        61: .line 5438
            aload 2 /* module */
            aload 12 /* classDeclaration */
            invokevirtual jdk.nashorn.internal.ir.ClassNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        62: .line 5439
            goto 67
        end local 12 // jdk.nashorn.internal.ir.ClassNode classDeclaration
        63: .line 5442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.functionExpression:(ZZ)Ljdk/nashorn/internal/ir/Expression;
            checkcast jdk.nashorn.internal.ir.FunctionNode
            astore 12 /* functionDeclaration */
        start local 12 // jdk.nashorn.internal.ir.FunctionNode functionDeclaration
        64: .line 5443
            aload 2 /* module */
            aload 12 /* functionDeclaration */
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addLocalExportEntry:(Ljdk/nashorn/internal/ir/Module$ExportEntry;)V
        65: .line 5444
            goto 67
        end local 12 // jdk.nashorn.internal.ir.FunctionNode functionDeclaration
        66: .line 5447
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "invalid.export"
            iconst_0
            anewarray java.lang.String
            invokestatic jdk.nashorn.internal.parser.AbstractParser.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            invokevirtual jdk.nashorn.internal.parser.Parser.error:(Ljava/lang/String;J)Ljdk/nashorn/internal/runtime/ParserException;
            athrow
        67: .line 5449
      StackMap locals:
      StackMap stack:
            return
        end local 2 // jdk.nashorn.internal.parser.ParserContextModuleNode module
        end local 1 // int startPosition
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   68     0                  this  Ljdk/nashorn/internal/parser/Parser;
            2   68     1         startPosition  I
            3   68     2                module  Ljdk/nashorn/internal/parser/ParserContextModuleNode;
            5   11     3              starName  Ljdk/nashorn/internal/ir/IdentNode;
            7   11     4         moduleRequest  Ljdk/nashorn/internal/ir/IdentNode;
           12   26     3         exportEntries  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ExportEntry;>;
           14   19     4         moduleRequest  Ljdk/nashorn/internal/ir/IdentNode;
           17   18     5           exportEntry  Ljdk/nashorn/internal/ir/Module$ExportEntry;
           22   23     4           exportEntry  Ljdk/nashorn/internal/ir/Module$ExportEntry;
           27   51     3           defaultName  Ljdk/nashorn/internal/ir/IdentNode;
           32   35     4  assignmentExpression  Ljdk/nashorn/internal/ir/Expression;
           36   39     4  assignmentExpression  Ljdk/nashorn/internal/ir/Expression;
           40   51     4  assignmentExpression  Ljdk/nashorn/internal/ir/Expression;
           33   35     5                 ident  Ljdk/nashorn/internal/ir/IdentNode;
           37   39     5                 ident  Ljdk/nashorn/internal/ir/IdentNode;
           41   51     5                 ident  Ljdk/nashorn/internal/ir/IdentNode;
           29   51     6            lineNumber  I
           30   51     7              rhsToken  J
           34   35     9           declaration  Z
           38   39     9           declaration  Z
           42   51     9           declaration  Z
           52   60    10            statements  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
           53   60    11           previousEnd  I
           56   58    12             statement  Ljdk/nashorn/internal/ir/Statement;
           61   63    12      classDeclaration  Ljdk/nashorn/internal/ir/ClassNode;
           64   66    12   functionDeclaration  Ljdk/nashorn/internal/ir/FunctionNode;

  private java.util.List<jdk.nashorn.internal.ir.Module$ExportEntry> exportClause(int);
    descriptor: (I)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // int startPosition
         0: .line 5466
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 5467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5468
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* exports */
        start local 2 // java.util.List exports
         3: .line 5469
            goto 13
         4: .line 5470
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 3 /* localName */
        start local 3 // jdk.nashorn.internal.ir.IdentNode localName
         5: .line 5471
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 10
            ldc "as"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         6: .line 5472
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 5473
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdentifierName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 4 /* exportName */
        start local 4 // jdk.nashorn.internal.ir.IdentNode exportName
         8: .line 5474
            aload 2 /* exports */
            aload 4 /* exportName */
            aload 3 /* localName */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // jdk.nashorn.internal.ir.IdentNode exportName
         9: .line 5475
            goto 11
        10: .line 5476
      StackMap locals: jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
            aload 2 /* exports */
            aload 3 /* localName */
            iload 1 /* startPosition */
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            invokestatic jdk.nashorn.internal.ir.Module$ExportEntry.exportSpecifier:(Ljdk/nashorn/internal/ir/IdentNode;II)Ljdk/nashorn/internal/ir/Module$ExportEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 5478
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 14
        12: .line 5479
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        end local 3 // jdk.nashorn.internal.ir.IdentNode localName
        13: .line 5469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 4
        14: .line 5484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.Parser.expect:(Ljdk/nashorn/internal/parser/TokenType;)V
        15: .line 5485
            aload 2 /* exports */
            areturn
        end local 2 // java.util.List exports
        end local 1 // int startPosition
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Ljdk/nashorn/internal/parser/Parser;
            0   16     1  startPosition  I
            3   16     2        exports  Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ExportEntry;>;
            5   13     3      localName  Ljdk/nashorn/internal/ir/IdentNode;
            8    9     4     exportName  Ljdk/nashorn/internal/ir/IdentNode;
    Signature: (I)Ljava/util/List<Ljdk/nashorn/internal/ir/Module$ExportEntry;>;
    MethodParameters:
               Name  Flags
      startPosition  final

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5490
            ldc "'JavaScript Parsing'"
            areturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/parser/Parser;

  private static void markEval(jdk.nashorn.internal.parser.ParserContext);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.parser.ParserContext lc
         0: .line 5494
            aload 0 /* lc */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 1 /* iter */
        start local 1 // java.util.Iterator iter
         1: .line 5495
            iconst_0
            istore 2 /* flaggedCurrentFn */
        start local 2 // boolean flaggedCurrentFn
         2: .line 5496
            goto 15
         3: .line 5497
      StackMap locals: java.util.Iterator int
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 3 /* fn */
        start local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         4: .line 5498
            iload 2 /* flaggedCurrentFn */
            ifne 11
         5: .line 5499
            aload 3 /* fn */
            bipush 32
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 5500
            iconst_1
            istore 2 /* flaggedCurrentFn */
         7: .line 5501
            aload 3 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpne 12
         8: .line 5504
            aload 0 /* lc */
            invokestatic jdk.nashorn.internal.parser.Parser.markThis:(Ljdk/nashorn/internal/parser/ParserContext;)V
         9: .line 5505
            aload 0 /* lc */
            invokestatic jdk.nashorn.internal.parser.Parser.markNewTarget:(Ljdk/nashorn/internal/parser/ParserContext;)V
        10: .line 5507
            goto 12
        11: .line 5508
      StackMap locals: jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 3 /* fn */
            bipush 64
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        12: .line 5510
      StackMap locals:
      StackMap stack:
            aload 0 /* lc */
            aload 3 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctionBody:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 4 /* body */
        start local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        13: .line 5514
            aload 4 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        14: .line 5515
            aload 3 /* fn */
            sipush 128
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        end local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode body
        end local 3 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
        15: .line 5496
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        16: .line 5517
            return
        end local 2 // boolean flaggedCurrentFn
        end local 1 // java.util.Iterator iter
        end local 0 // jdk.nashorn.internal.parser.ParserContext lc
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   17     0                lc  Ljdk/nashorn/internal/parser/ParserContext;
            1   17     1              iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            2   17     2  flaggedCurrentFn  Z
            4   15     3                fn  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
           13   15     4              body  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
    MethodParameters:
      Name  Flags
      lc    final

  private void prependStatement(jdk.nashorn.internal.ir.Statement);
    descriptor: (Ljdk/nashorn/internal/ir/Statement;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Statement statement
         0: .line 5520
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 1 /* statement */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.prependStatementToCurrentNode:(Ljdk/nashorn/internal/ir/Statement;)V
         1: .line 5521
            return
        end local 1 // jdk.nashorn.internal.ir.Statement statement
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1  statement  Ljdk/nashorn/internal/ir/Statement;
    MethodParameters:
           Name  Flags
      statement  final

  private void appendStatement(jdk.nashorn.internal.ir.Statement);
    descriptor: (Ljdk/nashorn/internal/ir/Statement;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.parser.Parser this
        start local 1 // jdk.nashorn.internal.ir.Statement statement
         0: .line 5524
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            aload 1 /* statement */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.appendStatementToCurrentNode:(Ljdk/nashorn/internal/ir/Statement;)V
         1: .line 5525
            return
        end local 1 // jdk.nashorn.internal.ir.Statement statement
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljdk/nashorn/internal/parser/Parser;
            0    2     1  statement  Ljdk/nashorn/internal/ir/Statement;
    MethodParameters:
           Name  Flags
      statement  final

  private static void markSuperCall(jdk.nashorn.internal.parser.ParserContext);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.ParserContext lc
         0: .line 5528
            aload 0 /* lc */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 1 /* iter */
        start local 1 // java.util.Iterator iter
         1: .line 5529
            goto 7
         2: .line 5530
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 2 /* fn */
        start local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         3: .line 5531
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 7
         4: .line 5532
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 5
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSubclassConstructor:()Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 5533
      StackMap locals: jdk.nashorn.internal.parser.ParserContextFunctionNode
      StackMap stack:
            aload 2 /* fn */
            ldc 524288
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 5534
            goto 8
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         7: .line 5529
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 5537
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Iterator iter
        end local 0 // jdk.nashorn.internal.parser.ParserContext lc
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0    lc  Ljdk/nashorn/internal/parser/ParserContext;
            1    9     1  iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            3    7     2    fn  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    MethodParameters:
      Name  Flags
      lc    final

  private jdk.nashorn.internal.parser.ParserContextFunctionNode getCurrentNonArrowFunction();
    descriptor: ()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5540
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 1 /* iter */
        start local 1 // java.util.Iterator iter
         1: .line 5541
            goto 5
         2: .line 5542
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 2 /* fn */
        start local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         3: .line 5543
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 5
         4: .line 5544
            aload 2 /* fn */
            areturn
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         5: .line 5541
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 5547
            aconst_null
            areturn
        end local 1 // java.util.Iterator iter
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/nashorn/internal/parser/Parser;
            1    7     1  iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            3    5     2    fn  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;

  private static void markThis(jdk.nashorn.internal.parser.ParserContext);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.ParserContext lc
         0: .line 5551
            aload 0 /* lc */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 1 /* iter */
        start local 1 // java.util.Iterator iter
         1: .line 5552
            goto 6
         2: .line 5553
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 2 /* fn */
        start local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         3: .line 5554
            aload 2 /* fn */
            ldc 32768
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         4: .line 5555
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 6
         5: .line 5556
            goto 7
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         6: .line 5552
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 5559
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Iterator iter
        end local 0 // jdk.nashorn.internal.parser.ParserContext lc
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0    lc  Ljdk/nashorn/internal/parser/ParserContext;
            1    8     1  iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            3    6     2    fn  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    MethodParameters:
      Name  Flags
      lc    final

  private static void markNewTarget(jdk.nashorn.internal.parser.ParserContext);
    descriptor: (Ljdk/nashorn/internal/parser/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.parser.ParserContext lc
         0: .line 5562
            aload 0 /* lc */
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getFunctions:()Ljava/util/Iterator;
            astore 1 /* iter */
        start local 1 // java.util.Iterator iter
         1: .line 5563
            goto 7
         2: .line 5564
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.parser.ParserContextFunctionNode
            astore 2 /* fn */
        start local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         3: .line 5565
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpeq 7
         4: .line 5566
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isProgram:()Z
            ifne 8
         5: .line 5567
            aload 2 /* fn */
            ldc 33554432
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 5569
            goto 8
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         7: .line 5563
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 5572
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Iterator iter
        end local 0 // jdk.nashorn.internal.parser.ParserContext lc
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0    lc  Ljdk/nashorn/internal/parser/ParserContext;
            1    9     1  iter  Ljava/util/Iterator<Ljdk/nashorn/internal/parser/ParserContextFunctionNode;>;
            3    7     2    fn  Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
    MethodParameters:
      Name  Flags
      lc    final

  private boolean inGeneratorFunction();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 5575
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.lc:Ljdk/nashorn/internal/parser/ParserContext;
            invokevirtual jdk.nashorn.internal.parser.ParserContext.getCurrentFunction:()Ljdk/nashorn/internal/parser/ParserContextFunctionNode;
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getKind:()Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GENERATOR:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.parser.Parser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/parser/Parser;

  static int[] $SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 160
            getstatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.nashorn.internal.parser.TokenType.values:()[Ljdk/nashorn/internal/parser/TokenType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 18
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.AND:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 12
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ARRAY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 114
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 37
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 34
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_ADD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 20
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_BIT_AND:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 13
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_BIT_OR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 51
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_BIT_XOR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 48
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_DIV:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 27
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_MOD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_MUL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 17
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_SAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 41
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_SHL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 32
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_SHR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 43
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ASSIGN_SUB:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 24
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BINARY_NUMBER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 105
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BIT_AND:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 11
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BIT_NOT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 54
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BIT_OR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 50
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BIT_XOR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 47
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.BREAK:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 56
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.CASE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 57
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.CATCH:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 58
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.CLASS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 59
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.COLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 28
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.COMMALEFT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 119
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 21
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_4
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 60
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.CONTINUE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 61
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DEBUGGER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 62
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DECIMAL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 101
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DECPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 120
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DECPREFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 23
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DEFAULT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 63
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DELETE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 64
            iastore
       111: goto 113
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       112: pop
      StackMap locals:
      StackMap stack:
       113: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DIRECTIVE_COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_5
            iastore
       114: goto 116
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       115: pop
      StackMap locals:
      StackMap stack:
       116: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DIV:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 26
            iastore
       117: goto 119
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       118: pop
      StackMap locals:
      StackMap stack:
       119: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.DO:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 65
            iastore
       120: goto 122
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       121: pop
      StackMap locals:
      StackMap stack:
       122: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 55
            iastore
       123: goto 125
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       124: pop
      StackMap locals:
      StackMap stack:
       125: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ELSE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 66
            iastore
       126: goto 128
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       127: pop
      StackMap locals:
      StackMap stack:
       128: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ENUM:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 67
            iastore
       129: goto 131
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       130: pop
      StackMap locals:
      StackMap stack:
       131: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_2
            iastore
       132: goto 134
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       133: pop
      StackMap locals:
      StackMap stack:
       134: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EOL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_3
            iastore
       135: goto 137
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       136: pop
      StackMap locals:
      StackMap stack:
       137: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EQ:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 35
            iastore
       138: goto 140
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       139: pop
      StackMap locals:
      StackMap stack:
       140: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EQ_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 36
            iastore
       141: goto 143
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       142: pop
      StackMap locals:
      StackMap stack:
       143: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ERROR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_1
            iastore
       144: goto 146
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       145: pop
      StackMap locals:
      StackMap stack:
       146: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 108
            iastore
       147: goto 149
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       148: pop
      StackMap locals:
      StackMap stack:
       149: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EXECSTRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 109
            iastore
       150: goto 152
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       151: pop
      StackMap locals:
      StackMap stack:
       152: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EXPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 68
            iastore
       153: goto 155
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       154: pop
      StackMap locals:
      StackMap stack:
       155: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.EXTENDS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 69
            iastore
       156: goto 158
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       157: pop
      StackMap locals:
      StackMap stack:
       158: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.FALSE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 70
            iastore
       159: goto 161
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       160: pop
      StackMap locals:
      StackMap stack:
       161: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.FINALLY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 71
            iastore
       162: goto 164
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       163: pop
      StackMap locals:
      StackMap stack:
       164: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.FLOATING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 106
            iastore
       165: goto 167
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       166: pop
      StackMap locals:
      StackMap stack:
       167: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.FOR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 72
            iastore
       168: goto 170
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       169: pop
      StackMap locals:
      StackMap stack:
       170: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 73
            iastore
       171: goto 173
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       172: pop
      StackMap locals:
      StackMap stack:
       173: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.GE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 39
            iastore
       174: goto 176
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       175: pop
      StackMap locals:
      StackMap stack:
       176: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.GT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 38
            iastore
       177: goto 179
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       178: pop
      StackMap locals:
      StackMap stack:
       179: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.HEXADECIMAL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 102
            iastore
       180: goto 182
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       181: pop
      StackMap locals:
      StackMap stack:
       182: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 110
            iastore
       183: goto 185
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       184: pop
      StackMap locals:
      StackMap stack:
       185: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.IF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 74
            iastore
       186: goto 188
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       187: pop
      StackMap locals:
      StackMap stack:
       188: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.IMPLEMENTS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 75
            iastore
       189: goto 191
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       190: pop
      StackMap locals:
      StackMap stack:
       191: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.IMPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 76
            iastore
       192: goto 194
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       193: pop
      StackMap locals:
      StackMap stack:
       194: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.IN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 77
            iastore
       195: goto 197
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       196: pop
      StackMap locals:
      StackMap stack:
       197: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.INCPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 121
            iastore
       198: goto 200
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       199: pop
      StackMap locals:
      StackMap stack:
       200: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.INCPREFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 19
            iastore
       201: goto 203
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       202: pop
      StackMap locals:
      StackMap stack:
       203: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.INSTANCEOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 78
            iastore
       204: goto 206
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       205: pop
      StackMap locals:
      StackMap stack:
       206: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.INTERFACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 79
            iastore
       207: goto 209
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       208: pop
      StackMap locals:
      StackMap stack:
       209: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 49
            iastore
       210: goto 212
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       211: pop
      StackMap locals:
      StackMap stack:
       212: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 45
            iastore
       213: goto 215
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       214: pop
      StackMap locals:
      StackMap stack:
       215: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 33
            iastore
       216: goto 218
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       217: pop
      StackMap locals:
      StackMap stack:
       218: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 80
            iastore
       219: goto 221
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       220: pop
      StackMap locals:
      StackMap stack:
       221: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 14
            iastore
       222: goto 224
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       223: pop
      StackMap locals:
      StackMap stack:
       224: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.LT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 30
            iastore
       225: goto 227
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       226: pop
      StackMap locals:
      StackMap stack:
       227: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.MOD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 9
            iastore
       228: goto 230
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       229: pop
      StackMap locals:
      StackMap stack:
       230: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.MUL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 16
            iastore
       231: goto 233
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       232: pop
      StackMap locals:
      StackMap stack:
       233: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.NE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 7
            iastore
       234: goto 236
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       235: pop
      StackMap locals:
      StackMap stack:
       236: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.NEW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 81
            iastore
       237: goto 239
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       238: pop
      StackMap locals:
      StackMap stack:
       239: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.NE_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 8
            iastore
       240: goto 242
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       241: pop
      StackMap locals:
      StackMap stack:
       242: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.NOT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 6
            iastore
       243: goto 245
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       244: pop
      StackMap locals:
      StackMap stack:
       245: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.NULL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 82
            iastore
       246: goto 248
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       247: pop
      StackMap locals:
      StackMap stack:
       248: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.OBJECT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 113
            iastore
       249: goto 251
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       250: pop
      StackMap locals:
      StackMap stack:
       251: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.OCTAL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 104
            iastore
       252: goto 254
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       253: pop
      StackMap locals:
      StackMap stack:
       254: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.OCTAL_LEGACY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 103
            iastore
       255: goto 257
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       256: pop
      StackMap locals:
      StackMap stack:
       257: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.OR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 52
            iastore
       258: goto 260
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       259: pop
      StackMap locals:
      StackMap stack:
       260: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.PACKAGE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 83
            iastore
       261: goto 263
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       262: pop
      StackMap locals:
      StackMap stack:
       263: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.PERIOD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 25
            iastore
       264: goto 266
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       265: pop
      StackMap locals:
      StackMap stack:
       266: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.PRIVATE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 84
            iastore
       267: goto 269
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       268: pop
      StackMap locals:
      StackMap stack:
       269: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.PROTECTED:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 85
            iastore
       270: goto 272
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       271: pop
      StackMap locals:
      StackMap stack:
       272: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.PUBLIC:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 86
            iastore
       273: goto 275
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       274: pop
      StackMap locals:
      StackMap stack:
       275: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 53
            iastore
       276: goto 278
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       277: pop
      StackMap locals:
      StackMap stack:
       278: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 46
            iastore
       279: goto 281
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       280: pop
      StackMap locals:
      StackMap stack:
       281: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.REGEX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 111
            iastore
       282: goto 284
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       283: pop
      StackMap locals:
      StackMap stack:
       284: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.RETURN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 87
            iastore
       285: goto 287
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       286: pop
      StackMap locals:
      StackMap stack:
       287: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 15
            iastore
       288: goto 290
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       289: pop
      StackMap locals:
      StackMap stack:
       290: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 40
            iastore
       291: goto 293
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       292: pop
      StackMap locals:
      StackMap stack:
       293: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SEMICOLON:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 29
            iastore
       294: goto 296
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       295: pop
      StackMap locals:
      StackMap stack:
       296: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SHL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 31
            iastore
       297: goto 299
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       298: pop
      StackMap locals:
      StackMap stack:
       299: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SHR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 42
            iastore
       300: goto 302
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       301: pop
      StackMap locals:
      StackMap stack:
       302: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SPREAD_ARGUMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 122
            iastore
       303: goto 305
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       304: pop
      StackMap locals:
      StackMap stack:
       305: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SPREAD_ARRAY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 123
            iastore
       306: goto 308
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       307: pop
      StackMap locals:
      StackMap stack:
       308: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.STATIC:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 88
            iastore
       309: goto 311
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       310: pop
      StackMap locals:
      StackMap stack:
       311: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.STRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 107
            iastore
       312: goto 314
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       313: pop
      StackMap locals:
      StackMap stack:
       314: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SUB:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 22
            iastore
       315: goto 317
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       316: pop
      StackMap locals:
      StackMap stack:
       317: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SUPER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 89
            iastore
       318: goto 320
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       319: pop
      StackMap locals:
      StackMap stack:
       320: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.SWITCH:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 90
            iastore
       321: goto 323
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       322: pop
      StackMap locals:
      StackMap stack:
       323: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 115
            iastore
       324: goto 326
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       325: pop
      StackMap locals:
      StackMap stack:
       326: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_HEAD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 116
            iastore
       327: goto 329
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       328: pop
      StackMap locals:
      StackMap stack:
       329: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 117
            iastore
       330: goto 332
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       331: pop
      StackMap locals:
      StackMap stack:
       332: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_TAIL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 118
            iastore
       333: goto 335
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       334: pop
      StackMap locals:
      StackMap stack:
       335: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 44
            iastore
       336: goto 338
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       337: pop
      StackMap locals:
      StackMap stack:
       338: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.THIS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 91
            iastore
       339: goto 341
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       340: pop
      StackMap locals:
      StackMap stack:
       341: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.THROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 92
            iastore
       342: goto 344
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       343: pop
      StackMap locals:
      StackMap stack:
       344: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TRUE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 93
            iastore
       345: goto 347
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       346: pop
      StackMap locals:
      StackMap stack:
       347: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TRY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 94
            iastore
       348: goto 350
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       349: pop
      StackMap locals:
      StackMap stack:
       350: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.TYPEOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 95
            iastore
       351: goto 353
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       352: pop
      StackMap locals:
      StackMap stack:
       353: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.VAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 96
            iastore
       354: goto 356
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       355: pop
      StackMap locals:
      StackMap stack:
       356: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.VOID:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 97
            iastore
       357: goto 359
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       358: pop
      StackMap locals:
      StackMap stack:
       359: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.WHILE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 98
            iastore
       360: goto 362
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       361: pop
      StackMap locals:
      StackMap stack:
       362: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.WITH:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 99
            iastore
       363: goto 365
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       364: pop
      StackMap locals:
      StackMap stack:
       365: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.XML:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 112
            iastore
       366: goto 368
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       367: pop
      StackMap locals:
      StackMap stack:
       368: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 100
            iastore
       369: goto 371
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       370: pop
      StackMap locals:
      StackMap stack:
       371: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD_STAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 124
            iastore
       372: goto 374
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       373: pop
      StackMap locals:
      StackMap stack:
       374: aload 0
            dup
            putstatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
         110   111     112  Class java.lang.NoSuchFieldError
         113   114     115  Class java.lang.NoSuchFieldError
         116   117     118  Class java.lang.NoSuchFieldError
         119   120     121  Class java.lang.NoSuchFieldError
         122   123     124  Class java.lang.NoSuchFieldError
         125   126     127  Class java.lang.NoSuchFieldError
         128   129     130  Class java.lang.NoSuchFieldError
         131   132     133  Class java.lang.NoSuchFieldError
         134   135     136  Class java.lang.NoSuchFieldError
         137   138     139  Class java.lang.NoSuchFieldError
         140   141     142  Class java.lang.NoSuchFieldError
         143   144     145  Class java.lang.NoSuchFieldError
         146   147     148  Class java.lang.NoSuchFieldError
         149   150     151  Class java.lang.NoSuchFieldError
         152   153     154  Class java.lang.NoSuchFieldError
         155   156     157  Class java.lang.NoSuchFieldError
         158   159     160  Class java.lang.NoSuchFieldError
         161   162     163  Class java.lang.NoSuchFieldError
         164   165     166  Class java.lang.NoSuchFieldError
         167   168     169  Class java.lang.NoSuchFieldError
         170   171     172  Class java.lang.NoSuchFieldError
         173   174     175  Class java.lang.NoSuchFieldError
         176   177     178  Class java.lang.NoSuchFieldError
         179   180     181  Class java.lang.NoSuchFieldError
         182   183     184  Class java.lang.NoSuchFieldError
         185   186     187  Class java.lang.NoSuchFieldError
         188   189     190  Class java.lang.NoSuchFieldError
         191   192     193  Class java.lang.NoSuchFieldError
         194   195     196  Class java.lang.NoSuchFieldError
         197   198     199  Class java.lang.NoSuchFieldError
         200   201     202  Class java.lang.NoSuchFieldError
         203   204     205  Class java.lang.NoSuchFieldError
         206   207     208  Class java.lang.NoSuchFieldError
         209   210     211  Class java.lang.NoSuchFieldError
         212   213     214  Class java.lang.NoSuchFieldError
         215   216     217  Class java.lang.NoSuchFieldError
         218   219     220  Class java.lang.NoSuchFieldError
         221   222     223  Class java.lang.NoSuchFieldError
         224   225     226  Class java.lang.NoSuchFieldError
         227   228     229  Class java.lang.NoSuchFieldError
         230   231     232  Class java.lang.NoSuchFieldError
         233   234     235  Class java.lang.NoSuchFieldError
         236   237     238  Class java.lang.NoSuchFieldError
         239   240     241  Class java.lang.NoSuchFieldError
         242   243     244  Class java.lang.NoSuchFieldError
         245   246     247  Class java.lang.NoSuchFieldError
         248   249     250  Class java.lang.NoSuchFieldError
         251   252     253  Class java.lang.NoSuchFieldError
         254   255     256  Class java.lang.NoSuchFieldError
         257   258     259  Class java.lang.NoSuchFieldError
         260   261     262  Class java.lang.NoSuchFieldError
         263   264     265  Class java.lang.NoSuchFieldError
         266   267     268  Class java.lang.NoSuchFieldError
         269   270     271  Class java.lang.NoSuchFieldError
         272   273     274  Class java.lang.NoSuchFieldError
         275   276     277  Class java.lang.NoSuchFieldError
         278   279     280  Class java.lang.NoSuchFieldError
         281   282     283  Class java.lang.NoSuchFieldError
         284   285     286  Class java.lang.NoSuchFieldError
         287   288     289  Class java.lang.NoSuchFieldError
         290   291     292  Class java.lang.NoSuchFieldError
         293   294     295  Class java.lang.NoSuchFieldError
         296   297     298  Class java.lang.NoSuchFieldError
         299   300     301  Class java.lang.NoSuchFieldError
         302   303     304  Class java.lang.NoSuchFieldError
         305   306     307  Class java.lang.NoSuchFieldError
         308   309     310  Class java.lang.NoSuchFieldError
         311   312     313  Class java.lang.NoSuchFieldError
         314   315     316  Class java.lang.NoSuchFieldError
         317   318     319  Class java.lang.NoSuchFieldError
         320   321     322  Class java.lang.NoSuchFieldError
         323   324     325  Class java.lang.NoSuchFieldError
         326   327     328  Class java.lang.NoSuchFieldError
         329   330     331  Class java.lang.NoSuchFieldError
         332   333     334  Class java.lang.NoSuchFieldError
         335   336     337  Class java.lang.NoSuchFieldError
         338   339     340  Class java.lang.NoSuchFieldError
         341   342     343  Class java.lang.NoSuchFieldError
         344   345     346  Class java.lang.NoSuchFieldError
         347   348     349  Class java.lang.NoSuchFieldError
         350   351     352  Class java.lang.NoSuchFieldError
         353   354     355  Class java.lang.NoSuchFieldError
         356   357     358  Class java.lang.NoSuchFieldError
         359   360     361  Class java.lang.NoSuchFieldError
         362   363     364  Class java.lang.NoSuchFieldError
         365   366     367  Class java.lang.NoSuchFieldError
         368   369     370  Class java.lang.NoSuchFieldError
         371   372     373  Class java.lang.NoSuchFieldError
}
SourceFile: "Parser.java"
NestMembers:
  jdk.nashorn.internal.parser.Parser$1  jdk.nashorn.internal.parser.Parser$2  jdk.nashorn.internal.parser.Parser$3  jdk.nashorn.internal.parser.Parser$4  jdk.nashorn.internal.parser.Parser$5  jdk.nashorn.internal.parser.Parser$6  jdk.nashorn.internal.parser.Parser$7  jdk.nashorn.internal.parser.Parser$ClassElementKey  jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult  jdk.nashorn.internal.parser.Parser$ParserState  jdk.nashorn.internal.parser.Parser$PropertyFunction  jdk.nashorn.internal.parser.Parser$VerifyDestructuringPatternNodeVisitor
InnerClasses:
  public final Kind = jdk.nashorn.internal.ir.FunctionNode$Kind of jdk.nashorn.internal.ir.FunctionNode
  public final ArrayLiteralNode = jdk.nashorn.internal.ir.LiteralNode$ArrayLiteralNode of jdk.nashorn.internal.ir.LiteralNode
  public final ExportEntry = jdk.nashorn.internal.ir.Module$ExportEntry of jdk.nashorn.internal.ir.Module
  public final ImportEntry = jdk.nashorn.internal.ir.Module$ImportEntry of jdk.nashorn.internal.ir.Module
  public final Request = jdk.nashorn.internal.ir.RuntimeNode$Request of jdk.nashorn.internal.ir.RuntimeNode
  protected abstract LineInfoReceiver = jdk.nashorn.internal.parser.Lexer$LineInfoReceiver of jdk.nashorn.internal.parser.Lexer
  jdk.nashorn.internal.parser.Parser$1
  jdk.nashorn.internal.parser.Parser$2
  jdk.nashorn.internal.parser.Parser$3
  jdk.nashorn.internal.parser.Parser$4
  jdk.nashorn.internal.parser.Parser$5
  jdk.nashorn.internal.parser.Parser$6
  jdk.nashorn.internal.parser.Parser$7
  private final ClassElementKey = jdk.nashorn.internal.parser.Parser$ClassElementKey of jdk.nashorn.internal.parser.Parser
  private final ForVariableDeclarationListResult = jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult of jdk.nashorn.internal.parser.Parser
  private ParserState = jdk.nashorn.internal.parser.Parser$ParserState of jdk.nashorn.internal.parser.Parser
  private PropertyFunction = jdk.nashorn.internal.parser.Parser$PropertyFunction of jdk.nashorn.internal.parser.Parser
  private abstract VerifyDestructuringPatternNodeVisitor = jdk.nashorn.internal.parser.Parser$VerifyDestructuringPatternNodeVisitor of jdk.nashorn.internal.parser.Parser
  public final FunctionStatementBehavior = jdk.nashorn.internal.runtime.ScriptEnvironment$FunctionStatementBehavior of jdk.nashorn.internal.runtime.ScriptEnvironment
    RuntimeVisibleAnnotations: 
      jdk.nashorn.internal.runtime.logging.Logger(name = "parser")