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
                   31: 12
                   55: 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
                   21: 2
                   26: 2
                   29: 2
                   34: 2
                   36: 2
                   43: 2
                   45: 2
                   50: 2
                   53: 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
                   31: 5
                   48: 31
                   51: 1
                   58: 17
                   63: 15
                   64: 29
                   67: 13
                   74: 9
                   75: 33
                   76: 7
                   89: 19
                   92: 23
                   94: 25
                   96: 27
                   98: 3
                  100: 11
                  101: 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
                   55: 2
                   59: 2
                   65: 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=3, 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 */
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkEscapedKeyword:(Ljdk/nashorn/internal/ir/IdentNode;)V
         2: .line 1476
            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    3     0           this  Ljdk/nashorn/internal/parser/Parser;
            0    3     1          ident  Ljdk/nashorn/internal/ir/IdentNode;
            0    3     2  contextString  Ljava/lang/String;
    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 1485
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 7
         1: .line 1486
            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 1489
      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 1494
      StackMap locals:
      StackMap stack:
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isFutureStrictName:()Z
            ifeq 7
         6: .line 1495
            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 1498
      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 checkEscapedKeyword(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, 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 1504
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 4
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.containsEscapes:()Z
            ifeq 4
         1: .line 1505
            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 2 /* tokenType */
        start local 2 // jdk.nashorn.internal.parser.TokenType tokenType
         2: .line 1506
            aload 2 /* tokenType */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 4
            aload 2 /* 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_acmpne 3
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 4
         3: .line 1507
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            aload 0 /* this */
            ldc "keyword.escaped.character"
            iconst_0
            anewarray java.lang.String
            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
        end local 2 // jdk.nashorn.internal.parser.TokenType tokenType
         4: .line 1510
      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    5     0       this  Ljdk/nashorn/internal/parser/Parser;
            0    5     1      ident  Ljdk/nashorn/internal/ir/IdentNode;
            2    4     2  tokenType  Ljdk/nashorn/internal/parser/TokenType;
    MethodParameters:
       Name  Flags
      ident  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 1532
            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 1533
            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 1580
            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 1581
      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 1582
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 5 /* varToken */
        start local 5 // long varToken
         3: .line 1584
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 1586
            iconst_0
            istore 7 /* varFlags */
        start local 7 // int varFlags
         5: .line 1587
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.LET:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 8
         6: .line 1588
            iload 7 /* varFlags */
            iconst_1
            ior
            istore 7 /* varFlags */
         7: .line 1589
            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 1590
            iload 7 /* varFlags */
            iconst_2
            ior
            istore 7 /* varFlags */
        10: .line 1593
      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 1596
      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 1597
            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 1601
      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 1602
            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 1603
            iload 10 /* isDestructuring */
            ifeq 22
        20: .line 1604
            iload 7 /* varFlags */
            istore 11 /* finalVarFlags */
        start local 11 // int finalVarFlags
        21: .line 1605
            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 1619
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 11 /* init */
        start local 11 // jdk.nashorn.internal.ir.Expression init
        23: .line 1622
            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 1623
            iload 2 /* isStatement */
            ifne 26
        25: .line 1624
            aload 8 /* forResult */
            lload 5 /* varToken */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordDeclarationWithInitializer:(J)V
        26: .line 1626
      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 1629
            iload 10 /* isDestructuring */
            ifne 29
        28: .line 1630
            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 1633
      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 1634
            goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 12
        34: .line 1635
            iload 10 /* isDestructuring */
            ifne 36
        35: .line 1636
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        36: .line 1638
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 12
            athrow
        37: .line 1635
      StackMap locals:
      StackMap stack:
            iload 10 /* isDestructuring */
            ifne 45
        38: .line 1636
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        39: .line 1639
            goto 45
      StackMap locals:
      StackMap stack:
        40: iload 2 /* isStatement */
            ifeq 45
        41: .line 1640
            iload 10 /* isDestructuring */
            ifeq 43
        42: .line 1641
            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 1642
      StackMap locals:
      StackMap stack:
            aload 1 /* varType */
            getstatic jdk.nashorn.internal.parser.TokenType.CONST:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 45
        44: .line 1643
            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 1648
      StackMap locals:
      StackMap stack:
            iload 10 /* isDestructuring */
            ifne 61
        46: .line 1649
            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 1650
      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 1651
            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 1652
            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 1655
      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 1656
            iload 2 /* isStatement */
            ifne 58
        55: .line 1657
            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 1658
            aload 8 /* forResult */
            aload 13 /* name */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordMissingAssignment:(Ljdk/nashorn/internal/ir/Expression;)V
        57: .line 1660
      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 1662
      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 1663
            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 1664
            goto 73
        61: .line 1665
      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 1666
      StackMap locals:
      StackMap stack:
            aload 11 /* init */
            ifnull 70
        63: .line 1667
            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 1668
            iload 2 /* isStatement */
            ifeq 67
        65: .line 1669
            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 1670
            goto 73
        67: .line 1671
      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 1672
            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 1674
            goto 73
      StackMap locals:
      StackMap stack:
        70: iload 2 /* isStatement */
            ifne 73
        71: .line 1675
            aload 8 /* forResult */
            aload 9 /* binding */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.recordMissingAssignment:(Ljdk/nashorn/internal/ir/Expression;)V
        72: .line 1676
            aload 8 /* forResult */
            aload 9 /* binding */
            invokevirtual jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.addBinding:(Ljdk/nashorn/internal/ir/Expression;)V
        73: .line 1680
      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 1681
            goto 77
        75: .line 1683
      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 1594
            goto 13
        77: .line 1687
      StackMap locals:
      StackMap stack:
            iload 2 /* isStatement */
            ifeq 79
        78: .line 1688
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        79: .line 1691
      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 1695
            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 1699
            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 1700
            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 1701
            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 1705
            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 1706
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.arrayLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
         2: .line 1707
      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 1708
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.objectLiteral:()Ljdk/nashorn/internal/ir/ObjectNode;
            areturn
         4: .line 1710
      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 1715
            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 1716
      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 1718
      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 1796
            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 1797
      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 1798
      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 1821
            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 1832
            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 1833
            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 1837
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 1838
            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 1850
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* expressionLine */
        start local 1 // int expressionLine
         1: .line 1851
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* expressionToken */
        start local 2 // long expressionToken
         2: .line 1854
            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 1856
            aload 4 /* expression */
            ifnull 7
         4: .line 1857
            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 1858
            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 1859
            goto 8
         7: .line 1860
      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 1863
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
         9: .line 1864
            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 1877
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* ifLine */
        start local 1 // int ifLine
         1: .line 1878
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* ifToken */
        start local 2 // long ifToken
         2: .line 1880
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 1882
            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 1883
            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 1884
            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 1885
            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 1887
            aconst_null
            astore 6 /* fail */
        start local 6 // jdk.nashorn.internal.ir.Block fail
         8: .line 1888
            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 1889
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 1890
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 6 /* fail */
        11: .line 1893
      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 1894
            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=19, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 1910
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* forToken */
        start local 1 // long forToken
         1: .line 1911
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* forLine */
        start local 3 // int forLine
         2: .line 1915
            lload 1 /* forToken */
            invokestatic jdk.nashorn.internal.parser.Token.descPosition:(J)I
            istore 4 /* forStart */
        start local 4 // int forStart
         3: .line 1917
            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 1920
            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 1921
            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 1922
            aconst_null
            astore 7 /* body */
        start local 7 // jdk.nashorn.internal.ir.Block body
         9: .line 1923
            aconst_null
            astore 8 /* init */
        start local 8 // jdk.nashorn.internal.ir.Expression init
        10: .line 1924
            aconst_null
            astore 9 /* test */
        start local 9 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
        11: .line 1925
            aconst_null
            astore 10 /* modify */
        start local 10 // jdk.nashorn.internal.ir.JoinPredecessorExpression modify
        12: .line 1926
            aconst_null
            astore 11 /* varDeclList */
        start local 11 // jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult varDeclList
        13: .line 1928
            iconst_0
            istore 12 /* flags */
        start local 12 // int flags
        14: .line 1929
            iconst_0
            istore 13 /* isForOf */
        start local 13 // boolean isForOf
        15: .line 1933
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        16: .line 1937
            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 1938
            iload 12 /* flags */
            iconst_2
            ior
            istore 12 /* flags */
        18: .line 1939
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        19: .line 1942
      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 1944
            aconst_null
            astore 14 /* varType */
        start local 14 // jdk.nashorn.internal.parser.TokenType varType
        21: .line 1945
            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
                   31: 24
                   98: 22
              default: 25
          }
        22: .line 1948
      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 1949
            goto 34
        24: .line 1951
      StackMap locals:
      StackMap stack:
            goto 34
        25: .line 1953
      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 1954
      StackMap locals:
      StackMap stack:
            iload 12 /* flags */
            bipush 8
            ior
            istore 12 /* flags */
        28: .line 1956
            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 1957
            goto 34
        30: .line 1959
      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 1961
            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 1962
            goto 34
        33: .line 1965
      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 1966
      StackMap locals:
      StackMap stack:
            invokestatic jdk.nashorn.internal.parser.Parser.$SWITCH_TABLE$jdk$nashorn$internal$parser$TokenType:()[I
        35: .line 1969
            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
                   31: 36
                   79: 57
                  112: 52
              default: 84
          }
        36: .line 1972
      StackMap locals:
      StackMap stack:
            aload 11 /* varDeclList */
            ifnull 43
        37: .line 1973
            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 1974
      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 1976
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.missingAssignment:Ljdk/nashorn/internal/ir/Expression;
            ifnull 43
        40: .line 1977
            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 1978
            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 1980
      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 1986
      StackMap locals:
      StackMap stack:
            iload 12 /* flags */
            iconst_2
            iand
            ifeq 45
        44: .line 1987
            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 1990
      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 1991
            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 1992
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 9 /* test */
        48: .line 1994
      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 1995
            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 1996
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 10 /* modify */
        51: .line 1998
            goto 85
        52: .line 2001
      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 2002
            iconst_1
            istore 13 /* isForOf */
        54: .line 2004
            goto 57
        55: .line 2005
      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 2006
            goto 85
        57: .line 2009
      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 2010
            new jdk.nashorn.internal.ir.JoinPredecessorExpression
            dup
            invokespecial jdk.nashorn.internal.ir.JoinPredecessorExpression.<init>:()V
            astore 9 /* test */
        61: .line 2011
            aload 11 /* varDeclList */
            ifnull 72
        62: .line 2013
            aload 11 /* varDeclList */
            getfield jdk.nashorn.internal.parser.Parser$ForVariableDeclarationListResult.secondBinding:Ljdk/nashorn/internal/ir/Expression;
            ifnull 66
        63: .line 2015
            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 2017
      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 2021
      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 2023
      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 2024
            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 2027
      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 2030
      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 2031
            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 2035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        80: .line 2038
            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 2039
            goto 85
        84: .line 2042
      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 2046
      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 2049
            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 2050
            goto 114
      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 2051
            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 2053
            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 2054
            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 2055
      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 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 top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 91
        95: .line 2057
            aload 7 /* body */
            ifnull 97
        96: .line 2058
            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 2060
      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 113
        98: .line 2061
            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 2062
            aload 7 /* body */
            ifnull 113
       100: .line 2063
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 16 /* statements */
        start local 16 // java.util.List statements
       101: .line 2064
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 18
            goto 107
      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 java.util.List top java.util.Iterator
      StackMap stack:
       102: aload 18
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 17 /* var */
        start local 17 // jdk.nashorn.internal.ir.Statement var
       103: .line 2065
            aload 17 /* var */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 106
            aload 17 /* var */
            checkcast jdk.nashorn.internal.ir.VarNode
            invokevirtual jdk.nashorn.internal.ir.VarNode.isBlockScoped:()Z
            ifne 106
       104: .line 2066
            aload 0 /* this */
            aload 17 /* var */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
       105: .line 2067
            goto 107
       106: .line 2068
      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 java.util.List jdk.nashorn.internal.ir.Statement java.util.Iterator
      StackMap stack:
            aload 16 /* statements */
            aload 17 /* var */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // jdk.nashorn.internal.ir.Statement var
       107: .line 2064
      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 java.util.List top java.util.Iterator
      StackMap stack:
            aload 18
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 102
       108: .line 2071
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 3 /* forLine */
            new jdk.nashorn.internal.ir.Block
            dup
       109: .line 2072
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
       110: .line 2073
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
       111: .line 2074
            aload 16 /* statements */
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JILjava/util/List;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
       112: .line 2071
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 16 // java.util.List statements
       113: .line 2077
      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 15
            athrow
       114: .line 2051
      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
       115: .line 2053
            aload 6 /* forNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextLoopNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 119
      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:
       116: 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
       117: .line 2054
            getstatic jdk.nashorn.internal.parser.Parser.$assertionsDisabled:Z
            ifne 118
            aload 16 /* var */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifne 118
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       118: .line 2055
      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
       119: .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 top top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 116
       120: .line 2057
            aload 7 /* body */
            ifnull 122
       121: .line 2058
            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
       122: .line 2060
      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 138
       123: .line 2061
            aload 0 /* this */
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.Parser.restoreBlock:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            pop
       124: .line 2062
            aload 7 /* body */
            ifnull 138
       125: .line 2063
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 16 /* statements */
        start local 16 // java.util.List statements
       126: .line 2064
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getStatements:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 18
            goto 132
      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 java.util.List top java.util.Iterator
      StackMap stack:
       127: aload 18
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Statement
            astore 17 /* var */
        start local 17 // jdk.nashorn.internal.ir.Statement var
       128: .line 2065
            aload 17 /* var */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 131
            aload 17 /* var */
            checkcast jdk.nashorn.internal.ir.VarNode
            invokevirtual jdk.nashorn.internal.ir.VarNode.isBlockScoped:()Z
            ifne 131
       129: .line 2066
            aload 0 /* this */
            aload 17 /* var */
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
       130: .line 2067
            goto 132
       131: .line 2068
      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 java.util.List jdk.nashorn.internal.ir.Statement java.util.Iterator
      StackMap stack:
            aload 16 /* statements */
            aload 17 /* var */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // jdk.nashorn.internal.ir.Statement var
       132: .line 2064
      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 java.util.List top java.util.Iterator
      StackMap stack:
            aload 18
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 127
       133: .line 2071
            aload 0 /* this */
            new jdk.nashorn.internal.ir.BlockStatement
            dup
            iload 3 /* forLine */
            new jdk.nashorn.internal.ir.Block
            dup
       134: .line 2072
            aload 5 /* outer */
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.getToken:()J
       135: .line 2073
            aload 7 /* body */
            invokevirtual jdk.nashorn.internal.ir.Block.getFinish:()I
       136: .line 2074
            aload 16 /* statements */
            invokespecial jdk.nashorn.internal.ir.Block.<init>:(JILjava/util/List;)V
            invokespecial jdk.nashorn.internal.ir.BlockStatement.<init>:(ILjdk/nashorn/internal/ir/Block;)V
       137: .line 2071
            invokevirtual jdk.nashorn.internal.parser.Parser.appendStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        end local 16 // java.util.List statements
       138: .line 2078
      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:
            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  139     0         this  Ljdk/nashorn/internal/parser/Parser;
            1  139     1     forToken  J
            2  139     3      forLine  I
            3  139     4     forStart  I
            6  139     5        outer  Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            7  139     6      forNode  Ljdk/nashorn/internal/parser/ParserContextLoopNode;
            9  139     7         body  Ljdk/nashorn/internal/ir/Block;
           10  139     8         init  Ljdk/nashorn/internal/ir/Expression;
           11  139     9         test  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
           12  139    10       modify  Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
           13  139    11  varDeclList  Ljdk/nashorn/internal/parser/Parser$ForVariableDeclarationListResult;
           14  139    12        flags  I
           15  139    13      isForOf  Z
           21   87    14      varType  Ljdk/nashorn/internal/parser/TokenType;
           92   94    16          var  Ljdk/nashorn/internal/ir/Statement;
          117  119    16          var  Ljdk/nashorn/internal/ir/Statement;
          101  113    16   statements  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
          126  138    16   statements  Ljava/util/List<Ljdk/nashorn/internal/ir/Statement;>;
          103  107    17          var  Ljdk/nashorn/internal/ir/Statement;
          128  132    17          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 2081
            aload 1 /* init */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 5
         1: .line 2082
            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 2083
            iconst_0
            ireturn
         3: .line 2085
      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 2086
            iconst_1
            ireturn
         5: .line 2087
      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 2088
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         7: .line 2089
      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 2090
            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 2091
            iconst_1
            ireturn
        10: .line 2093
      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 2099
            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 2100
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         2: .line 2101
      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 2102
            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
                   47: 7
                   51: 7
                  112: 5
              default: 8
          }
         4: .line 2105
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            goto 11
         5: .line 2107
      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 2108
            iconst_0
            ireturn
         7: .line 2113
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 2116
      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 2117
            iconst_1
            ireturn
        10: .line 2119
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // jdk.nashorn.internal.parser.TokenType t
        11: .line 2100
      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 2136
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* whileToken */
        start local 1 // long whileToken
         1: .line 2137
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* whileLine */
        start local 3 // int whileLine
         2: .line 2139
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2141
            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 2142
            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 2144
            aconst_null
            astore 5 /* test */
        start local 5 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
         6: .line 2145
            aconst_null
            astore 6 /* body */
        start local 6 // jdk.nashorn.internal.ir.Block body
         7: .line 2148
            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 2149
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 5 /* test */
         9: .line 2150
            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 2151
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 6 /* body */
        11: .line 2152
            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 2153
            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 2154
            aload 7
            athrow
        15: .line 2153
      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 2156
            aload 6 /* body */
            ifnull 18
        17: .line 2157
            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 2159
      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 2173
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* doToken */
        start local 1 // long doToken
         1: .line 2174
            iconst_0
            istore 3 /* doLine */
        start local 3 // int doLine
         2: .line 2176
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2178
            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 2179
            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 2181
            aconst_null
            astore 5 /* body */
        start local 5 // jdk.nashorn.internal.ir.Block body
         6: .line 2182
            aconst_null
            astore 6 /* test */
        start local 6 // jdk.nashorn.internal.ir.JoinPredecessorExpression test
         7: .line 2186
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:()Ljdk/nashorn/internal/ir/Block;
            astore 5 /* body */
         8: .line 2188
            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 2189
            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 2190
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* doLine */
        11: .line 2191
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.joinPredecessorExpression:()Ljdk/nashorn/internal/ir/JoinPredecessorExpression;
            astore 6 /* test */
        12: .line 2192
            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 2194
            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 2195
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        15: .line 2197
            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 2198
            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 2199
            aload 7
            athrow
        19: .line 2198
      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 2201
            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 2202
            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 2214
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* continueLine */
        start local 1 // int continueLine
         1: .line 2215
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* continueToken */
        start local 2 // long continueToken
         2: .line 2217
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2219
            aconst_null
            astore 4 /* labelNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
         4: .line 2222
            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
                   31: 5
                   55: 5
              default: 6
          }
         5: .line 2227
      StackMap locals: int long jdk.nashorn.internal.parser.ParserContextLabelNode
      StackMap stack:
            goto 10
         6: .line 2230
      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 2231
            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 2233
            aload 4 /* labelNode */
            ifnonnull 10
         9: .line 2234
            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 2240
      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 2241
            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 2243
            aload 6 /* targetNode */
            ifnonnull 16
        15: .line 2244
            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 2247
      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 2250
            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 2251
            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 2262
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* breakLine */
        start local 1 // int breakLine
         1: .line 2263
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* breakToken */
        start local 2 // long breakToken
         2: .line 2265
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2267
            aconst_null
            astore 4 /* labelNode */
        start local 4 // jdk.nashorn.internal.parser.ParserContextLabelNode labelNode
         4: .line 2270
            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
                   31: 5
                   55: 5
              default: 6
          }
         5: .line 2275
      StackMap locals: int long jdk.nashorn.internal.parser.ParserContextLabelNode
      StackMap stack:
            goto 10
         6: .line 2278
      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 2279
            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 2281
            aload 4 /* labelNode */
            ifnonnull 10
         9: .line 2282
            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 2290
      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 2291
            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 2293
            aload 6 /* targetNode */
            instanceof jdk.nashorn.internal.parser.ParserContextBlockNode
            ifeq 16
        15: .line 2294
            aload 6 /* targetNode */
            sipush 256
            invokeinterface jdk.nashorn.internal.parser.ParserContextBreakableNode.setFlag:(I)I
            pop
        16: .line 2297
      StackMap locals: java.lang.String jdk.nashorn.internal.parser.ParserContextBreakableNode
      StackMap stack:
            aload 6 /* targetNode */
            ifnonnull 18
        17: .line 2298
            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
        18: .line 2301
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        19: .line 2304
            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
        20: .line 2305
            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   21     0        this  Ljdk/nashorn/internal/parser/Parser;
            1   21     1   breakLine  I
            2   21     2  breakToken  J
            4   21     4   labelNode  Ljdk/nashorn/internal/parser/ParserContextLabelNode;
            7   10     5       ident  Ljdk/nashorn/internal/ir/IdentNode;
           13   21     5   labelName  Ljava/lang/String;
           14   21     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 2317
            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 2318
      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 2322
      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 2323
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* returnToken */
        start local 2 // long returnToken
         4: .line 2325
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         5: .line 2327
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         6: .line 2330
            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
                   31: 7
                   55: 7
              default: 8
          }
         7: .line 2335
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
            goto 9
         8: .line 2338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
         9: .line 2342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        10: .line 2345
            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 2346
            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 2358
            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 2360
      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 2362
            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 2363
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 2365
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         5: .line 2367
            iconst_0
            istore 5 /* yieldAsterisk */
        start local 5 // boolean yieldAsterisk
         6: .line 2368
            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 2369
            iconst_1
            istore 5 /* yieldAsterisk */
         8: .line 2370
            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 2371
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 2374
      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
                   22: 11
                   30: 11
                   31: 11
                   48: 11
                   55: 11
              default: 16
          }
        11: .line 2383
      StackMap locals:
      StackMap stack:
            iload 5 /* yieldAsterisk */
            ifne 16
        12: .line 2385
            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 2386
            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 2387
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        15: .line 2389
            goto 17
        16: .line 2395
      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 2400
      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 2404
            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 2417
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* withLine */
        start local 1 // int withLine
         1: .line 2418
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* withToken */
        start local 2 // long withToken
         2: .line 2420
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2423
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 5
         4: .line 2424
            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 2427
      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 2428
            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 2429
            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 2430
            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 2432
            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 2433
            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 2458
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* switchLine */
        start local 1 // int switchLine
         1: .line 2459
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* switchToken */
        start local 2 // long switchToken
         2: .line 2462
            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 2465
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 2468
            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 2469
            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 2471
            aconst_null
            astore 6 /* defaultCase */
        start local 6 // jdk.nashorn.internal.ir.CaseNode defaultCase
         7: .line 2473
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* cases */
        start local 7 // java.util.List cases
         8: .line 2475
            aconst_null
            astore 8 /* expression */
        start local 8 // jdk.nashorn.internal.ir.Expression expression
         9: .line 2478
            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 2479
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 8 /* expression */
        11: .line 2480
            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 2482
            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 2485
            goto 31
        14: .line 2487
      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 2488
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 10 /* caseToken */
        start local 10 // long caseToken
        16: .line 2490
            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: 17
                   65: 20
              default: 24
          }
        17: .line 2492
      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 2493
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 9 /* caseExpression */
        19: .line 2494
            goto 25
        20: .line 2497
      StackMap locals:
      StackMap stack:
            aload 6 /* defaultCase */
            ifnull 22
        21: .line 2498
            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 2500
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        23: .line 2501
            goto 25
        24: .line 2505
      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 2509
      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 2512
            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 2513
            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 2515
            aload 9 /* caseExpression */
            ifnonnull 30
        29: .line 2516
            aload 13 /* caseNode */
            astore 6 /* defaultCase */
        30: .line 2519
      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 2485
      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 2522
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        33: .line 2523
            goto 38
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 14
        35: .line 2524
            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 2525
            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 2526
            aload 14
            athrow
        38: .line 2524
      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 2525
            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 2528
            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 2529
            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 2530
            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 2542
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* labelToken */
        start local 1 // long labelToken
         1: .line 2544
            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 2546
            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 2548
            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 2549
            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 2552
      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 2553
            aconst_null
            astore 5 /* body */
        start local 5 // jdk.nashorn.internal.ir.Block body
         7: .line 2555
            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 2556
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getStatement:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 5 /* body */
         9: .line 2557
            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 2558
            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 2559
      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 2560
            aload 6
            athrow
        14: .line 2558
      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 2559
      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 2562
            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 2563
            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 2575
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* throwLine */
        start local 1 // int throwLine
         1: .line 2576
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* throwToken */
        start local 2 // long throwToken
         2: .line 2578
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2580
            aconst_null
            astore 4 /* expression */
        start local 4 // jdk.nashorn.internal.ir.Expression expression
         4: .line 2583
            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
                   31: 5
                   55: 5
              default: 6
          }
         5: .line 2587
      StackMap locals: int long jdk.nashorn.internal.ir.Expression
      StackMap stack:
            goto 7
         6: .line 2590
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.expression:()Ljdk/nashorn/internal/ir/Expression;
            astore 4 /* expression */
         7: .line 2594
      StackMap locals:
      StackMap stack:
            aload 4 /* expression */
            ifnonnull 9
         8: .line 2595
            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 2598
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
        10: .line 2600
            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 2601
            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 2622
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* tryLine */
        start local 1 // int tryLine
         1: .line 2623
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* tryToken */
        start local 2 // long tryToken
         2: .line 2625
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2628
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 4 /* startLine */
        start local 4 // int startLine
         4: .line 2629
            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 2633
            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 2634
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* catchBlocks */
        start local 7 // java.util.List catchBlocks
         7: .line 2636
            goto 39
         8: .line 2637
      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 2638
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 9 /* catchToken */
        start local 9 // long catchToken
        10: .line 2639
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        11: .line 2640
            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 2645
            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 2646
            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 2647
            iload 12 /* isDestructuring */
            ifeq 19
        17: .line 2648
            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 2654
            goto 20
        19: .line 2656
      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.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        20: .line 2664
      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 2665
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        22: .line 2667
            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 2668
            goto 25
        end local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        24: .line 2669
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* ifExpression */
        start local 13 // jdk.nashorn.internal.ir.Expression ifExpression
        25: .line 2672
      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 2674
            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 2677
            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 2678
            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 2679
            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 2680
            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 2681
            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 2682
            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 2683
            aload 17
            athrow
        35: .line 2681
      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 2682
            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 2686
            aload 13 /* ifExpression */
            ifnonnull 39
        38: .line 2687
            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 2636
      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 2692
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* finallyStatements */
        start local 8 // jdk.nashorn.internal.ir.Block finallyStatements
        41: .line 2694
            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 2695
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        43: .line 2696
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.Parser.getBlock:(Z)Ljdk/nashorn/internal/ir/Block;
            astore 8 /* finallyStatements */
        44: .line 2700
      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 2701
            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 2704
      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 2706
            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 2707
      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 2708
            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 2709
            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 2710
            aload 18
            athrow
        53: .line 2709
      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 2712
            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 2713
            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 2725
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* debuggerLine */
        start local 1 // int debuggerLine
         1: .line 2726
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* debuggerToken */
        start local 2 // long debuggerToken
         2: .line 2728
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 2729
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.endOfLine:()V
         4: .line 2730
            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 2731
            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 2756
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* primaryLine */
        start local 1 // int primaryLine
         1: .line 2757
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* primaryToken */
        start local 2 // long primaryToken
         2: .line 2759
            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: 25
                   47: 23
                   51: 24
                   72: 17
                   84: 21
                   93: 3
                   95: 19
                  103: 15
                  104: 15
                  105: 13
                  106: 15
                  107: 15
                  108: 15
                  109: 15
                  110: 15
                  111: 16
                  112: 7
                  113: 15
                  114: 15
                  117: 40
                  118: 40
              default: 41
          }
         3: .line 2761
      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 2762
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         5: .line 2763
            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 2764
            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 2766
      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 2767
            aload 5 /* ident */
            ifnonnull 10
         9: .line 2768
            goto 46
        10: .line 2770
      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 2771
            aload 0 /* this */
            aload 5 /* ident */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkEscapedKeyword:(Ljdk/nashorn/internal/ir/IdentNode;)V
        12: .line 2772
            aload 5 /* ident */
            areturn
        end local 5 // jdk.nashorn.internal.ir.IdentNode ident
        13: .line 2774
      StackMap locals: jdk.nashorn.internal.parser.Parser int long
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 15
        14: .line 2775
            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
        15: .line 2786
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        16: .line 2788
      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
        17: .line 2790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        18: .line 2791
            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
        19: .line 2793
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        20: .line 2794
            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
        21: .line 2796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        22: .line 2797
            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
        23: .line 2799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.arrayLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        24: .line 2801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.objectLiteral:()Ljdk/nashorn/internal/ir/ObjectNode;
            areturn
        25: .line 2803
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        26: .line 2805
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 37
        27: .line 2806
            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 31
        28: .line 2808
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        29: .line 2809
            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
        30: .line 2810
            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
        31: .line 2811
      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 37
        32: .line 2813
            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
        33: .line 2814
            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
        34: .line 2815
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.nextOrEOL:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        35: .line 2816
            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
        36: .line 2817
            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
        37: .line 2821
      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
        38: .line 2823
            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
        39: .line 2825
            aload 6 /* expression */
            areturn
        end local 6 // jdk.nashorn.internal.ir.Expression expression
        40: .line 2828
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.templateLiteral:()Ljdk/nashorn/internal/ir/Expression;
            areturn
        41: .line 2832
      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 44
        42: .line 2833
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        43: .line 2834
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
        44: .line 2836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isNonStrictModeIdent:()Z
            ifeq 46
        45: .line 2837
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            areturn
        46: .line 2842
      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   47     0          this  Ljdk/nashorn/internal/parser/Parser;
            1   47     1   primaryLine  I
            2   47     2  primaryToken  J
            4    7     4          name  Ljava/lang/String;
            8   13     5         ident  Ljdk/nashorn/internal/ir/IdentNode;
           33   37     6     restParam  Ljdk/nashorn/internal/ir/IdentNode;
           38   40     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 2853
            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 2855
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2858
            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 2860
            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 2862
            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 2864
            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 2890
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* arrayToken */
        start local 1 // long arrayToken
         1: .line 2892
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2895
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* elements */
        start local 3 // java.util.List elements
         3: .line 2897
            iconst_1
            istore 4 /* elision */
        start local 4 // boolean elision
         4: .line 2898
            iconst_0
            istore 5 /* hasSpread */
        start local 5 // boolean hasSpread
         5: .line 2901
      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 2902
            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
                   22: 9
                   48: 7
                   57: 14
              default: 18
          }
         7: .line 2904
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 2906
            goto 29
         9: .line 2909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 2912
            iload 4 /* elision */
            ifeq 12
        11: .line 2913
            aload 3 /* elements */
            aconst_null
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 2916
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* elision */
        13: .line 2918
            goto 5
        14: .line 2921
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 18
        15: .line 2922
            iconst_1
            istore 5 /* hasSpread */
        16: .line 2923
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 6 /* spreadToken */
        17: .line 2924
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        18: .line 2929
      StackMap locals:
      StackMap stack:
            iload 4 /* elision */
            ifne 20
        19: .line 2930
            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 2934
      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 2935
            aload 8 /* expression */
            ifnull 26
        22: .line 2936
            lload 6 /* spreadToken */
            lconst_0
            lcmp
            ifeq 24
        23: .line 2937
            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 2939
      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 2940
            goto 27
        26: .line 2941
      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 2944
      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 2900
            goto 5
        29: .line 2949
      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 2968
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* objectToken */
        start local 1 // long objectToken
         1: .line 2970
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 2974
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* elements */
        start local 3 // java.util.List elements
         3: .line 2975
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.Map map
         4: .line 2978
            iconst_1
            istore 5 /* commaSeen */
        start local 5 // boolean commaSeen
         5: .line 2981
      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
                   22: 8
                   55: 6
              default: 13
          }
         6: .line 2983
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 2984
            goto 51
         8: .line 2987
      StackMap locals:
      StackMap stack:
            iload 5 /* commaSeen */
            ifeq 10
         9: .line 2988
            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 2990
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        11: .line 2991
            iconst_1
            istore 5 /* commaSeen */
        12: .line 2992
            goto 5
        13: .line 2995
      StackMap locals:
      StackMap stack:
            iload 5 /* commaSeen */
            ifne 15
        14: .line 2996
            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 2999
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* commaSeen */
        16: .line 3001
            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 3003
            aload 6 /* property */
            invokevirtual jdk.nashorn.internal.ir.PropertyNode.isComputed:()Z
            ifeq 20
        18: .line 3004
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 3005
            goto 5
        20: .line 3008
      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 3009
            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 3011
            aload 8 /* existing */
            ifnonnull 26
        23: .line 3012
            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 3013
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 3014
            goto 5
        26: .line 3017
      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 3021
            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 3022
            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 3023
            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 3025
            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 3026
            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 3027
            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 3029
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifne 36
        34: .line 3030
            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 3031
            goto 39
        36: .line 3032
      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 3033
            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 3034
            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 3038
      StackMap locals:
      StackMap stack:
            aload 10 /* value */
            ifnonnull 40
            aload 13 /* prevValue */
            ifnull 43
        40: .line 3039
      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 3040
            aload 3 /* elements */
            aload 6 /* property */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        42: .line 3041
            goto 5
      StackMap locals:
      StackMap stack:
        43: aload 11 /* getter */
            ifnull 47
        44: .line 3042
            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 3043
      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 3044
            goto 5
      StackMap locals:
      StackMap stack:
        47: aload 12 /* setter */
            ifnull 5
        48: .line 3045
            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 3046
      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 2980
            goto 5
        51: .line 3052
      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 3057
            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 3058
            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 3061
      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 3062
            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 3065
            aload 5 /* prevValue */
            ifnull 10
            iload 9 /* isAccessor */
            ifeq 10
         9: .line 3066
            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 3070
      StackMap locals: int
      StackMap stack:
            iload 8 /* isPrevAccessor */
            ifeq 12
            aload 2 /* value */
            ifnull 12
        11: .line 3071
            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 3074
      StackMap locals:
      StackMap stack:
            iload 9 /* isAccessor */
            ifeq 16
            iload 8 /* isPrevAccessor */
            ifeq 16
        13: .line 3075
            aload 3 /* getter */
            ifnull 14
            aload 6 /* prevGetter */
            ifnonnull 15
        14: .line 3076
      StackMap locals:
      StackMap stack:
            aload 4 /* setter */
            ifnull 16
            aload 7 /* prevSetter */
            ifnull 16
        15: .line 3077
      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 3080
      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 3092
            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 { // 103 - 112
                  103: 4
                  104: 4
                  105: 2
                  106: 4
                  107: 4
                  108: 4
                  109: 4
                  110: 4
                  111: 5
                  112: 1
              default: 5
          }
         1: .line 3094
      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 3096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 4
         3: .line 3097
            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 3106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            areturn
         5: .line 3108
      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 3119
            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 3120
            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 3121
            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 3122
            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 3133
            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 3134
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.computedPropertyName:()Ljdk/nashorn/internal/ir/Expression;
            areturn
         2: .line 3136
      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 3161
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* propertyToken */
        start local 1 // long propertyToken
         1: .line 3162
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 3 /* functionLine */
        start local 3 // int functionLine
         2: .line 3167
            iconst_0
            istore 6 /* generator */
        start local 6 // boolean generator
         3: .line 3168
            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 3169
            iconst_1
            istore 6 /* generator */
         5: .line 3170
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 3173
      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 3174
            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 3176
            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 3178
            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 3179
      StackMap locals: int java.lang.String
      StackMap stack:
            lload 1 /* propertyToken */
            lstore 9 /* getSetToken */
        start local 9 // long getSetToken
        13: .line 3181
            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 3183
      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 3184
            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 3187
      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 3188
            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 3194
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* isIdentifier */
        start local 5 // boolean isIdentifier
        21: .line 3195
            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 3196
            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 3197
            aload 9 /* identNode */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsProtoPropertyName:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* identNode */
        24: .line 3199
      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 3200
            goto 28
        end local 5 // boolean isIdentifier
        end local 4 // jdk.nashorn.internal.ir.Expression propertyName
        26: .line 3201
      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 3202
            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 3207
      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 3208
            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 3211
      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 3212
            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 3213
            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 3214
            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 3215
            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 3217
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 9 /* assignToken */
        start local 9 // long assignToken
        38: .line 3218
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        39: .line 3219
            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 3220
            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 3222
            goto 50
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        42: .line 3223
      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 3225
            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 3227
            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 3228
            goto 49
        end local 8 // jdk.nashorn.internal.ir.Expression propertyValue
      StackMap locals:
      StackMap stack: java.lang.Throwable
        46: astore 9
        47: .line 3229
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        48: .line 3230
            aload 9
            athrow
        start local 8 // jdk.nashorn.internal.ir.Expression propertyValue
        49: .line 3229
      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 3233
      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 3237
            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 3241
            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 3242
            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 3243
            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 3244
            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 3245
            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 3246
            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 3248
            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 3249
            aload 9 /* functionNode */
            iload 4 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        12: .line 3250
            iload 5 /* computed */
            ifeq 14
        13: .line 3251
            aload 9 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        14: .line 3253
      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 3259
            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 3260
            goto 20
        end local 10 // jdk.nashorn.internal.ir.Block functionBody
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 11
        18: .line 3261
            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 3262
            aload 11
            athrow
        start local 10 // jdk.nashorn.internal.ir.Block functionBody
        20: .line 3261
      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 3264
            aload 0 /* this */
        22: .line 3265
            aload 9 /* functionNode */
        23: .line 3266
            lload 1 /* getSetToken */
        24: .line 3267
            aload 8 /* getNameNode */
        25: .line 3268
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        26: .line 3269
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.GETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        27: .line 3270
            iload 3 /* functionLine */
        28: .line 3271
            aload 10 /* functionBody */
        29: .line 3264
            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 3273
            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 3277
            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 3281
            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 3282
            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 3283
            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 3284
            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 3285
            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 3289
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifeq 13
        10: .line 3290
            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 3291
            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 3292
            goto 14
        end local 9 // jdk.nashorn.internal.ir.IdentNode argIdent
        13: .line 3293
      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 3295
      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 3296
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
        16: .line 3297
            aload 9 /* argIdent */
            ifnull 18
        17: .line 3298
            aload 10 /* parameters */
            aload 9 /* argIdent */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 3302
      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 3303
            aload 11 /* functionNode */
            iload 4 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        20: .line 3304
            iload 5 /* computed */
            ifeq 22
        21: .line 3305
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        22: .line 3307
      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 3311
            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 3312
            goto 28
        end local 12 // jdk.nashorn.internal.ir.Block functionBody
      StackMap locals:
      StackMap stack: java.lang.Throwable
        25: astore 13
        26: .line 3313
            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 3314
            aload 13
            athrow
        start local 12 // jdk.nashorn.internal.ir.Block functionBody
        28: .line 3313
      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 3317
            aload 0 /* this */
        30: .line 3318
            aload 11 /* functionNode */
        31: .line 3319
            lload 1 /* getSetToken */
        32: .line 3320
            aload 8 /* setNameNode */
        33: .line 3321
            aload 10 /* parameters */
        34: .line 3322
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.SETTER:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        35: .line 3323
            iload 3 /* functionLine */
        36: .line 3324
            aload 12 /* functionBody */
        37: .line 3317
            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 3326
            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 3330
            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 3331
            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 3333
            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 3334
            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 3335
            aload 11 /* functionNode */
            iload 6 /* flags */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         9: .line 3336
            iload 7 /* computed */
            ifeq 11
        10: .line 3337
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        11: .line 3339
      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 3342
            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 3345
            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 3346
            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 3347
            aload 11 /* functionNode */
            aload 13 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        16: .line 3348
            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 3349
            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 3350
            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 3351
            aload 14
            athrow
        start local 13 // java.util.List parameters
        21: .line 3350
      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 3353
            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 3355
            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 3357
            aload 0 /* this */
        25: .line 3358
            aload 11 /* functionNode */
        26: .line 3359
            lload 2 /* methodToken */
        27: .line 3360
            aload 9 /* methodNameNode */
        28: .line 3361
            aload 13 /* parameters */
        29: .line 3362
            aload 10 /* functionKind */
        30: .line 3363
            iload 4 /* methodLine */
        31: .line 3364
            aload 14 /* functionBody */
        32: .line 3357
            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 3365
            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 3367
            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 3365
            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 3366
      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 3367
            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 3368
            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 3404
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* callLine */
        start local 1 // int callLine
         1: .line 3405
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* callToken */
        start local 2 // long callToken
         2: .line 3407
            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 3409
            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 9
         4: .line 3410
            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 3413
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 8
         6: .line 3414
            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 3415
            aload 0 /* this */
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.parser.Parser.checkEscapedKeyword:(Ljdk/nashorn/internal/ir/IdentNode;)V
         8: .line 3418
      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
         9: .line 3424
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 1 /* callLine */
        10: .line 3425
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* callToken */
        11: .line 3427
            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: 12
                   27: 20
                   47: 15
                  117: 24
                  118: 24
              default: 27
          }
        12: .line 3430
      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
        13: .line 3433
            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 */
        14: .line 3435
            goto 9
        end local 5 // java.util.List arguments
        15: .line 3438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        16: .line 3441
            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
        17: .line 3443
            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
        18: .line 3446
            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 */
        19: .line 3448
            goto 9
        end local 5 // jdk.nashorn.internal.ir.Expression rhs
        20: .line 3451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        21: .line 3453
            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
        22: .line 3456
            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 */
        23: .line 3458
            goto 9
        end local 5 // jdk.nashorn.internal.ir.IdentNode property
        24: .line 3463
      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
        25: .line 3466
            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 */
        26: .line 3468
            goto 9
        end local 5 // java.util.List arguments
        27: .line 3475
      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   28     0       this  Ljdk/nashorn/internal/parser/Parser;
            1   28     1   callLine  I
            2   28     2  callToken  J
            3   28     4        lhs  Ljdk/nashorn/internal/ir/Expression;
            5    9     5  arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
           13   15     5  arguments  Ljava/util/List<Ljdk/nashorn/internal/ir/Expression;>;
           17   20     5        rhs  Ljdk/nashorn/internal/ir/Expression;
           22   24     5   property  Ljdk/nashorn/internal/ir/IdentNode;
           25   27     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 3489
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* newToken */
        start local 1 // long newToken
         1: .line 3491
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 3493
            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 3494
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 3495
            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 3496
            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 3497
            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 3499
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 3500
            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 3501
            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 3503
      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 3508
      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 3509
            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 3510
            aload 4 /* constructor */
            ifnonnull 15
        14: .line 3511
            aconst_null
            areturn
        15: .line 3517
      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 3518
            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 3519
            goto 19
        end local 5 // java.util.ArrayList arguments
        18: .line 3520
      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 3532
      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 3533
            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 3536
      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 3538
            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 3568
            iconst_0
            istore 2 /* isSuper */
        start local 2 // boolean isSuper
         1: .line 3570
            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
                   61: 6
                   75: 4
                   83: 2
                   91: 9
              default: 23
          }
         2: .line 3573
      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 3574
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         4: .line 3578
      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 3579
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         6: .line 3582
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 9
         7: .line 3583
            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 3584
            goto 24
        end local 1 // jdk.nashorn.internal.ir.Expression lhs
         9: .line 3590
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isES6:()Z
            ifeq 23
        10: .line 3591
            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 3592
            aload 3 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isMethod:()Z
            ifeq 23
        12: .line 3593
            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 3594
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        14: .line 3595
            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 3597
            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
                   27: 16
                   47: 16
              default: 22
          }
        16: .line 3600
      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 3601
            iconst_1
            istore 2 /* isSuper */
        18: .line 3602
            goto 24
        19: .line 3604
      StackMap locals:
      StackMap stack:
            aload 3 /* currentFunction */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSubclassConstructor:()Z
            ifeq 22
        20: .line 3605
            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 3606
            goto 24
        22: .line 3611
      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 3623
      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 3630
      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 3632
            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
                   27: 34
                   47: 26
                  117: 43
                  118: 43
              default: 47
          }
        26: .line 3634
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        27: .line 3637
            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 3639
            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 3642
            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 3644
            iload 2 /* isSuper */
            ifeq 24
        31: .line 3645
            iconst_0
            istore 2 /* isSuper */
        32: .line 3646
            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 3649
            goto 24
        end local 5 // jdk.nashorn.internal.ir.Expression index
        34: .line 3652
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            ifnonnull 36
        35: .line 3653
            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 3656
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        37: .line 3658
            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 3661
            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 3663
            iload 2 /* isSuper */
            ifeq 24
        40: .line 3664
            iconst_0
            istore 2 /* isSuper */
        41: .line 3665
            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 3668
            goto 24
        end local 5 // jdk.nashorn.internal.ir.IdentNode property
        43: .line 3673
      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 3674
            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 3676
            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 3678
            goto 24
        end local 6 // java.util.List arguments
        end local 5 // int callLine
        end local 3 // long callToken
        47: .line 3685
      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 3706
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* nodeList */
        start local 1 // java.util.ArrayList nodeList
         1: .line 3708
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 3711
            iconst_1
            istore 2 /* first */
        start local 2 // boolean first
         3: .line 3713
            goto 16
         4: .line 3715
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            iload 2 /* first */
            ifne 7
         5: .line 3716
            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 3717
            goto 8
         7: .line 3718
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* first */
         8: .line 3721
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 3 /* spreadToken */
        start local 3 // long spreadToken
         9: .line 3722
            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 3723
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* spreadToken */
        11: .line 3724
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        12: .line 3728
      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 3729
            lload 3 /* spreadToken */
            lconst_0
            lcmp
            ifeq 15
        14: .line 3730
            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 3732
      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 3713
      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 3735
            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 3736
            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 3740
            aload 0 /* list */
            invokevirtual java.util.ArrayList.size:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 3
          }
         1: .line 3742
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 3745
      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 3748
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokevirtual java.util.ArrayList.trimToSize:()V
         4: .line 3749
            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 3769
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* functionToken */
        start local 3 // long functionToken
         1: .line 3770
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 5 /* functionLine */
        start local 5 // int functionLine
         2: .line 3772
            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 3773
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 3775
            iconst_0
            istore 6 /* generator */
        start local 6 // boolean generator
         5: .line 3776
            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 3777
            iconst_1
            istore 6 /* generator */
         7: .line 3778
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 3781
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 7 /* name */
        start local 7 // jdk.nashorn.internal.ir.IdentNode name
         9: .line 3783
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isBindingIdentifier:()Z
            ifeq 16
        10: .line 3784
            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 3788
      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 3790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getIdent:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 7 /* name */
        14: .line 3791
            aload 0 /* this */
            aload 7 /* name */
            ldc "function name"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
        15: .line 3792
            goto 19
      StackMap locals:
      StackMap stack:
        16: iload 1 /* isStatement */
            ifeq 19
        17: .line 3798
            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 3799
            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 3804
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* isAnonymous */
        start local 8 // boolean isAnonymous
        20: .line 3805
            aload 7 /* name */
            ifnonnull 24
        21: .line 3806
            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 3807
            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 3808
            iconst_1
            istore 8 /* isAnonymous */
        end local 9 // java.lang.String tmpName
        24: .line 3811
      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 3812
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 10 /* parameters */
        start local 10 // java.util.List parameters
        28: .line 3813
            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 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.push:(Ljdk/nashorn/internal/parser/ParserContextNode;)Ljdk/nashorn/internal/parser/ParserContextNode;
            pop
        30: .line 3816
            aconst_null
            astore 12 /* functionBody */
        start local 12 // jdk.nashorn.internal.ir.Block functionBody
        31: .line 3819
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.hideDefaultName:()V
        32: .line 3821
            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 3823
            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 3824
            aload 0 /* this */
            iload 6 /* generator */
            invokevirtual jdk.nashorn.internal.parser.Parser.formalParameterList:(Z)Ljava/util/List;
            astore 10 /* parameters */
        35: .line 3825
            aload 11 /* functionNode */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        36: .line 3826
            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 3827
            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 3828
            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 3829
            aload 14
            athrow
        41: .line 3828
      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 3831
            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 3833
            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 3834
            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 3835
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        47: .line 3836
            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 3837
            aload 15
            athrow
        49: .line 3835
      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 3836
            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 3839
            iload 1 /* isStatement */
            ifeq 63
        52: .line 3840
            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 3841
      StackMap locals:
      StackMap stack:
            aload 11 /* functionNode */
            iconst_2
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        54: .line 3842
            goto 61
      StackMap locals:
      StackMap stack:
        55: aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            ifeq 57
        56: .line 3843
            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 3844
      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 3845
            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 3846
      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 3847
            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 3849
      StackMap locals:
      StackMap stack:
            aload 7 /* name */
            invokestatic jdk.nashorn.internal.parser.Parser.isArguments:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            ifeq 63
        62: .line 3850
            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 3854
      StackMap locals:
      StackMap stack:
            iload 8 /* isAnonymous */
            ifeq 65
        64: .line 3855
            aload 11 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        65: .line 3858
      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 3860
            aload 0 /* this */
        67: .line 3861
            aload 11 /* functionNode */
        68: .line 3862
            lload 3 /* functionToken */
        69: .line 3863
            aload 7 /* name */
        70: .line 3864
            aload 10 /* parameters */
        71: .line 3865
            aload 9 /* functionKind */
        72: .line 3866
            iload 5 /* functionLine */
        73: .line 3867
            aload 12 /* functionBody */
        74: .line 3860
            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 3869
            iload 1 /* isStatement */
            ifeq 91
        76: .line 3870
            iload 8 /* isAnonymous */
            ifeq 79
        77: .line 3871
            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 3872
            aload 13 /* function */
            areturn
        79: .line 3876
      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 3877
            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 3878
            iload 2 /* topLevel */
            ifeq 87
        85: .line 3879
            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 3880
            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 3881
            aload 0 /* this */
            aload 15 /* varNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.prependStatement:(Ljdk/nashorn/internal/ir/Statement;)V
        89: .line 3882
            goto 91
        90: .line 3883
      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 3887
      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 3891
            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 3892
            aload 3 /* duplicateParameter */
            ifnull 17
         2: .line 3893
            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 3894
      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 3897
      StackMap locals:
      StackMap stack:
            aload 1 /* parameters */
            invokeinterface java.util.List.size:()I
            istore 4 /* arity */
        start local 4 // int arity
         5: .line 3898
            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 3900
            iload 4 /* arity */
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
         7: goto 16
         8: .line 3901
      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 3902
            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 3904
            aload 5 /* parametersSet */
            aload 8 /* parameterName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 14
        11: .line 3906
            aload 2 /* functionNode */
            aload 8 /* parameterName */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.uniqueName:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* parameterName */
        12: .line 3907
            aload 7 /* parameter */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getToken:()J
            lstore 9 /* parameterToken */
        start local 9 // long parameterToken
        13: .line 3908
            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 3910
      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 3900
            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 3913
      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 3916
            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 3917
      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 3918
            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 3919
            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 3921
      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 3925
            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 3926
            aload 3 /* defaultFunctionName */
            invokestatic jdk.nashorn.internal.parser.Parser.isValidIdentifier:(Ljava/lang/String;)Z
            ifeq 5
         2: .line 3927
            iload 2 /* isStatement */
            ifeq 4
         3: .line 3930
            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 3932
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* defaultFunctionName */
            areturn
         5: .line 3934
      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 3938
            aload 0 /* name */
            ifnull 1
            aload 0 /* name */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 2
         1: .line 3939
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 3941
      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 3942
            iconst_0
            ireturn
         4: .line 3944
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* i */
        start local 1 // int i
         5: goto 9
         6: .line 3945
      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 3946
            iconst_0
            ireturn
         8: .line 3944
      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 3949
            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 3953
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.isEmpty:()Z
            ifne 8
         1: .line 3954
            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 3955
            aload 1 /* nameExpr */
            instanceof jdk.nashorn.internal.ir.PropertyKey
            ifeq 5
         3: .line 3956
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.markDefaultNameUsed:()V
         4: .line 3957
            aload 1 /* nameExpr */
            checkcast jdk.nashorn.internal.ir.PropertyKey
            invokeinterface jdk.nashorn.internal.ir.PropertyKey.getPropertyName:()Ljava/lang/String;
            areturn
         5: .line 3958
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* nameExpr */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifeq 8
         6: .line 3959
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.markDefaultNameUsed:()V
         7: .line 3960
            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 3963
      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 3967
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
         1: .line 3968
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.hideDefaultName:()V
         2: .line 3969
            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 3974
            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 3975
            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 3988
            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 4006
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* parameters */
        start local 3 // java.util.ArrayList parameters
         1: .line 4008
            iconst_1
            istore 4 /* first */
        start local 4 // boolean first
         2: .line 4010
            goto 68
         3: .line 4012
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            iload 4 /* first */
            ifne 6
         4: .line 4013
            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 4014
            goto 7
         6: .line 4015
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* first */
         7: .line 4018
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* restParameter */
        start local 5 // boolean restParameter
         8: .line 4019
            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 4020
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        10: .line 4021
            iconst_1
            istore 5 /* restParameter */
        11: .line 4024
      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 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
        13: .line 4028
      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 4029
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 8 /* paramLine */
        start local 8 // int paramLine
        15: .line 4032
            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 4033
      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 4035
            iload 5 /* restParameter */
            ifeq 22
        18: .line 4036
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsRestParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        19: .line 4038
            aload 0 /* this */
            aload 1 /* endType */
            invokevirtual jdk.nashorn.internal.parser.Parser.expectDontAdvance:(Ljdk/nashorn/internal/parser/TokenType;)V
        20: .line 4039
            aload 3 /* parameters */
            aload 9 /* ident */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        21: .line 4040
            goto 69
        22: .line 4041
      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 4042
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        24: .line 4043
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDefaultParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        25: .line 4045
            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 4047
            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 4051
      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 4053
            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 4054
            aload 11 /* currentFunction */
            ifnull 38
        30: .line 4055
            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 4057
            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 4058
            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 4059
            goto 38
        34: .line 4062
      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 4063
            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 4064
            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 4065
            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 4070
      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 4071
            aload 10 /* currentFunction */
            ifnull 67
        40: .line 4072
            aload 10 /* currentFunction */
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterBinding:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            pop
        41: .line 4073
            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 4074
      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 4077
            goto 67
        end local 9 // jdk.nashorn.internal.ir.IdentNode ident
        44: .line 4078
      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 4080
            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 4081
            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 4083
            aload 9 /* ident */
            astore 11 /* value */
        start local 11 // jdk.nashorn.internal.ir.Expression value
        48: .line 4084
            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 4085
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        50: .line 4086
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.setIsDefaultParameter:()Ljdk/nashorn/internal/ir/IdentNode;
            astore 9 /* ident */
        51: .line 4089
            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 4091
            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 4093
            aload 12 /* initializer */
            astore 11 /* value */
        54: .line 4094
            goto 57
        55: .line 4096
      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 4097
            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 4101
      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 4102
            aload 12 /* currentFunction */
            ifnull 67
        59: .line 4104
            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 4105
            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 4107
            aload 9 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.isDefaultParameter:()Z
            ifeq 64
        62: .line 4108
            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 4109
            goto 67
        64: .line 4110
      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 4112
            goto 67
        66: .line 4113
      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 4117
      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 4010
      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 4120
      StackMap locals:
      StackMap stack:
            aload 3 /* parameters */
            invokevirtual java.util.ArrayList.trimToSize:()V
        70: .line 4121
            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 4125
            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 4141
            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 4153
            lconst_0
            lstore 2 /* lastToken */
        start local 2 // long lastToken
         1: .line 4154
            aconst_null
            astore 4 /* body */
        start local 4 // jdk.nashorn.internal.parser.ParserContextBlockNode body
         2: .line 4155
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 5 /* bodyToken */
        start local 5 // long bodyToken
         3: .line 4157
            iconst_0
            istore 8 /* bodyFinish */
        start local 8 // int bodyFinish
         4: .line 4160
            aconst_null
            astore 10 /* endParserState */
        start local 10 // java.lang.Object endParserState
         5: .line 4163
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.newBlock:()Ljdk/nashorn/internal/parser/ParserContextBlockNode;
            astore 4 /* body */
         6: .line 4164
            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 4166
            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 4168
      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 4169
      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 4170
            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 4172
            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 4181
            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 4182
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.previousToken:J
            lstore 2 /* lastToken */
        17: .line 4183
            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 4184
            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 4186
      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 4192
            iload 9 /* parseBody */
            ifeq 49
        23: .line 4193
            aload 1 /* functionNode */
            ldc 67108864
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
        24: .line 4194
            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 4195
            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 4198
            goto 49
        27: .line 4199
      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 4200
            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 4201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        30: .line 4203
            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 4204
            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 4206
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.Parser.sourceElements:(I)V
        33: .line 4207
            aload 0 /* this */
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        34: .line 4208
            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 4209
            aload 0 /* this */
            aload 12 /* prevFunctionDecls */
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        37: .line 4210
            aload 13
            athrow
        38: .line 4209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* prevFunctionDecls */
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        39: .line 4212
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastToken */
        40: .line 4213
            iload 9 /* parseBody */
            ifeq 42
        41: .line 4218
            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 4231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.finish:I
            istore 8 /* bodyFinish */
        43: .line 4232
            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 4233
            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 4235
            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 4236
            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 4237
            aload 15
            athrow
        start local 9 // boolean parseBody
        49: .line 4236
      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 4241
            iload 9 /* parseBody */
            ifeq 53
        51: .line 4242
            aload 1 /* functionNode */
            aload 10 /* endParserState */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setEndParserState:(Ljava/lang/Object;)V
        52: .line 4243
            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 4249
            aload 4 /* body */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setStatements:(Ljava/util/List;)V
        55: .line 4252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnull 62
        56: .line 4257
            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 4258
            aload 11 /* data */
            ifnull 62
        58: .line 4261
            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 4264
            aload 1 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.hasNestedEval:()Z
            ifeq 62
        60: .line 4265
            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 4266
      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 4270
      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 4271
            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 4275
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.reparsedFunction:Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
            ifnonnull 2
         1: .line 4277
            iconst_0
            ireturn
         2: .line 4280
      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 4281
            aload 2 /* data */
            ifnonnull 5
         4: .line 4285
            iconst_0
            ireturn
         5: .line 4287
      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 4288
            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 4290
      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 4292
            goto 18
         9: .line 4293
      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 4294
            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 4295
            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 4296
            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 4297
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        14: .line 4298
            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 4299
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // long nextToken
        17: .line 4292
      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 4304
      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 4305
            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 4306
            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 4307
            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 4310
            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 4311
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.scanFirstToken:()V
        27: .line 4313
            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 4341
            aload 1 /* functionNode */
            iconst_4
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getDebugFlag:(I)Z
            ifeq 2
         1: .line 4342
            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 4345
      StackMap locals:
      StackMap stack:
            aload 1 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getDebugFlag:(I)Z
            ifeq 4
         3: .line 4346
            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 4348
      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 4351
            aconst_null
            astore 2 /* lastDecl */
        start local 2 // jdk.nashorn.internal.ir.VarNode lastDecl
         1: .line 4352
            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 4353
      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 4354
            aload 2 /* lastDecl */
            ifnonnull 7
            aload 4 /* decl */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 7
         5: .line 4355
            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 4356
            aload 1 /* functionNode */
            sipush 1024
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         7: .line 4358
      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 4352
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            ifge 3
        end local 3 // int i
        10: .line 4360
            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 4363
            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 4364
      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 4366
      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 4367
            aload 4 /* args */
            aload 1 /* lhs */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 4368
            aload 2 /* rhs */
            ifnonnull 7
         5: .line 4369
            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 4370
            goto 8
         7: .line 4371
      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 4373
      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 4374
            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=6, locals=8, args_size=1
        start local 0 // jdk.nashorn.internal.parser.Parser this
         0: .line 4404
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* unaryToken */
        start local 1 // long unaryToken
         1: .line 4406
            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: 8
                   19: 2
                   20: 11
                   24: 2
                   25: 11
                   56: 8
                   66: 8
                   97: 8
                   99: 8
              default: 17
          }
         2: .line 4409
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 3 /* opType */
        start local 3 // jdk.nashorn.internal.parser.TokenType opType
         3: .line 4410
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 4411
            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 4412
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 1 /* unaryToken */
            aload 3 /* opType */
            getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 6
            getstatic jdk.nashorn.internal.parser.TokenType.POS:Ljdk/nashorn/internal/parser/TokenType;
            goto 7
      StackMap locals: jdk.nashorn.internal.parser.Parser long jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression
      StackMap stack: new 5 new 5 long
         6: getstatic jdk.nashorn.internal.parser.TokenType.NEG:Ljdk/nashorn/internal/parser/TokenType;
      StackMap locals: jdk.nashorn.internal.parser.Parser long jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression
      StackMap stack: new 5 new 5 long jdk.nashorn.internal.parser.TokenType
         7: invokestatic jdk.nashorn.internal.parser.Token.recast:(JLjdk/nashorn/internal/parser/TokenType;)J
            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
        end local 3 // jdk.nashorn.internal.parser.TokenType opType
         8: .line 4419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         9: .line 4420
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.unaryExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 3 /* expr */
        start local 3 // jdk.nashorn.internal.ir.Expression expr
        10: .line 4421
            new jdk.nashorn.internal.ir.UnaryNode
            dup
            lload 1 /* unaryToken */
            aload 3 /* expr */
            invokespecial jdk.nashorn.internal.ir.UnaryNode.<init>:(JLjdk/nashorn/internal/ir/Expression;)V
            areturn
        end local 3 // jdk.nashorn.internal.ir.Expression expr
        11: .line 4425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 4 /* opType */
        start local 4 // jdk.nashorn.internal.parser.TokenType opType
        12: .line 4426
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        13: .line 4428
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.leftHandSideExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 5 /* lhs */
        start local 5 // jdk.nashorn.internal.ir.Expression lhs
        14: .line 4430
            aload 5 /* lhs */
            ifnonnull 16
        15: .line 4431
            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
        16: .line 4434
      StackMap locals: jdk.nashorn.internal.parser.Parser long top jdk.nashorn.internal.parser.TokenType jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            lload 1 /* unaryToken */
            aload 4 /* opType */
            aload 5 /* 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 5 // jdk.nashorn.internal.ir.Expression lhs
        end local 4 // jdk.nashorn.internal.parser.TokenType opType
        17: .line 4440
      StackMap locals: jdk.nashorn.internal.parser.Parser long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.leftHandSideExpression:()Ljdk/nashorn/internal/ir/Expression;
            astore 3 /* expression */
        start local 3 // jdk.nashorn.internal.ir.Expression expression
        18: .line 4442
            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 27
        19: .line 4443
            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
                   20: 20
                   25: 20
              default: 27
          }
        20: .line 4446
      StackMap locals: jdk.nashorn.internal.ir.Expression
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* opToken */
        start local 4 // long opToken
        21: .line 4447
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.type:Ljdk/nashorn/internal/parser/TokenType;
            astore 6 /* opType */
        start local 6 // jdk.nashorn.internal.parser.TokenType opType
        22: .line 4448
            aload 3 /* expression */
            astore 7 /* lhs */
        start local 7 // jdk.nashorn.internal.ir.Expression lhs
        23: .line 4450
            aload 7 /* lhs */
            ifnonnull 25
        24: .line 4451
            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
        25: .line 4453
      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
        26: .line 4455
            aload 0 /* this */
            lload 4 /* opToken */
            aload 6 /* opType */
            aload 7 /* 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 7 // jdk.nashorn.internal.ir.Expression lhs
        end local 6 // jdk.nashorn.internal.parser.TokenType opType
        end local 4 // long opToken
        27: .line 4461
      StackMap locals:
      StackMap stack:
            aload 3 /* expression */
            ifnonnull 29
        28: .line 4462
            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
        29: .line 4465
      StackMap locals:
      StackMap stack:
            aload 3 /* expression */
            areturn
        end local 3 // jdk.nashorn.internal.ir.Expression expression
        end local 1 // long unaryToken
        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  unaryToken  J
            3    8     3      opType  Ljdk/nashorn/internal/parser/TokenType;
            5    8     4        expr  Ljdk/nashorn/internal/ir/Expression;
           10   11     3        expr  Ljdk/nashorn/internal/ir/Expression;
           12   17     4      opType  Ljdk/nashorn/internal/parser/TokenType;
           14   17     5         lhs  Ljdk/nashorn/internal/ir/Expression;
           18   30     3  expression  Ljdk/nashorn/internal/ir/Expression;
           21   27     4     opToken  J
           22   27     6      opType  Ljdk/nashorn/internal/parser/TokenType;
           23   27     7         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 4469
            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 4471
      StackMap locals:
      StackMap stack:
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.AccessNode
            ifne 5
         2: .line 4472
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IndexNode
            ifne 5
         3: .line 4473
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifne 5
         4: .line 4474
            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 4477
      StackMap locals:
      StackMap stack:
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 9
         6: .line 4478
            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 4479
            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 4481
      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 4484
      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 4585
            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 4589
            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 4590
            goto 14
         2: .line 4591
      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 4592
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 4594
            iconst_0
            istore 5 /* rhsRestParameter */
        start local 5 // boolean rhsRestParameter
         5: .line 4595
            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 4598
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.isRestParameterEndOfArrowFunctionParameterList:()Z
            ifeq 9
         7: .line 4599
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         8: .line 4600
            iconst_1
            istore 5 /* rhsRestParameter */
         9: .line 4604
      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 4606
            iload 5 /* rhsRestParameter */
            ifeq 13
        11: .line 4607
            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 4611
            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 4614
      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 4590
      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 4616
            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 4620
            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 4624
            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 4629
            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 4630
            aload 1 /* exprLhs */
            astore 5 /* lhs */
        start local 5 // jdk.nashorn.internal.ir.Expression lhs
         2: .line 4633
            goto 34
         3: .line 4635
      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 4637
            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 4639
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 4643
            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 4645
            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 4648
            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 4651
            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 4652
            goto 33
        11: .line 4654
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        12: .line 4658
            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 4659
            iload 9 /* isAssign */
            ifeq 17
        16: .line 4660
            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 4663
      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 4665
            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 4668
            goto 22
        20: .line 4671
      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 4672
            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 4668
      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 4669
            iload 10 /* nextPrecedence */
            iload 4 /* precedence */
            if_icmpgt 20
        24: .line 4670
            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 4674
            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 4675
            iload 9 /* isAssign */
            ifeq 29
        28: .line 4676
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        29: .line 4678
      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 4675
      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 4676
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        32: .line 4679
      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 4682
      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 4633
      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 4685
      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 4705
            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 4706
            aload 0 /* this */
            iload 1 /* noIn */
            invokevirtual jdk.nashorn.internal.parser.Parser.yieldExpression:(Z)Ljdk/nashorn/internal/ir/Expression;
            areturn
         2: .line 4709
      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 4710
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 4 /* startLine */
        start local 4 // int startLine
         4: .line 4711
            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 4713
            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 4714
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.checkNoLineTerminator:()Z
            ifeq 14
         7: .line 4716
            aload 5 /* exprLhs */
            instanceof jdk.nashorn.internal.ir.ExpressionList
            ifeq 12
         8: .line 4717
            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 4718
            goto 13
        end local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        12: .line 4719
      StackMap locals:
      StackMap stack:
            aload 5 /* exprLhs */
            astore 6 /* paramListExpr */
        start local 6 // jdk.nashorn.internal.ir.Expression paramListExpr
        13: .line 4721
      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 4724
      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 4726
      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 4727
            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 4728
            iload 6 /* isAssign */
            ifeq 21
        20: .line 4729
            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 4732
      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 4733
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        23: .line 4734
            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 4735
            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 4737
            iload 6 /* isAssign */
            ifeq 27
        26: .line 4738
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        27: .line 4735
      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 4736
      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 4737
            iload 6 /* isAssign */
            ifeq 31
        30: .line 4738
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.defaultNames:Ljava/util/Deque;
            invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
            pop
        31: .line 4740
      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 4742
      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 4750
            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
                   21: 1
                   26: 1
                   29: 1
                   34: 1
                   36: 1
                   43: 1
                   45: 1
                   50: 1
                   53: 1
              default: 2
          }
         1: .line 4763
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 4765
      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 4772
            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 4784
            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 4785
      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 4787
            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 4788
            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 4789
            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 4790
            aload 8 /* functionNode */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 4792
            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 4794
            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 4797
            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 4798
            aload 8 /* functionNode */
            aload 10 /* parameters */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setParameters:(Ljava/util/List;)V
        10: .line 4800
            aload 8 /* functionNode */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isSimpleParameterList:()Z
            ifne 16
        11: .line 4801
            aload 0 /* this */
            aload 9 /* parameterBlock */
            invokevirtual jdk.nashorn.internal.parser.Parser.markEvalInArrowParameterList:(Ljdk/nashorn/internal/parser/ParserContextBlockNode;)V
        12: .line 4803
            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 4804
            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 4805
            aload 11
            athrow
        start local 10 // java.util.List parameters
        16: .line 4804
      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 4806
            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 4808
            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 4810
            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 4812
            aload 0 /* this */
        21: .line 4813
            aload 8 /* functionNode */
        22: .line 4814
            lload 5 /* functionToken */
        23: .line 4815
            aload 7 /* name */
        24: .line 4816
            aload 10 /* parameters */
        25: .line 4817
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.ARROW:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        26: .line 4818
            iload 3 /* functionLine */
        27: .line 4819
            aload 11 /* functionBody */
        28: .line 4812
            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 4820
            aload 12 /* function */
            astore 14
        30: .line 4822
            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 4820
            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 4821
      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 4822
            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 4823
            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 4827
            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 4828
            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 4829
            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 4831
            aload 4 /* parent */
            bipush 32
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.getFlag:(I)I
            ifeq 8
         4: .line 4834
            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 4835
            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 4834
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 4847
      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 4851
            aload 1 /* paramListExpr */
            ifnonnull 3
         1: .line 4853
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 3 /* parameters */
        start local 3 // java.util.List parameters
         2: .line 4854
            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 4855
      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 4856
            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 4857
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* parameters */
        start local 3 // java.util.List parameters
         8: .line 4858
            aload 1 /* paramListExpr */
            astore 4 /* car */
        start local 4 // jdk.nashorn.internal.ir.Expression car
         9: .line 4860
      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 4861
            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 4862
            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 4863
            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 4864
      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 4865
            goto 16
        end local 3 // java.util.List parameters
        15: .line 4866
      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 4868
      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 4873
            aload 1 /* param */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 7
         1: .line 4874
            aload 1 /* param */
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 4 /* ident */
        start local 4 // jdk.nashorn.internal.ir.IdentNode ident
         2: .line 4875
            aload 0 /* this */
            aload 4 /* ident */
            ldc "function parameter"
            invokevirtual jdk.nashorn.internal.parser.Parser.verifyIdent:(Ljdk/nashorn/internal/ir/IdentNode;Ljava/lang/String;)V
         3: .line 4876
            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 4877
            aload 5 /* currentFunction */
            ifnull 6
         5: .line 4878
            aload 5 /* currentFunction */
            aload 4 /* ident */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.addParameterBinding:(Ljdk/nashorn/internal/ir/IdentNode;)Z
            pop
         6: .line 4880
      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 4883
      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 4884
            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 4885
            aload 4 /* lhs */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            lstore 5 /* paramToken */
        start local 5 // long paramToken
        10: .line 4886
            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 4887
            aload 4 /* lhs */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 25
        12: .line 4889
            aload 4 /* lhs */
            checkcast jdk.nashorn.internal.ir.IdentNode
            astore 8 /* ident */
        start local 8 // jdk.nashorn.internal.ir.IdentNode ident
        13: .line 4891
            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 4892
            aload 9 /* currentFunction */
            ifnull 24
        15: .line 4893
            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 4894
            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 4895
            goto 22
        18: .line 4896
      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 4897
            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 4898
            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 4899
            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 4902
      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 4903
            aload 9 /* currentFunction */
            iconst_0
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setSimpleParameterList:(Z)V
        24: .line 4905
      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 4906
      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 4909
            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 4910
            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 4912
            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 4913
            aload 9 /* currentFunction */
            ifnull 37
        30: .line 4914
            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 4915
            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 4916
            goto 37
        33: .line 4917
      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 4918
            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 4919
            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 4920
            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 4923
      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 4925
      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 4927
            aload 1 /* param */
            invokevirtual jdk.nashorn.internal.ir.Expression.getToken:()J
            lstore 4 /* paramToken */
        start local 4 // long paramToken
        40: .line 4930
            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 4931
            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 4933
            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 4934
            aload 7 /* currentFunction */
            ifnull 49
        44: .line 4935
            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 4936
            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 4937
            goto 49
        47: .line 4938
      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 4939
            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 4942
      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 4944
      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 4948
            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 4949
      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 4950
            iconst_1
            ireturn
         3: .line 4951
      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 4952
            iconst_1
            ireturn
         5: .line 4954
      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 4955
      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 4956
            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
                  112: 9
              default: 12
          }
         9: .line 4959
      StackMap locals: jdk.nashorn.internal.parser.TokenType
      StackMap stack:
            iconst_1
            ireturn
        10: .line 4961
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        11: .line 4963
      StackMap locals:
      StackMap stack:
            goto 15
        12: .line 4965
      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 4966
            iconst_1
            ireturn
        14: .line 4968
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        15: .line 4954
      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 4971
            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 4979
            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 4981
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* i */
        start local 1 // int i
         2: .line 4983
      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 4984
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 5
         4: .line 4985
            goto 8
         5: .line 4986
      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 4987
            goto 2
         7: .line 4989
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
         8: .line 4993
      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 4994
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 11
        10: .line 4995
            goto 14
        11: .line 4996
      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 4997
            goto 8
        13: .line 4999
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        14: .line 5003
      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 5004
            aload 2 /* t */
            getstatic jdk.nashorn.internal.parser.TokenType.ARROW:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpne 17
        16: .line 5005
            goto 20
        17: .line 5006
      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 5007
            goto 14
        19: .line 5009
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // jdk.nashorn.internal.parser.TokenType t
        20: .line 5012
      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 5019
            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
                   31: 1
                   48: 3
                   55: 3
              default: 4
          }
         1: .line 5022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5023
            goto 6
         3: .line 5028
      StackMap locals:
      StackMap stack:
            goto 6
         4: .line 5030
      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 5031
            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 5035
      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 5041
            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 5042
      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 5043
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastLiteralToken */
        start local 2 // long lastLiteralToken
         5: .line 5044
            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 5045
            iload 1 /* noSubstitutionTemplate */
            ifeq 8
         7: .line 5046
            aload 4 /* literal */
            areturn
         8: .line 5049
      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 5050
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* exprs */
        start local 5 // java.util.List exprs
        10: .line 5051
            aload 5 /* exprs */
            aload 4 /* literal */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 5054
      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 5055
            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 5056
            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 5058
      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 5059
            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 5060
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            astore 4 /* literal */
        17: .line 5061
            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 5062
            aload 6 /* lastLiteralType */
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 11
        19: .line 5063
            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 5065
      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 5068
      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 5069
            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 5070
            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 5072
      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 5073
            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 5074
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 2 /* lastLiteralToken */
        27: .line 5075
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.getLiteral:()Ljdk/nashorn/internal/ir/LiteralNode;
            astore 4 /* literal */
        28: .line 5076
            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 5077
            aload 6 /* lastLiteralType */
            getstatic jdk.nashorn.internal.parser.TokenType.TEMPLATE_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            if_acmpeq 21
        30: .line 5078
            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 5087
            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 5088
      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 5089
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* rawStrings */
        start local 2 // java.util.ArrayList rawStrings
         3: .line 5090
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* cookedStrings */
        start local 3 // java.util.ArrayList cookedStrings
         4: .line 5091
            aload 1 /* argumentList */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 5093
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* templateToken */
        start local 4 // long templateToken
         6: .line 5094
            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 5095
            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 5097
            iload 6 /* hasSubstitutions */
            ifeq 18
        11: .line 5100
      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 5101
            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 5102
            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 5104
      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 5106
            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 5107
            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 5108
            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 5111
      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 5112
            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 5114
            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 24
        21: .line 5115
            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
        22: .line 5116
            aload 1 /* argumentList */
            iconst_0
            aload 9 /* templateObject */
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // jdk.nashorn.internal.ir.RuntimeNode templateObject
        23: .line 5117
            goto 25
        24: .line 5118
      StackMap locals: jdk.nashorn.internal.ir.LiteralNode jdk.nashorn.internal.ir.LiteralNode
      StackMap stack:
            aload 1 /* argumentList */
            iconst_0
            aload 7 /* rawStringArray */
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 5120
      StackMap locals:
      StackMap stack:
            aload 1 /* argumentList */
            invokestatic jdk.nashorn.internal.parser.Parser.optimizeList:(Ljava/util/ArrayList;)Ljava/util/List;
            areturn
        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   26     0               this  Ljdk/nashorn/internal/parser/Parser;
            2   26     1       argumentList  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            3   26     2         rawStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            4   26     3      cookedStrings  Ljava/util/ArrayList<Ljdk/nashorn/internal/ir/Expression;>;
            6   26     4      templateToken  J
            9   26     6   hasSubstitutions  Z
           16   18     7    lastLiteralType  Ljdk/nashorn/internal/parser/TokenType;
           12   17     8         expression  Ljdk/nashorn/internal/ir/Expression;
           19   26     7     rawStringArray  Ljdk/nashorn/internal/ir/LiteralNode<[Ljdk/nashorn/internal/ir/Expression;>;
           20   26     8  cookedStringArray  Ljdk/nashorn/internal/ir/LiteralNode<[Ljdk/nashorn/internal/ir/Expression;>;
           22   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 5124
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* stringToken */
        start local 3 // long stringToken
         1: .line 5125
            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 5126
            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 5127
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         4: .line 5128
            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 5129
            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 5130
            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 5143
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
            istore 2 /* oldStrictMode */
        start local 2 // boolean oldStrictMode
         1: .line 5145
            aload 0 /* this */
            iconst_1
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
         2: .line 5148
            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 5149
            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 5150
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 6 /* functionLine */
        start local 6 // int functionLine
         5: .line 5152
            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 5153
            aload 0 /* this */
         7: .line 5154
            aload 7 /* ident */
         8: .line 5155
            lload 4 /* functionToken */
         9: .line 5156
            getstatic jdk.nashorn.internal.ir.FunctionNode$Kind.MODULE:Ljdk/nashorn/internal/ir/FunctionNode$Kind;
        10: .line 5157
            iload 6 /* functionLine */
        11: .line 5158
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        12: .line 5153
            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 5159
            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 5161
            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 5162
            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 5164
            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 5166
            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 5167
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.moduleBody:()V
        19: .line 5168
            aload 0 /* this */
            aload 8 /* script */
            invokevirtual jdk.nashorn.internal.parser.Parser.addFunctionDeclarations:(Ljdk/nashorn/internal/parser/ParserContextFunctionNode;)V
        20: .line 5169
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.parser.Parser.functionDeclarations:Ljava/util/List;
        21: .line 5171
            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 5172
            aload 10 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        23: .line 5173
            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 5174
            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 5175
            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 5176
            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 5178
            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 5180
            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 5181
            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 5183
            aload 0 /* this */
            iload 2 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        31: .line 5181
            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 5182
      StackMap locals: jdk.nashorn.internal.parser.Parser java.lang.String int
      StackMap stack: java.lang.Throwable
            astore 12
        33: .line 5183
            aload 0 /* this */
            iload 2 /* oldStrictMode */
            putfield jdk.nashorn.internal.parser.Parser.isStrictMode:Z
        34: .line 5184
            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 5204
            goto 8
         1: .line 5205
      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
                   70: 5
                   78: 3
              default: 7
          }
         2: .line 5207
      StackMap locals:
      StackMap stack:
            goto 9
         3: .line 5209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.importDeclaration:()V
         4: .line 5210
            goto 8
         5: .line 5212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.exportDeclaration:()V
         6: .line 5213
            goto 8
         7: .line 5216
      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 5204
      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 5220
      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 5243
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            istore 1 /* startPosition */
        start local 1 // int startPosition
         1: .line 5244
            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 5245
            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 5246
            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 5248
      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 5249
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 5250
            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 5251
            goto 37
         8: .line 5254
      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 5255
            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 5256
            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 5257
            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 5258
            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 5260
            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 5261
            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 5263
            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 5264
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        19: .line 5265
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* importEntries */
        start local 3 // java.util.List importEntries
        20: .line 5266
            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 5267
            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 5268
            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 5269
            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 5270
            goto 30
        26: .line 5271
      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 5274
      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 5276
            goto 30
        end local 3 // java.util.List importEntries
        29: .line 5277
      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 5280
      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 5281
            aload 2 /* module */
            aload 4 /* moduleSpecifier */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
        32: .line 5282
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        33: goto 36
        34: .line 5283
      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 5282
            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 5286
      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 5287
            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 5297
            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 5298
      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 5299
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         3: .line 5300
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 3 /* asToken */
        start local 3 // long asToken
         4: .line 5301
            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 5302
            ldc "as"
            aload 5 /* as */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 5303
            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 5305
      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 5306
            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 5324
            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 5325
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5326
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* importEntries */
        start local 2 // java.util.List importEntries
         3: .line 5327
            goto 17
         4: .line 5328
      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 5329
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 4 /* nameToken */
        start local 4 // long nameToken
         6: .line 5330
            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 5331
            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 5332
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         9: .line 5333
            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 5334
            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 5335
            goto 15
      StackMap locals: int long jdk.nashorn.internal.ir.IdentNode
      StackMap stack:
        12: iload 3 /* bindingIdentifier */
            ifne 14
        13: .line 5336
            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 5338
      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 5340
      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 5341
            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 5327
      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 5346
      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 5347
            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 5355
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 1 /* fromToken */
        start local 1 // long fromToken
         1: .line 5356
            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 5357
            ldc "from"
            aload 3 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 5358
            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 5360
      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 5361
      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 5362
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 5363
            aload 4 /* moduleSpecifier */
            areturn
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleSpecifier
         8: .line 5365
      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 5383
            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 5384
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.start:I
            istore 1 /* startPosition */
        start local 1 // int startPosition
         2: .line 5385
            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 5386
            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
                   51: 11
                   61: 60
                   62: 51
                   65: 26
                   75: 63
                   82: 51
                   98: 51
              default: 66
          }
         4: .line 5388
      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 5389
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         6: .line 5390
            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 5391
            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 5392
            aload 2 /* module */
            aload 4 /* moduleRequest */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
         9: .line 5393
            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 5394
            goto 67
        end local 4 // jdk.nashorn.internal.ir.IdentNode moduleRequest
        end local 3 // jdk.nashorn.internal.ir.IdentNode starName
        11: .line 5397
      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 5398
            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 5399
            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 5400
            aload 2 /* module */
            aload 4 /* moduleRequest */
            invokevirtual jdk.nashorn.internal.parser.ParserContextModuleNode.addModuleRequest:(Ljdk/nashorn/internal/ir/IdentNode;)V
        15: .line 5401
            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 5402
            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 5401
      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 5404
            goto 24
        20: .line 5405
      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 5406
            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 5405
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        24: .line 5409
      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 5410
            goto 67
        end local 3 // java.util.List exportEntries
        26: .line 5413
      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 5414
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
        28: .line 5417
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.line:I
            istore 6 /* lineNumber */
        start local 6 // int lineNumber
        29: .line 5418
            aload 0 /* this */
            getfield jdk.nashorn.internal.parser.Parser.token:J
            lstore 7 /* rhsToken */
        start local 7 // long rhsToken
        30: .line 5420
            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
                   61: 35
                   75: 31
              default: 39
          }
        31: .line 5422
      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 5423
            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 5424
            iconst_1
            istore 9 /* declaration */
        start local 9 // boolean declaration
        34: .line 5425
            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 5427
      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 5428
            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 5429
            iconst_1
            istore 9 /* declaration */
        start local 9 // boolean declaration
        38: .line 5430
            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 5432
      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 5433
            aconst_null
            astore 5 /* ident */
        start local 5 // jdk.nashorn.internal.ir.IdentNode ident
        41: .line 5434
            iconst_0
            istore 9 /* declaration */
        start local 9 // boolean declaration
        42: .line 5437
      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 5438
            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 5439
            goto 67
        45: .line 5440
      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 5441
            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 5442
            iload 9 /* declaration */
            ifne 49
        48: .line 5443
            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 5445
      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 5447
            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 5451
      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 5452
            aload 10 /* statements */
            invokeinterface java.util.List.size:()I
            istore 11 /* previousEnd */
        start local 11 // int previousEnd
        53: .line 5453
            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 5454
            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 5455
            aload 12 /* statement */
            instanceof jdk.nashorn.internal.ir.VarNode
            ifeq 58
        57: .line 5456
            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 5454
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 55
        59: .line 5459
            goto 67
        end local 11 // int previousEnd
        end local 10 // java.util.List statements
        60: .line 5461
      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 5462
            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 5463
            goto 67
        end local 12 // jdk.nashorn.internal.ir.ClassNode classDeclaration
        63: .line 5466
      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 5467
            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 5468
            goto 67
        end local 12 // jdk.nashorn.internal.ir.FunctionNode functionDeclaration
        66: .line 5471
      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 5473
      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 5490
            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 5491
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         2: .line 5492
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* exports */
        start local 2 // java.util.List exports
         3: .line 5493
            goto 13
         4: .line 5494
      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 5495
            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 5496
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.parser.Parser.next:()Ljdk/nashorn/internal/parser/TokenType;
            pop
         7: .line 5497
            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 5498
            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 5499
            goto 11
        10: .line 5500
      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 5502
      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 5503
            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 5493
      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 5508
      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 5509
            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 5514
            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 5518
            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 5519
            iconst_0
            istore 2 /* flaggedCurrentFn */
        start local 2 // boolean flaggedCurrentFn
         2: .line 5520
            goto 15
         3: .line 5521
      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 5522
            iload 2 /* flaggedCurrentFn */
            ifne 11
         5: .line 5523
            aload 3 /* fn */
            bipush 32
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 5524
            iconst_1
            istore 2 /* flaggedCurrentFn */
         7: .line 5525
            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 5528
            aload 0 /* lc */
            invokestatic jdk.nashorn.internal.parser.Parser.markThis:(Ljdk/nashorn/internal/parser/ParserContext;)V
         9: .line 5529
            aload 0 /* lc */
            invokestatic jdk.nashorn.internal.parser.Parser.markNewTarget:(Ljdk/nashorn/internal/parser/ParserContext;)V
        10: .line 5531
            goto 12
        11: .line 5532
      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 5534
      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 5538
            aload 4 /* body */
            iconst_1
            invokevirtual jdk.nashorn.internal.parser.ParserContextBlockNode.setFlag:(I)I
            pop
        14: .line 5539
            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 5520
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        16: .line 5541
            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 5544
            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 5545
            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 5548
            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 5549
            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 5552
            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 5553
            goto 7
         2: .line 5554
      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 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 7
         4: .line 5556
            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 5557
      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 5558
            goto 8
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         7: .line 5553
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 5561
      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 5564
            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 5565
            goto 5
         2: .line 5566
      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 5567
            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 5568
            aload 2 /* fn */
            areturn
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         5: .line 5565
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 5571
            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 5575
            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 5576
            goto 6
         2: .line 5577
      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 5578
            aload 2 /* fn */
            ldc 32768
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         4: .line 5579
            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 5580
            goto 7
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         6: .line 5576
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 5583
      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 5586
            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 5587
            goto 7
         2: .line 5588
      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 5589
            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 5590
            aload 2 /* fn */
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.isProgram:()Z
            ifne 8
         5: .line 5591
            aload 2 /* fn */
            ldc 33554432
            invokevirtual jdk.nashorn.internal.parser.ParserContextFunctionNode.setFlag:(I)I
            pop
         6: .line 5593
            goto 8
        end local 2 // jdk.nashorn.internal.parser.ParserContextFunctionNode fn
         7: .line 5587
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 5596
      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 5599
            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 19
            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 116
            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 39
            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 36
            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 21
            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 53
            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 50
            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 29
            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 43
            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 34
            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 45
            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 26
            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 107
            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 56
            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 52
            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 49
            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 58
            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 59
            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 60
            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 61
            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 30
            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.COMMARIGHT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 22
            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.COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_4
            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.CONST:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 62
            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.CONTINUE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 63
            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.DEBUGGER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 64
            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.DECIMAL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 103
            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.DECPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 121
            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.DECPREFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 25
            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.DEFAULT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 65
            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.DELETE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 66
            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.DIRECTIVE_COMMENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_5
            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.DIV:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 28
            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.DO:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 67
            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.ELLIPSIS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 57
            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.ELSE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 68
            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.ENUM:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 69
            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.EOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_2
            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.EOL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_3
            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.EQ:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 37
            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_STRICT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 38
            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.ERROR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            iconst_1
            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.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 110
            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.EXECSTRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 111
            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.EXPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 70
            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.EXTENDS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 71
            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.FALSE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 72
            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.FINALLY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 73
            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.FLOATING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 108
            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.FOR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 74
            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.FUNCTION:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 75
            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.GE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 41
            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.GT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 40
            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.HEXADECIMAL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 104
            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.IDENT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 112
            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.IF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 76
            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.IMPLEMENTS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 77
            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.IMPORT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 78
            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.IN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 79
            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.INCPOSTFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 122
            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.INCPREFIX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 20
            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.INSTANCEOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 80
            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.INTERFACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 81
            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.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 51
            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.LBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 47
            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.LE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 35
            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.LET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 82
            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.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 14
            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.LT:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 32
            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.MOD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 9
            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.MUL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 16
            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.NE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 7
            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.NEG:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 23
            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 83
            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 84
            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 115
            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 106
            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 105
            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 54
            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 85
            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 27
            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.POS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 18
            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.PRIVATE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 86
            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.PROTECTED:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 87
            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.PUBLIC:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 88
            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.RBRACE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 55
            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.RBRACKET:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 48
            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.REGEX:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 113
            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.RETURN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 89
            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.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 15
            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.SAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 42
            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.SEMICOLON: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.SHL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 33
            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.SHR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 44
            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_ARGUMENT: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.SPREAD_ARRAY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 124
            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.STATIC:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 90
            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.STRING:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 109
            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.SUB:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 24
            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.SUPER:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 91
            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.SWITCH:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 92
            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:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 117
            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_HEAD:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 118
            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_MIDDLE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 119
            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.TEMPLATE_TAIL:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 120
            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.TERNARY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 46
            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.THIS:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 93
            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.THROW:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 94
            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.TRUE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 95
            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.TRY:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 96
            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.TYPEOF:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 97
            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.VAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 98
            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.VOID:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 99
            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.WHILE:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 100
            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.WITH:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 101
            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.XML:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 114
            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:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 102
            iastore
       372: goto 374
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       373: pop
      StackMap locals:
      StackMap stack:
       374: aload 0
            getstatic jdk.nashorn.internal.parser.TokenType.YIELD_STAR:Ljdk/nashorn/internal/parser/TokenType;
            invokevirtual jdk.nashorn.internal.parser.TokenType.ordinal:()I
            bipush 125
            iastore
       375: goto 377
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       376: pop
      StackMap locals:
      StackMap stack:
       377: 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
         374   375     376  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")