public class jdk.internal.jshell.tool.JShellTool implements jdk.internal.jshell.tool.MessageHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.internal.jshell.tool.JShellTool
  super_class: java.lang.Object
{
  private static final java.util.regex.Pattern LINEBREAK;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern ID;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern RERUN_ID;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern RERUN_PREVIOUS;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern SET_SUB;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final java.lang.String RECORD_SEPARATOR;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "\u241E"

  private static final java.lang.String RB_NAME_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.internal.jshell.tool.resources"

  private static final java.lang.String VERSION_RB_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.internal.jshell.tool.resources.version"

  private static final java.lang.String L10N_RB_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.internal.jshell.tool.resources.l10n"

  final java.io.InputStream cmdin;
    descriptor: Ljava/io/InputStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream cmdout;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream cmderr;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream console;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.io.InputStream userin;
    descriptor: Ljava/io/InputStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream userout;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream usererr;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final jdk.internal.jshell.tool.PersistentStorage prefs;
    descriptor: Ljdk/internal/jshell/tool/PersistentStorage;
    flags: (0x0010) ACC_FINAL

  final java.util.Map<java.lang.String, java.lang.String> envvars;
    descriptor: Ljava/util/Map;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  final java.util.Locale locale;
    descriptor: Ljava/util/Locale;
    flags: (0x0010) ACC_FINAL

  final jdk.internal.jshell.tool.Feedback feedback;
    descriptor: Ljdk/internal/jshell/tool/Feedback;
    flags: (0x0010) ACC_FINAL

  private java.util.ResourceBundle versionRB;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x0002) ACC_PRIVATE

  private java.util.ResourceBundle outputRB;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.jshell.tool.IOContext input;
    descriptor: Ljdk/internal/jshell/tool/IOContext;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private jdk.internal.jshell.tool.JShellTool$Options options;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$Options;
    flags: (0x0002) ACC_PRIVATE

  jdk.jshell.SourceCodeAnalysis analysis;
    descriptor: Ljdk/jshell/SourceCodeAnalysis;
    flags: (0x0000) 

  private jdk.jshell.JShell state;
    descriptor: Ljdk/jshell/JShell;
    flags: (0x0002) ACC_PRIVATE

  jdk.jshell.JShell$Subscription shutdownSubscription;
    descriptor: Ljdk/jshell/JShell$Subscription;
    flags: (0x0000) 

  static final jdk.internal.jshell.tool.JShellTool$EditorSetting BUILT_IN_EDITOR;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

  private int debugFlags;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  public boolean testPrompt;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  private jdk.internal.jshell.tool.Startup startup;
    descriptor: Ljdk/internal/jshell/tool/Startup;
    flags: (0x0002) ACC_PRIVATE

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

  private java.lang.String executionControlSpec;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.jshell.tool.JShellTool$EditorSetting editor;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
    flags: (0x0002) ACC_PRIVATE

  private int exitCode;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static final java.lang.String[] EDITOR_ENV_VARS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private jdk.internal.jshell.tool.JShellTool$ReplayableHistory replayableHistory;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.jshell.tool.JShellTool$ReplayableHistory replayableHistoryPrevious;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
    flags: (0x0002) ACC_PRIVATE

  static final java.lang.String STARTUP_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "STARTUP"

  static final java.lang.String EDITOR_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "EDITOR"

  static final java.lang.String FEEDBACK_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "FEEDBACK"

  static final java.lang.String MODE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "MODE"

  static final java.lang.String REPLAY_RESTORE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "REPLAY_RESTORE"

  static final java.util.regex.Pattern BUILTIN_FILE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String BUILTIN_FILE_PATH_FORMAT;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "/jdk/jshell/tool/resources/%s.jsh"

  static final java.lang.String INT_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "int $$exit$$ = "

  static final int OUTPUT_WIDTH;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 72

  private static final java.util.regex.Pattern OPTION_PRE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern OPTION_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern OPTION_VALUE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  jdk.internal.jshell.tool.JShellTool$NameSpace mainNamespace;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$NameSpace;
    flags: (0x0000) 

  jdk.internal.jshell.tool.JShellTool$NameSpace startNamespace;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$NameSpace;
    flags: (0x0000) 

  jdk.internal.jshell.tool.JShellTool$NameSpace errorNamespace;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$NameSpace;
    flags: (0x0000) 

  jdk.internal.jshell.tool.JShellTool$NameSpace currentNameSpace;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$NameSpace;
    flags: (0x0000) 

  java.util.Map<jdk.jshell.Snippet, jdk.internal.jshell.tool.JShellTool$SnippetInfo> mapSnippet;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Ljdk/jshell/Snippet;Ljdk/internal/jshell/tool/JShellTool$SnippetInfo;>;

  static final jdk.internal.jshell.tool.JShellTool$CompletionProvider EMPTY_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider SAVE_OPTION_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider HISTORY_OPTION_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider SNIPPET_OPTION_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider COMMAND_LINE_LIKE_OPTIONS_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$FixedCompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider RELOAD_OPTIONS_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider SET_MODE_OPTIONS_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider FILE_COMPLETION_PROVIDER;
    descriptor: Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Map<java.lang.String, jdk.internal.jshell.tool.JShellTool$CompletionProvider> ARG_OPTIONS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;>;

  private final java.util.Map<java.lang.String, jdk.internal.jshell.tool.JShellTool$Command> commands;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;

  private jdk.internal.jshell.tool.ContinuousCompletionProvider commandCompletions;
    descriptor: Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
    flags: (0x0002) ACC_PRIVATE

  private static final java.lang.String[] SET_SUBCOMMANDS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$jdk$jshell$Snippet$SubKind;
    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

  private static volatile int[] $SWITCH_TABLE$jdk$jshell$Snippet$Status;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=0, args_size=0
         0: .line 141
            ldc Ljdk/internal/jshell/tool/JShellTool;
            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.internal.jshell.tool.JShellTool.$assertionsDisabled:Z
         3: .line 143
            ldc "\\R"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.LINEBREAK:Ljava/util/regex/Pattern;
         4: .line 144
            ldc "[se]?\\d+([-\\s].*)?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.ID:Ljava/util/regex/Pattern;
         5: .line 145
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic jdk.internal.jshell.tool.JShellTool.ID:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.RERUN_ID:Ljava/util/regex/Pattern;
         6: .line 146
            ldc "/\\-\\d+( .*)?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.RERUN_PREVIOUS:Ljava/util/regex/Pattern;
         7: .line 147
            ldc "/?set .*"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUB:Ljava/util/regex/Pattern;
         8: .line 213
            new jdk.internal.jshell.tool.JShellTool$EditorSetting
            dup
            aconst_null
            iconst_0
            invokespecial jdk.internal.jshell.tool.JShellTool$EditorSetting.<init>:([Ljava/lang/String;Z)V
            putstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
         9: .line 224
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
        10: .line 225
            ldc "JSHELLEDITOR"
            aastore
            dup
            iconst_1
            ldc "VISUAL"
            aastore
            dup
            iconst_2
            ldc "EDITOR"
            aastore
        11: .line 224
            putstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
        12: .line 237
            ldc "\\w+"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.BUILTIN_FILE_PATTERN:Ljava/util/regex/Pattern;
        13: .line 245
            ldc "\\s*(\\S+\\s+)*?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        14: .line 244
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
        15: .line 248
            new java.lang.StringBuilder
            dup
            getstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(?<dd>-??)(?<flag>-([a-z][a-z\\-]*)?)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        16: .line 247
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
        17: .line 251
            new java.lang.StringBuilder
            dup
            getstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\\s+(?<val>\\S*)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        18: .line 250
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_VALUE_PATTERN:Ljava/util/regex/Pattern;
        19: .line 1479
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_0
            anewarray java.lang.String
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        20: .line 1480
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            dup
            iconst_1
            ldc "-start "
            aastore
            dup
            iconst_2
            ldc "-history"
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        21: .line 1481
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all "
            aastore
            dup
            iconst_1
            ldc "-start "
            aastore
            dup
            iconst_2
            ldc "-history "
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.SAVE_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        22: .line 1482
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        23: .line 1483
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            dup
            iconst_1
            ldc "-start "
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        24: .line 1484
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        25: .line 1485
            ldc "-class-path "
            aastore
            dup
            iconst_1
            ldc "-module-path "
            aastore
            dup
            iconst_2
            ldc "-add-modules "
            aastore
            dup
            iconst_3
            ldc "-add-exports "
        26: .line 1484
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.COMMAND_LINE_LIKE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$FixedCompletionProvider;
        27: .line 1486
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
        28: .line 1487
            getstatic jdk.internal.jshell.tool.JShellTool.COMMAND_LINE_LIKE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$FixedCompletionProvider;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
        29: .line 1488
            ldc "-restore "
            aastore
            dup
            iconst_1
            ldc "-quiet "
        30: .line 1486
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:(Ljdk/internal/jshell/tool/JShellTool$FixedCompletionProvider;[Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.RELOAD_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        31: .line 1489
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-command"
            aastore
            dup
            iconst_1
            ldc "-quiet"
            aastore
            dup
            iconst_2
            ldc "-delete"
            aastore
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
            putstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        32: .line 1490
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$0(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokestatic jdk.internal.jshell.tool.JShellTool.fileCompletions:(Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            putstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        33: .line 1491
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
        34: .line 1493
            getstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
            ldc "-class-path"
            invokestatic jdk.internal.jshell.tool.JShellTool.classPathCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 1494
            getstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
            ldc "-module-path"
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$133(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokestatic jdk.internal.jshell.tool.JShellTool.fileCompletions:(Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        36: .line 1495
            getstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
            ldc "-add-modules"
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 1496
            getstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
            ldc "-add-exports"
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 1943
            bipush 7
            anewarray java.lang.String
            dup
            iconst_0
        39: .line 1944
            ldc "format"
            aastore
            dup
            iconst_1
            ldc "truncation"
            aastore
            dup
            iconst_2
            ldc "feedback"
            aastore
            dup
            iconst_3
            ldc "mode"
            aastore
            dup
            iconst_4
            ldc "prompt"
            aastore
            dup
            iconst_5
            ldc "editor"
            aastore
            dup
            bipush 6
            ldc "start"
            aastore
        40: .line 1943
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
        41: .line 1944
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.io.InputStream, java.io.PrintStream, java.io.PrintStream, java.io.PrintStream, java.io.InputStream, java.io.PrintStream, java.io.PrintStream, jdk.internal.jshell.tool.PersistentStorage, java.util.Map<java.lang.String, java.lang.String>, java.util.Locale);
    descriptor: (Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljdk/internal/jshell/tool/PersistentStorage;Ljava/util/Map;Ljava/util/Locale;)V
    flags: (0x0000) 
    Code:
      stack=21, locals=11, args_size=11
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.io.InputStream cmdin
        start local 2 // java.io.PrintStream cmdout
        start local 3 // java.io.PrintStream cmderr
        start local 4 // java.io.PrintStream console
        start local 5 // java.io.InputStream userin
        start local 6 // java.io.PrintStream userout
        start local 7 // java.io.PrintStream usererr
        start local 8 // jdk.internal.jshell.tool.PersistentStorage prefs
        start local 9 // java.util.Map envvars
        start local 10 // java.util.Locale locale
         0: .line 179
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 164
            aload 0 /* this */
            new jdk.internal.jshell.tool.Feedback
            dup
            invokespecial jdk.internal.jshell.tool.Feedback.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
         2: .line 200
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         3: .line 201
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         4: .line 203
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         5: .line 204
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         6: .line 205
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 206
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
         8: .line 210
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         9: .line 211
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
        10: .line 215
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        11: .line 216
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        12: .line 217
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
        13: .line 218
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        14: .line 219
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        15: .line 220
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
        16: .line 221
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            putfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
        17: .line 222
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        18: .line 1498
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
        19: .line 1755
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/list"
        20: .line 1756
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdList(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        21: .line 1757
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        22: .line 1758
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
        23: .line 1757
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetWithOptionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        24: .line 1755
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        25: .line 1759
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/edit"
        26: .line 1760
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdEdit(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        27: .line 1761
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        28: .line 1762
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
        29: .line 1761
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetWithOptionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        30: .line 1759
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        31: .line 1763
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/drop"
        32: .line 1764
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdDrop(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        33: .line 1765
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.dropableSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetCompletion:(Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        34: .line 1766
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.REPLAY:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
        35: .line 1763
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        36: .line 1767
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/save"
        37: .line 1768
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdSave(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        38: .line 1769
            invokestatic jdk.internal.jshell.tool.JShellTool.saveCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        39: .line 1767
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        40: .line 1770
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/open"
        41: .line 1771
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdOpen(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        42: .line 1772
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        43: .line 1770
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        44: .line 1773
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/vars"
        45: .line 1774
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdVars(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        46: .line 1775
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        47: .line 1776
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allVarSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
        48: .line 1775
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetWithOptionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        49: .line 1773
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        50: .line 1777
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/methods"
        51: .line 1778
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdMethods(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        52: .line 1779
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        53: .line 1780
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allMethodSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
        54: .line 1779
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetWithOptionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        55: .line 1777
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        56: .line 1781
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/types"
        57: .line 1782
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdTypes(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        58: .line 1783
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        59: .line 1784
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allTypeSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
        60: .line 1783
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetWithOptionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        61: .line 1781
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        62: .line 1785
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/imports"
        63: .line 1786
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$16(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        64: .line 1787
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        65: .line 1785
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        66: .line 1788
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/exit"
        67: .line 1789
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$17(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        68: .line 1790
            aload 0 /* this */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$18(Ljava/lang/String;I[I)Ljava/util/List; (7)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        69: .line 1788
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        70: .line 1802
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/env"
        71: .line 1803
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$19(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        72: .line 1804
            invokestatic jdk.internal.jshell.tool.JShellTool.envCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        73: .line 1802
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        74: .line 1805
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reset"
        75: .line 1806
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$20(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        76: .line 1807
            invokestatic jdk.internal.jshell.tool.JShellTool.envCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        77: .line 1805
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        78: .line 1808
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reload"
        79: .line 1809
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdReload(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        80: .line 1810
            invokestatic jdk.internal.jshell.tool.JShellTool.reloadCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        81: .line 1808
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        82: .line 1811
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/history"
        83: .line 1812
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdHistory(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        84: .line 1813
            invokestatic jdk.internal.jshell.tool.JShellTool.historyCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        85: .line 1811
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        86: .line 1814
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/debug"
        87: .line 1815
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdDebug(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        88: .line 1816
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        89: .line 1817
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HIDDEN:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
        90: .line 1814
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        91: .line 1818
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/help"
        92: .line 1819
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdHelp(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        93: .line 1820
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
        94: .line 1818
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        95: .line 1821
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/set"
        96: .line 1822
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdSet(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        97: .line 1823
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
        98: .line 1825
            ldc "format"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.modeCompletions:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        99: .line 1826
            ldc "truncation"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.modeCompletions:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       100: .line 1827
            ldc "feedback"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.modeCompletions:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       101: .line 1828
            ldc "mode"
       102: .line 1829
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokevirtual jdk.internal.jshell.tool.Feedback.modeCompletions:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       103: .line 1830
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       104: .line 1828
            invokestatic jdk.internal.jshell.tool.JShellTool.orMostSpecificCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokestatic jdk.internal.jshell.tool.JShellTool.skipWordThenCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       105: .line 1831
            ldc "prompt"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.modeCompletions:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       106: .line 1832
            ldc "editor"
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/nio/file/Files.isExecutable(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokestatic jdk.internal.jshell.tool.JShellTool.fileCompletions:(Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       107: .line 1833
            ldc "start"
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       108: .line 1823
            invokestatic java.util.Map.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
       109: .line 1834
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
       110: .line 1823
            invokespecial jdk.internal.jshell.tool.ContinuousCompletionProvider.<init>:(Ljava/util/Map;Ljava/util/function/BiPredicate;)V
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)V
       111: .line 1821
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       112: .line 1835
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/?"
       113: .line 1836
            ldc "help.quest"
       114: .line 1837
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdHelp(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       115: .line 1838
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       116: .line 1839
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.NORMAL:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       117: .line 1835
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       118: .line 1840
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/!"
       119: .line 1841
            ldc "help.bang"
       120: .line 1842
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$28(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       121: .line 1843
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       122: .line 1844
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.NORMAL:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       123: .line 1840
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       124: .line 1847
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/<id>"
       125: .line 1848
            ldc "help.slashID"
       126: .line 1849
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$29(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       127: .line 1850
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       128: .line 1851
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_ONLY:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       129: .line 1847
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       130: .line 1852
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/-<n>"
       131: .line 1853
            ldc "help.previous"
       132: .line 1854
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$30(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       133: .line 1855
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       134: .line 1856
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_ONLY:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       135: .line 1852
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       136: .line 1857
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "intro"
       137: .line 1858
            ldc "help.intro"
       138: .line 1859
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       139: .line 1857
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       140: .line 1860
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "keys"
       141: .line 1861
            ldc "help.keys"
       142: .line 1862
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       143: .line 1860
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       144: .line 1863
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "id"
       145: .line 1864
            ldc "help.id"
       146: .line 1865
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       147: .line 1863
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       148: .line 1866
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "shortcuts"
       149: .line 1867
            ldc "help.shortcuts"
       150: .line 1868
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       151: .line 1866
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       152: .line 1869
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "context"
       153: .line 1870
            ldc "help.context"
       154: .line 1871
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       155: .line 1869
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       156: .line 1872
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "rerun"
       157: .line 1873
            ldc "help.rerun"
       158: .line 1874
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       159: .line 1872
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       160: .line 1876
            aload 0 /* this */
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
       161: .line 1877
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
       162: .line 1878
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$31(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
       163: .line 1879
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$32(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$33(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokestatic java.util.stream.Collectors.toMap:(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Map
       164: .line 1880
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
            invokespecial jdk.internal.jshell.tool.ContinuousCompletionProvider.<init>:(Ljava/util/Map;Ljava/util/function/BiPredicate;)V
       165: .line 1876
            putfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
       166: .line 183
            aload 0 /* this */
            aload 1 /* cmdin */
            putfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
       167: .line 184
            aload 0 /* this */
            aload 2 /* cmdout */
            putfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
       168: .line 185
            aload 0 /* this */
            aload 3 /* cmderr */
            putfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
       169: .line 186
            aload 0 /* this */
            aload 4 /* console */
            putfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
       170: .line 187
            aload 0 /* this */
            aload 5 /* userin */
            ifnull 171
            aload 5 /* userin */
            goto 172
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.io.InputStream java.io.PrintStream java.io.PrintStream java.io.PrintStream java.io.InputStream java.io.PrintStream java.io.PrintStream jdk.internal.jshell.tool.PersistentStorage java.util.Map java.util.Locale
      StackMap stack: jdk.internal.jshell.tool.JShellTool
       171: new jdk.internal.jshell.tool.JShellTool$2
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$2.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.io.InputStream java.io.PrintStream java.io.PrintStream java.io.PrintStream java.io.InputStream java.io.PrintStream java.io.PrintStream jdk.internal.jshell.tool.PersistentStorage java.util.Map java.util.Locale
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.io.InputStream
       172: putfield jdk.internal.jshell.tool.JShellTool.userin:Ljava/io/InputStream;
       173: .line 193
            aload 0 /* this */
            aload 6 /* userout */
            putfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
       174: .line 194
            aload 0 /* this */
            aload 7 /* usererr */
            putfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
       175: .line 195
            aload 0 /* this */
            aload 8 /* prefs */
            putfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
       176: .line 196
            aload 0 /* this */
            aload 9 /* envvars */
            putfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
       177: .line 197
            aload 0 /* this */
            aload 10 /* locale */
            putfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
       178: .line 198
            return
        end local 10 // java.util.Locale locale
        end local 9 // java.util.Map envvars
        end local 8 // jdk.internal.jshell.tool.PersistentStorage prefs
        end local 7 // java.io.PrintStream usererr
        end local 6 // java.io.PrintStream userout
        end local 5 // java.io.InputStream userin
        end local 4 // java.io.PrintStream console
        end local 3 // java.io.PrintStream cmderr
        end local 2 // java.io.PrintStream cmdout
        end local 1 // java.io.InputStream cmdin
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0  179     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0  179     1    cmdin  Ljava/io/InputStream;
            0  179     2   cmdout  Ljava/io/PrintStream;
            0  179     3   cmderr  Ljava/io/PrintStream;
            0  179     4  console  Ljava/io/PrintStream;
            0  179     5   userin  Ljava/io/InputStream;
            0  179     6  userout  Ljava/io/PrintStream;
            0  179     7  usererr  Ljava/io/PrintStream;
            0  179     8    prefs  Ljdk/internal/jshell/tool/PersistentStorage;
            0  179     9  envvars  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0  179    10   locale  Ljava/util/Locale;
    Signature: (Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljdk/internal/jshell/tool/PersistentStorage;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/Locale;)V
    MethodParameters:
         Name  Flags
      cmdin    
      cmdout   
      cmderr   
      console  
      userin   
      userout  
      usererr  
      prefs    
      envvars  
      locale   

  boolean interactive();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 701
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            ifnull 1
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.interactiveOutput:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  void debug(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String format
        start local 2 // java.lang.Object[] args
         0: .line 705
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 2
         1: .line 706
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 1 /* format */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* args */
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         2: .line 708
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String format
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1  format  Ljava/lang/String;
            0    3     2    args  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      format  
      args    

  public void hard(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String format
        start local 2 // java.lang.Object[] args
         0: .line 718
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            aload 0 /* this */
            aload 1 /* format */
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* args */
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         1: .line 719
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String format
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1  format  Ljava/lang/String;
            0    2     2    args  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      format  
      args    

  void error(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String format
        start local 2 // java.lang.Object[] args
         0: .line 728
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
            ifeq 1
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
      StackMap locals:
      StackMap stack: java.io.PrintStream
         2: aload 0 /* this */
            aload 1 /* format */
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefixError:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* args */
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         3: .line 729
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String format
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1  format  Ljava/lang/String;
            0    4     2    args  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      format  
      args    

  public boolean showFluff();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 737
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.shouldDisplayCommandFluff:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  public void fluff(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String format
        start local 2 // java.lang.Object[] args
         0: .line 748
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 749
            aload 0 /* this */
            aload 1 /* format */
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 751
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String format
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1  format  Ljava/lang/String;
            0    3     2    args  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      format  
      args    

  java.lang.String getResourceString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
         0: .line 759
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
            ifnonnull 6
         1: .line 761
            aload 0 /* this */
            ldc "jdk.internal.jshell.tool.resources.l10n"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
            invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/ResourceBundle;
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         2: .line 762
            goto 6
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 763
            aload 0 /* this */
            ldc "Cannot find ResourceBundle: %s for locale: %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "jdk.internal.jshell.tool.resources.l10n"
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 764
            ldc ""
            areturn
         6: .line 769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
            aload 1 /* key */
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* s */
        start local 2 // java.lang.String s
         7: .line 770
            goto 11
        end local 2 // java.lang.String s
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         8: pop
         9: .line 771
            aload 0 /* this */
            ldc "Missing resource: %s in %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* key */
            aastore
            dup
            iconst_1
            ldc "jdk.internal.jshell.tool.resources.l10n"
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 772
            ldc ""
            areturn
        start local 2 // java.lang.String s
        11: .line 774
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* s */
            areturn
        end local 2 // java.lang.String s
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   12     1   key  Ljava/lang/String;
            7    8     2     s  Ljava/lang/String;
           11   12     2     s  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.util.MissingResourceException
           6     7       8  Class java.util.MissingResourceException
    MethodParameters:
      Name  Flags
      key   

  java.lang.String prefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String s
         0: .line 785
            aload 0 /* this */
            aload 1 /* s */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getPre:()Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getPost:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  java.lang.String prefixError(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String s
         0: .line 796
            aload 0 /* this */
            aload 1 /* s */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getErrorPre:()Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getErrorPost:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  java.lang.String prefix(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String s
        start local 2 // java.lang.String pre
        start local 3 // java.lang.String post
         0: .line 810
            aload 1 /* s */
            ifnonnull 2
         1: .line 811
            ldc ""
            areturn
         2: .line 813
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
            ifne 4
         3: .line 815
            new java.lang.StringBuilder
            dup
            aload 1 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "%n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         4: .line 817
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            ldc "\\R"
            new java.lang.StringBuilder
            dup
            aload 3 /* post */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* pre */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* pp */
        start local 4 // java.lang.String pp
         5: .line 818
            aload 4 /* pp */
            new java.lang.StringBuilder
            dup
            aload 3 /* post */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* pre */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 821
            aload 4 /* pp */
            iconst_0
            aload 4 /* pp */
            invokevirtual java.lang.String.length:()I
            new java.lang.StringBuilder
            dup
            aload 3 /* post */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* pre */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* pp */
         7: .line 823
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* pre */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* pp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* post */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String pp
        end local 3 // java.lang.String post
        end local 2 // java.lang.String pre
        end local 1 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    8     1     s  Ljava/lang/String;
            0    8     2   pre  Ljava/lang/String;
            0    8     3  post  Ljava/lang/String;
            5    8     4    pp  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     
      pre   
      post  

  void hardrb(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
         0: .line 832
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 833
            return
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1   key  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   

  java.lang.String messageFormat(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 842
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* rs */
        start local 3 // java.lang.String rs
         1: .line 843
            aload 3 /* rs */
            aload 2 /* args */
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String rs
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1   key  Ljava/lang/String;
            0    2     2  args  [Ljava/lang/Object;
            1    2     3    rs  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   
      args  

  public void hardmsg(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 855
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.messageFormat:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 856
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1   key  Ljava/lang/String;
            0    2     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public void errormsg(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 867
            aload 0 /* this */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.messageFormat:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 868
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1   key  Ljava/lang/String;
            0    2     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public void fluffmsg(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 879
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 880
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 882
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1   key  Ljava/lang/String;
            0    3     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  <T> void hardPairs(java.util.stream.Stream<T>, java.util.function.Function<T, java.lang.String>, java.util.function.Function<T, java.lang.String>);
    descriptor: (Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.stream.Stream stream
        start local 2 // java.util.function.Function a
        start local 3 // java.util.function.Function b
         0: .line 885
            aload 1 /* stream */
            aload 2 /* a */
            aload 3 /* b */
         1: .line 886
            invokedynamic apply()Ljava/util/function/BinaryOperator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$34(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         2: .line 887
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  java/util/LinkedHashMap.<init>()V (8)
                  ()Ljava/util/LinkedHashMap;
         3: .line 885
            invokestatic java.util.stream.Collectors.toMap:(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 4 /* a2b */
        start local 4 // java.util.Map a2b
         4: .line 888
            aload 4 /* a2b */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.util.stream.Stream java.util.function.Function java.util.function.Function java.util.Map top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* e */
        start local 5 // java.util.Map$Entry e
         6: .line 889
            aload 0 /* this */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         7: .line 890
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            aload 0 /* this */
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getPre:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.getPost:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 5 // java.util.Map$Entry e
         8: .line 888
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 892
            return
        end local 4 // java.util.Map a2b
        end local 3 // java.util.function.Function b
        end local 2 // java.util.function.Function a
        end local 1 // java.util.stream.Stream stream
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0   10     1  stream  Ljava/util/stream/Stream<TT;>;
            0   10     2       a  Ljava/util/function/Function<TT;Ljava/lang/String;>;
            0   10     3       b  Ljava/util/function/Function<TT;Ljava/lang/String;>;
            4   10     4     a2b  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            6    8     5       e  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/stream/Stream<TT;>;Ljava/util/function/Function<TT;Ljava/lang/String;>;Ljava/util/function/Function<TT;Ljava/lang/String;>;)V
    MethodParameters:
        Name  Flags
      stream  
      a       
      b       

  static java.lang.String trimEnd(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String s
         0: .line 901
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* last */
        start local 1 // int last
         1: .line 902
            iload 1 /* last */
            istore 2 /* i */
        start local 2 // int i
         2: .line 903
            goto 4
         3: .line 904
      StackMap locals: int int
      StackMap stack:
            iinc 2 /* i */ -1
         4: .line 903
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iflt 5
            aload 0 /* s */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 3
         5: .line 906
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 1 /* last */
            if_icmpeq 7
         6: .line 907
            aload 0 /* s */
            iconst_0
            iload 2 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         7: .line 909
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            areturn
        end local 2 // int i
        end local 1 // int last
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     s  Ljava/lang/String;
            1    8     1  last  I
            2    8     2     i  I
    MethodParameters:
      Name  Flags
      s     

  public int start(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String[] args
         0: .line 921
            new jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            astore 2 /* commandLineArgs */
        start local 2 // jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine commandLineArgs
         1: .line 922
            aload 0 /* this */
            aload 2 /* commandLineArgs */
            aload 1 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine.parse:([Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$Options;
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         2: .line 923
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            ifnonnull 4
         3: .line 926
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ireturn
         4: .line 928
      StackMap locals: jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine
      StackMap stack:
            aload 0 /* this */
            aload 2 /* commandLineArgs */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine.startup:()Ljdk/internal/jshell/tool/Startup;
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
         5: .line 930
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.configEditor:()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            pop
         6: .line 933
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         7: .line 934
            goto 11
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         8: astore 3 /* ex */
        start local 3 // java.lang.IllegalStateException ex
         9: .line 936
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
            aload 3 /* ex */
            invokevirtual java.lang.IllegalStateException.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 938
            iconst_1
            ireturn
        end local 3 // java.lang.IllegalStateException ex
        11: .line 941
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokestatic jdk.internal.jshell.tool.JShellTool$ReplayableHistory.fromPrevious:(Ljdk/internal/jshell/tool/PersistentStorage;)Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            putfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
        12: .line 943
            aload 2 /* commandLineArgs */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine.nonOptions:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 16
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine top java.util.Iterator
      StackMap stack:
        13: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* loadFile */
        start local 3 // java.lang.String loadFile
        14: .line 944
            aload 0 /* this */
            aload 3 /* loadFile */
            ldc "jshell"
            invokevirtual jdk.internal.jshell.tool.JShellTool.runFile:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 16
        15: .line 946
            iconst_1
            ireturn
        end local 3 // java.lang.String loadFile
        16: .line 943
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        17: .line 950
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 19
        18: .line 952
            aload 0 /* this */
            aload 2 /* commandLineArgs */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine.feedbackMode:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.initFeedback:(Ljava/lang/String;)V
        19: .line 955
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 50
        20: .line 957
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
        21: .line 958
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.shouldDisplayCommandFluff:()Z
            ifeq 23
        22: .line 959
            aload 0 /* this */
            ldc "jshell.msg.welcome"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.version:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        23: .line 962
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$3
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$3.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            astore 3 /* shutdownHook */
        start local 3 // java.lang.Thread shutdownHook
        24: .line 968
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        25: .line 970
            aconst_null
            astore 4
            aconst_null
            astore 5
        26: new jdk.internal.jshell.tool.ConsoleIOContext
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
            invokespecial jdk.internal.jshell.tool.ConsoleIOContext.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/io/InputStream;Ljava/io/PrintStream;)V
            astore 6 /* in */
        start local 6 // jdk.internal.jshell.tool.IOContext in
        27: .line 971
            goto 31
        28: .line 972
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread java.lang.Throwable java.lang.Throwable jdk.internal.jshell.tool.IOContext
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 30
        29: .line 973
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        30: .line 975
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        31: .line 971
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifne 28
        32: .line 977
            aload 6 /* in */
            ifnull 45
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
            goto 45
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 4
            aload 6 /* in */
            ifnull 34
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
        end local 6 // jdk.internal.jshell.tool.IOContext in
      StackMap locals:
      StackMap stack:
        34: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 5
            aload 4
            ifnonnull 36
            aload 5
            astore 4
            goto 37
      StackMap locals:
      StackMap stack:
        36: aload 4
            aload 5
            if_acmpeq 37
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        37: aload 4
            athrow
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread
      StackMap stack: java.lang.Throwable
        38: astore 7
        39: .line 978
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.storeHistory:(Ljdk/internal/jshell/tool/PersistentStorage;)V
        40: .line 979
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        41: .line 981
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        42: .line 982
            goto 44
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread top top top java.lang.Throwable
      StackMap stack: java.lang.Exception
        43: pop
        44: .line 986
      StackMap locals:
      StackMap stack:
            aload 7
            athrow
        45: .line 978
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.storeHistory:(Ljdk/internal/jshell/tool/PersistentStorage;)V
        46: .line 979
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        47: .line 981
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        48: .line 982
            goto 50
      StackMap locals:
      StackMap stack: java.lang.Exception
        49: pop
        end local 3 // java.lang.Thread shutdownHook
        50: .line 988
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        51: .line 989
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ireturn
        end local 2 // jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine commandLineArgs
        end local 1 // java.lang.String[] args
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   52     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   52     1             args  [Ljava/lang/String;
            1   52     2  commandLineArgs  Ljdk/internal/jshell/tool/JShellTool$OptionParserCommandLine;
            9   11     3               ex  Ljava/lang/IllegalStateException;
           14   16     3         loadFile  Ljava/lang/String;
           24   50     3     shutdownHook  Ljava/lang/Thread;
           27   34     6               in  Ljdk/internal/jshell/tool/IOContext;
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.IllegalStateException
          27    32      33  any
          26    35      35  any
          25    38      38  any
          41    42      43  Class java.lang.Exception
          47    48      49  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      args  

  private jdk.internal.jshell.tool.JShellTool$EditorSetting configEditor();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 994
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokestatic jdk.internal.jshell.tool.JShellTool$EditorSetting.fromPrefs:(Ljdk/internal/jshell/tool/PersistentStorage;)Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            putfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
         1: .line 995
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            ifnull 3
         2: .line 996
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
         3: .line 999
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 9
      StackMap locals: jdk.internal.jshell.tool.JShellTool top int int java.lang.String[]
      StackMap stack:
         4: aload 4
            iload 2
            aaload
            astore 1 /* envvar */
        start local 1 // java.lang.String envvar
         5: .line 1000
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
            aload 1 /* envvar */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* v */
        start local 5 // java.lang.String v
         6: .line 1001
            aload 5 /* v */
            ifnull 8
         7: .line 1002
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$EditorSetting
            dup
            aload 5 /* v */
            ldc "\\s+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            iconst_0
            invokespecial jdk.internal.jshell.tool.JShellTool$EditorSetting.<init>:([Ljava/lang/String;Z)V
            dup_x1
            putfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
        end local 5 // java.lang.String v
        end local 1 // java.lang.String envvar
         8: .line 999
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 4
        10: .line 1006
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            dup_x1
            putfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Ljdk/internal/jshell/tool/JShellTool;
            5    8     1  envvar  Ljava/lang/String;
            6    8     5       v  Ljava/lang/String;

  private void printUsage();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1010
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            aload 0 /* this */
            ldc "help.usage"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 1011
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private void printUsageX();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1014
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            aload 0 /* this */
            ldc "help.usage.x"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 1015
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private void resetState();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1054
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
         1: .line 1057
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$NameSpace
            dup
            aload 0 /* this */
            ldc "main"
            ldc ""
            invokespecial jdk.internal.jshell.tool.JShellTool$NameSpace.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;Ljava/lang/String;)V
            putfield jdk.internal.jshell.tool.JShellTool.mainNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
         2: .line 1058
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$NameSpace
            dup
            aload 0 /* this */
            ldc "start"
            ldc "s"
            invokespecial jdk.internal.jshell.tool.JShellTool$NameSpace.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;Ljava/lang/String;)V
            putfield jdk.internal.jshell.tool.JShellTool.startNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
         3: .line 1059
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$NameSpace
            dup
            aload 0 /* this */
            ldc "error"
            ldc "e"
            invokespecial jdk.internal.jshell.tool.JShellTool$NameSpace.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;Ljava/lang/String;)V
            putfield jdk.internal.jshell.tool.JShellTool.errorNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
         4: .line 1060
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.mapSnippet:Ljava/util/Map;
         5: .line 1061
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            putfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
         6: .line 1064
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            putfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
         7: .line 1065
            aload 0 /* this */
            invokestatic jdk.internal.jshell.tool.JShellTool$ReplayableHistory.emptyHistory:()Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            putfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
         8: .line 1067
            invokestatic jdk.jshell.JShell.builder:()Ljdk/jshell/JShell$Builder;
         9: .line 1068
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.userin:Ljava/io/InputStream;
            invokevirtual jdk.jshell.JShell$Builder.in:(Ljava/io/InputStream;)Ljdk/jshell/JShell$Builder;
        10: .line 1069
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
            invokevirtual jdk.jshell.JShell$Builder.out:(Ljava/io/PrintStream;)Ljdk/jshell/JShell$Builder;
        11: .line 1070
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
            invokevirtual jdk.jshell.JShell$Builder.err:(Ljava/io/PrintStream;)Ljdk/jshell/JShell$Builder;
        12: .line 1071
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$36()Ljava/lang/String; (7)
                  ()Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.tempVariableNameGenerator:(Ljava/util/function/Supplier;)Ljdk/jshell/JShell$Builder;
        13: .line 1072
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$37(Ljdk/jshell/Snippet;Ljava/lang/Integer;)Ljava/lang/String; (7)
                  (Ljdk/jshell/Snippet;Ljava/lang/Integer;)Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.idGenerator:(Ljava/util/function/BiFunction;)Ljdk/jshell/JShell$Builder;
        14: .line 1075
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.remoteVmOptions:()[Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.remoteVMOptions:([Ljava/lang/String;)Ljdk/jshell/JShell$Builder;
        15: .line 1076
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.compilerOptions:()[Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.compilerOptions:([Ljava/lang/String;)Ljdk/jshell/JShell$Builder;
        16: .line 1066
            astore 1 /* builder */
        start local 1 // jdk.jshell.JShell$Builder builder
        17: .line 1077
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
            ifnull 19
        18: .line 1078
            aload 1 /* builder */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.executionEngine:(Ljava/lang/String;)Ljdk/jshell/JShell$Builder;
            pop
        19: .line 1080
      StackMap locals: jdk.jshell.JShell$Builder
      StackMap stack:
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.jshell.JShell$Builder.build:()Ljdk/jshell/JShell;
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
        20: .line 1081
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            invokestatic jdk.internal.jshell.debug.InternalDebugControl.setDebugFlags:(Ljdk/jshell/JShell;I)V
        21: .line 1082
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$38(Ljdk/jshell/JShell;)V (7)
                  (Ljdk/jshell/JShell;)V
            invokevirtual jdk.jshell.JShell.onShutdown:(Ljava/util/function/Consumer;)Ljdk/jshell/JShell$Subscription;
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
        22: .line 1089
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.sourceCodeAnalysis:()Ljdk/jshell/SourceCodeAnalysis;
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
        23: .line 1090
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        24: .line 1096
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 32
        25: .line 1098
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        26: .line 1099
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            invokevirtual jdk.internal.jshell.tool.Startup.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.startUpRun:(Ljava/lang/String;)V
        27: .line 1100
            goto 31
      StackMap locals:
      StackMap stack: java.lang.Throwable
        28: astore 2
        29: .line 1101
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        30: .line 1102
            aload 2
            athrow
        31: .line 1101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        32: .line 1105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.mainNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            putfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
        33: .line 1106
            return
        end local 1 // jdk.jshell.JShell$Builder builder
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   34     0     this  Ljdk/internal/jshell/tool/JShellTool;
           17   34     1  builder  Ljdk/jshell/JShell$Builder;
      Exception table:
        from    to  target  type
          25    28      28  any

  private void initFeedback(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String initMode
         0: .line 1111
            new jdk.internal.jshell.tool.JShellTool$InitMessageHandler
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$InitMessageHandler.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            astore 2 /* initmh */
        start local 2 // jdk.internal.jshell.tool.MessageHandler initmh
         1: .line 1113
            aload 0 /* this */
            aload 0 /* this */
            ldc "startup.feedback"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.startUpRun:(Ljava/lang/String;)V
         2: .line 1115
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.markModesReadOnly:()V
         3: .line 1117
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* encoded */
        start local 3 // java.lang.String encoded
         4: .line 1118
            aload 3 /* encoded */
            ifnull 7
            aload 3 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 7
         5: .line 1119
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 2 /* initmh */
            aload 3 /* encoded */
            invokevirtual jdk.internal.jshell.tool.Feedback.restoreEncodedModes:(Ljdk/internal/jshell/tool/MessageHandler;Ljava/lang/String;)Z
            ifne 7
         6: .line 1121
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.remove:(Ljava/lang/String;)V
         7: .line 1124
      StackMap locals: jdk.internal.jshell.tool.MessageHandler java.lang.String
      StackMap stack:
            aload 1 /* initMode */
            ifnull 12
         8: .line 1126
            aload 0 /* this */
            aload 2 /* initmh */
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "--feedback"
            aload 1 /* initMode */
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 15
         9: .line 1127
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        10: .line 1128
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        11: .line 1130
            goto 15
        12: .line 1131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "FEEDBACK"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* fb */
        start local 4 // java.lang.String fb
        13: .line 1132
            aload 4 /* fb */
            ifnull 15
        14: .line 1135
            aload 0 /* this */
            aload 2 /* initmh */
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "previous retain feedback"
            new java.lang.StringBuilder
            dup
            ldc "-retain "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fb */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            pop
        end local 4 // java.lang.String fb
        15: .line 1138
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String encoded
        end local 2 // jdk.internal.jshell.tool.MessageHandler initmh
        end local 1 // java.lang.String initMode
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     1  initMode  Ljava/lang/String;
            1   16     2    initmh  Ljdk/internal/jshell/tool/MessageHandler;
            4   16     3   encoded  Ljava/lang/String;
           13   15     4        fb  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      initMode  

  private void startUpRun(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String start
         0: .line 1142
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: new jdk.internal.jshell.tool.ScannerIOContext
            dup
            new java.io.StringReader
            dup
            aload 1 /* start */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            invokespecial jdk.internal.jshell.tool.ScannerIOContext.<init>:(Ljava/io/Reader;)V
            astore 4 /* suin */
        start local 4 // jdk.internal.jshell.tool.IOContext suin
         2: .line 1143
            aload 0 /* this */
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         3: .line 1144
            aload 4 /* suin */
            ifnull 12
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
            goto 12
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.Throwable java.lang.Throwable jdk.internal.jshell.tool.IOContext
      StackMap stack: java.lang.Throwable
         4: astore 2
            aload 4 /* suin */
            ifnull 5
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
        end local 4 // jdk.internal.jshell.tool.IOContext suin
      StackMap locals:
      StackMap stack:
         5: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 3
            aload 2
            ifnonnull 7
            aload 3
            astore 2
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 2
            aload 3
            if_acmpeq 8
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
         8: aload 2
            athrow
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack: java.lang.Exception
         9: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
        10: .line 1145
            aload 0 /* this */
            ldc "jshell.err.startup.unexpected.exception"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* ex */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        11: .line 1146
            aload 2 /* ex */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        end local 2 // java.lang.Exception ex
        12: .line 1148
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String start
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   13     1  start  Ljava/lang/String;
            2    5     4   suin  Ljdk/internal/jshell/tool/IOContext;
           10   12     2     ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     3       4  any
           1     6       6  any
           0     9       9  Class java.lang.Exception
    MethodParameters:
       Name  Flags
      start  

  private void closeState();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1151
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         1: .line 1152
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            astore 1 /* oldState */
        start local 1 // jdk.jshell.JShell oldState
         2: .line 1153
            aload 1 /* oldState */
            ifnull 7
         3: .line 1154
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         4: .line 1155
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
         5: .line 1156
            aload 1 /* oldState */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
            invokevirtual jdk.jshell.JShell.unsubscribe:(Ljdk/jshell/JShell$Subscription;)V
         6: .line 1157
            aload 1 /* oldState */
            invokevirtual jdk.jshell.JShell.close:()V
         7: .line 1159
      StackMap locals: jdk.jshell.JShell
      StackMap stack:
            return
        end local 1 // jdk.jshell.JShell oldState
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljdk/internal/jshell/tool/JShellTool;
            2    8     1  oldState  Ljdk/jshell/JShell;

  private void run(jdk.internal.jshell.tool.IOContext);
    descriptor: (Ljdk/internal/jshell/tool/IOContext;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.IOContext in
         0: .line 1167
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            astore 2 /* oldInput */
        start local 2 // jdk.internal.jshell.tool.IOContext oldInput
         1: .line 1168
            aload 0 /* this */
            aload 1 /* in */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         2: .line 1171
            ldc ""
            astore 3 /* remaining */
        start local 3 // java.lang.String remaining
         3: .line 1172
            goto 6
         4: .line 1174
      StackMap locals: jdk.internal.jshell.tool.IOContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 3 /* remaining */
            invokevirtual jdk.internal.jshell.tool.JShellTool.getInput:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* src */
        start local 4 // java.lang.String src
         5: .line 1176
            aload 0 /* this */
            aload 4 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processInput:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* remaining */
        end local 4 // java.lang.String src
         6: .line 1172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 4
        end local 3 // java.lang.String remaining
         7: .line 1178
            goto 16
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.IOContext jdk.internal.jshell.tool.IOContext
      StackMap stack: java.io.EOFException
         8: pop
         9: .line 1183
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        10: .line 1180
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        11: .line 1181
            aload 0 /* this */
            ldc "jshell.err.unexpected.exception"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* ex */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 3 // java.io.IOException ex
        12: .line 1183
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        13: .line 1182
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 1183
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        15: .line 1184
            aload 5
            athrow
        16: .line 1183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        17: .line 1185
      StackMap locals:
      StackMap stack:
            return
        end local 2 // jdk.internal.jshell.tool.IOContext oldInput
        end local 1 // jdk.internal.jshell.tool.IOContext in
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   18     1         in  Ljdk/internal/jshell/tool/IOContext;
            1   18     2   oldInput  Ljdk/internal/jshell/tool/IOContext;
            3    7     3  remaining  Ljava/lang/String;
            5    6     4        src  Ljava/lang/String;
           11   12     3         ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     7       8  Class java.io.EOFException
           2     7      10  Class java.io.IOException
           2     9      13  any
          10    12      13  any
    MethodParameters:
      Name  Flags
      in    

  private java.lang.String processInput(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String src
         0: .line 1194
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 1196
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.processCommand:(Ljava/lang/String;)V
         2: .line 1198
            ldc ""
            areturn
         3: .line 1202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            aload 1 /* src */
            invokevirtual jdk.jshell.SourceCodeAnalysis.analyzeCompletion:(Ljava/lang/String;)Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            astore 2 /* an */
        start local 2 // jdk.jshell.SourceCodeAnalysis$CompletionInfo an
         4: .line 1203
            aload 0 /* this */
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.source:()Ljava/lang/String;
            invokestatic jdk.internal.jshell.tool.JShellTool.trimEnd:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 1205
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            areturn
         6: .line 1208
      StackMap locals: jdk.jshell.SourceCodeAnalysis$CompletionInfo
      StackMap stack:
            ldc ""
            areturn
        end local 2 // jdk.jshell.SourceCodeAnalysis$CompletionInfo an
        end local 1 // java.lang.String src
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1   src  Ljava/lang/String;
            4    7     2    an  Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
    MethodParameters:
      Name  Flags
      src   

  private java.lang.String getInput(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String initial
         0: .line 1221
            aload 1 /* initial */
            astore 2 /* src */
        start local 2 // java.lang.String src
         1: .line 1222
            goto 27
         2: .line 1223
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
            aload 0 /* this */
            aload 2 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isComplete:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 1224
            aload 2 /* src */
            areturn
         4: .line 1226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 7
         5: .line 1227
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 6
            ldc " \u0005"
            goto 8
         6: .line 1228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            invokevirtual jdk.internal.jshell.tool.JShellTool$NameSpace.tidNext:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.Feedback.getPrompt:(Ljava/lang/String;)Ljava/lang/String;
            goto 8
         7: .line 1229
      StackMap locals:
      StackMap stack:
            ldc ""
         8: .line 1226
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* firstLinePrompt */
        start local 3 // java.lang.String firstLinePrompt
         9: .line 1231
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 12
        10: .line 1232
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 11
            ldc " \u0006"
            goto 13
        11: .line 1233
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            invokevirtual jdk.internal.jshell.tool.JShellTool$NameSpace.tidNext:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.Feedback.getContinuationPrompt:(Ljava/lang/String;)Ljava/lang/String;
            goto 13
        12: .line 1234
      StackMap locals:
      StackMap stack:
            ldc ""
        13: .line 1231
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* continuationPrompt */
        start local 4 // java.lang.String continuationPrompt
        14: .line 1238
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            aload 3 /* firstLinePrompt */
            aload 4 /* continuationPrompt */
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            aload 2 /* src */
            invokevirtual jdk.internal.jshell.tool.IOContext.readLine:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/lang/String;
            astore 5 /* line */
        start local 5 // java.lang.String line
        15: .line 1239
            goto 19
        end local 5 // java.lang.String line
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack: jdk.internal.jshell.tool.IOContext$InputInterruptedException
        16: pop
        17: .line 1241
            ldc ""
            astore 2 /* src */
        18: .line 1242
            goto 27
        start local 5 // java.lang.String line
        19: .line 1244
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* line */
            ifnonnull 23
        20: .line 1246
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.interactiveOutput:()Z
            ifeq 22
        21: .line 1248
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        22: .line 1250
      StackMap locals:
      StackMap stack:
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
        23: .line 1252
      StackMap locals:
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        24: .line 1253
            aload 5 /* line */
            goto 26
        25: .line 1254
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* src */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* line */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 1252
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* src */
        end local 5 // java.lang.String line
        end local 4 // java.lang.String continuationPrompt
        end local 3 // java.lang.String firstLinePrompt
        27: .line 1222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 2
        28: .line 1256
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
        end local 2 // java.lang.String src
        end local 1 // java.lang.String initial
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   29     0                this  Ljdk/internal/jshell/tool/JShellTool;
            0   29     1             initial  Ljava/lang/String;
            1   29     2                 src  Ljava/lang/String;
            9   27     3     firstLinePrompt  Ljava/lang/String;
           14   27     4  continuationPrompt  Ljava/lang/String;
           15   16     5                line  Ljava/lang/String;
           19   27     5                line  Ljava/lang/String;
      Exception table:
        from    to  target  type
          14    15      16  Class jdk.internal.jshell.tool.IOContext$InputInterruptedException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      initial  

  public boolean isComplete(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String src
         0: .line 1262
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 9
         1: .line 1265
            aload 1 /* src */
            ldc " "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 3 /* sp */
        start local 3 // int sp
         2: .line 1266
            iload 3 /* sp */
            ifge 3
            iconst_1
            ireturn
         3: .line 1267
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String top int
      StackMap stack:
            aload 1 /* src */
            iload 3 /* sp */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 2 /* check */
        start local 2 // java.lang.String check
         4: .line 1268
            aload 2 /* check */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
            iconst_1
            ireturn
         5: .line 1269
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String int
      StackMap stack:
            aload 1 /* src */
            iconst_0
            iload 3 /* sp */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* cmd */
        start local 4 // java.lang.String cmd
         6: .line 1270
            aload 0 /* this */
            aload 4 /* cmd */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$39(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokevirtual jdk.internal.jshell.tool.JShellTool.findCommand:(Ljava/lang/String;Ljava/util/function/Predicate;)[Ljdk/internal/jshell/tool/JShellTool$Command;
            astore 5 /* match */
        start local 5 // jdk.internal.jshell.tool.JShellTool$Command[] match
         7: .line 1271
            aload 5 /* match */
            arraylength
            iconst_1
            if_icmpne 8
            aload 5 /* match */
            iconst_0
            aaload
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            ldc "/exit"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
         8: .line 1273
      StackMap locals: java.lang.String jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // jdk.internal.jshell.tool.JShellTool$Command[] match
        end local 4 // java.lang.String cmd
        end local 3 // int sp
        end local 2 // java.lang.String check
         9: .line 1277
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack:
            aload 1 /* src */
            astore 2 /* check */
        start local 2 // java.lang.String check
        10: .line 1279
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            aload 2 /* check */
            invokevirtual jdk.jshell.SourceCodeAnalysis.analyzeCompletion:(Ljava/lang/String;)Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.completeness:()Ljdk/jshell/SourceCodeAnalysis$Completeness;
            astore 3 /* comp */
        start local 3 // jdk.jshell.SourceCodeAnalysis$Completeness comp
        11: .line 1280
            aload 3 /* comp */
            invokevirtual jdk.jshell.SourceCodeAnalysis$Completeness.isComplete:()Z
            ifne 12
            aload 3 /* comp */
            getstatic jdk.jshell.SourceCodeAnalysis$Completeness.EMPTY:Ljdk/jshell/SourceCodeAnalysis$Completeness;
            if_acmpne 13
        12: .line 1281
      StackMap locals: jdk.jshell.SourceCodeAnalysis$Completeness
      StackMap stack:
            iconst_1
            ireturn
        13: .line 1283
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // jdk.jshell.SourceCodeAnalysis$Completeness comp
        end local 2 // java.lang.String check
        end local 1 // java.lang.String src
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   14     1    src  Ljava/lang/String;
            4    9     2  check  Ljava/lang/String;
           10   14     2  check  Ljava/lang/String;
            2    9     3     sp  I
            6    9     4    cmd  Ljava/lang/String;
            7    9     5  match  [Ljdk/internal/jshell/tool/JShellTool$Command;
           11   14     3   comp  Ljdk/jshell/SourceCodeAnalysis$Completeness;
    MethodParameters:
      Name  Flags
      src   

  private boolean isCommand(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String line
         0: .line 1287
            aload 1 /* line */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            aload 1 /* line */
            ldc "//"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 1
            aload 1 /* line */
            ldc "/*"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String line
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1  line  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      line  

  private void addToReplayHistory(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String s
         0: .line 1291
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 2
         1: .line 1292
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            aload 1 /* s */
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.add:(Ljava/lang/String;)V
         2: .line 1294
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private boolean processSourceCatchingReset(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String src
         0: .line 1304
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.beforeUserCode:()V
         1: .line 1305
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSource:(Ljava/lang/String;)Z
            istore 3
         2: .line 1311
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.afterUserCode:()V
         3: .line 1305
            iload 3
            ireturn
         4: .line 1306
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            pop
         5: .line 1307
            aload 0 /* this */
            ldc "Resetting..."
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 1308
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 1311
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.afterUserCode:()V
         8: .line 1309
            iconst_0
            ireturn
         9: .line 1310
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        10: .line 1311
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.afterUserCode:()V
        11: .line 1312
            aload 2
            athrow
        end local 1 // java.lang.String src
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   12     1   src  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     2       4  Class java.lang.IllegalStateException
           0     2       9  any
           4     7       9  any
    MethodParameters:
      Name  Flags
      src   

  private void processCommand(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String input
         0: .line 1322
            aload 1 /* input */
            ldc "/-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 1325
            aload 0 /* this */
            aload 1 /* input */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdUseHistoryEntry:(I)Z
            pop
         2: .line 1326
            return
         3: .line 1327
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         4: .line 1333
      StackMap locals:
      StackMap stack:
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* idx */
        start local 4 // int idx
         5: .line 1334
            iload 4 /* idx */
            ifle 9
         6: .line 1335
            aload 1 /* input */
            iload 4 /* idx */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 3 /* arg */
        start local 3 // java.lang.String arg
         7: .line 1336
            aload 1 /* input */
            iconst_0
            iload 4 /* idx */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         8: .line 1337
            goto 11
        end local 3 // java.lang.String arg
        end local 2 // java.lang.String cmd
         9: .line 1338
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String top top int
      StackMap stack:
            aload 1 /* input */
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
        10: .line 1339
            ldc ""
            astore 3 /* arg */
        start local 3 // java.lang.String arg
        11: .line 1342
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cmd */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$40(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokevirtual jdk.internal.jshell.tool.JShellTool.findCommand:(Ljava/lang/String;Ljava/util/function/Predicate;)[Ljdk/internal/jshell/tool/JShellTool$Command;
            astore 5 /* candidates */
        start local 5 // jdk.internal.jshell.tool.JShellTool$Command[] candidates
        12: .line 1343
            aload 5 /* candidates */
            arraylength
            tableswitch { // 0 - 1
                    0: 13
                    1: 19
              default: 23
          }
        13: .line 1346
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.RERUN_ID:Ljava/util/regex/Pattern;
            aload 2 /* cmd */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 16
        14: .line 1348
            aload 0 /* this */
            aload 1 /* input */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunHistoryEntriesById:(Ljava/lang/String;)V
        15: .line 1349
            goto 27
        16: .line 1350
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.invalid.command"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* cmd */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        17: .line 1351
            aload 0 /* this */
            ldc "jshell.msg.help.for.help"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        18: .line 1353
            goto 27
        19: .line 1355
      StackMap locals:
      StackMap stack:
            aload 5 /* candidates */
            iconst_0
            aaload
            astore 6 /* command */
        start local 6 // jdk.internal.jshell.tool.JShellTool$Command command
        20: .line 1357
            aload 6 /* command */
            getfield jdk.internal.jshell.tool.JShellTool$Command.run:Ljava/util/function/Function;
            aload 3 /* arg */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 27
            aload 6 /* command */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.REPLAY:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            if_acmpne 27
        21: .line 1358
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 6 /* command */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* arg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        22: .line 1360
            goto 27
        end local 6 // jdk.internal.jshell.tool.JShellTool$Command command
        23: .line 1363
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.command.ambiguous"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* cmd */
            aastore
            dup
            iconst_1
        24: .line 1364
            aload 5 /* candidates */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$41(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            ldc ", "
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            aastore
        25: .line 1363
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 1365
            aload 0 /* this */
            ldc "jshell.msg.help.for.help"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        27: .line 1368
      StackMap locals:
      StackMap stack:
            return
        end local 5 // jdk.internal.jshell.tool.JShellTool$Command[] candidates
        end local 4 // int idx
        end local 3 // java.lang.String arg
        end local 2 // java.lang.String cmd
        end local 1 // java.lang.String input
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   28     1       input  Ljava/lang/String;
            8    9     2         cmd  Ljava/lang/String;
           10   28     2         cmd  Ljava/lang/String;
            7    9     3         arg  Ljava/lang/String;
           11   28     3         arg  Ljava/lang/String;
            5   28     4         idx  I
           12   28     5  candidates  [Ljdk/internal/jshell/tool/JShellTool$Command;
           20   23     6     command  Ljdk/internal/jshell/tool/JShellTool$Command;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.NumberFormatException
    MethodParameters:
       Name  Flags
      input  

  private jdk.internal.jshell.tool.JShellTool$Command[] findCommand(java.lang.String, java.util.function.Predicate<jdk.internal.jshell.tool.JShellTool$Command>);
    descriptor: (Ljava/lang/String;Ljava/util/function/Predicate;)[Ljdk/internal/jshell/tool/JShellTool$Command;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String cmd
        start local 2 // java.util.function.Predicate filter
         0: .line 1371
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            aload 1 /* cmd */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$Command
            astore 3 /* exact */
        start local 3 // jdk.internal.jshell.tool.JShellTool$Command exact
         1: .line 1372
            aload 3 /* exact */
            ifnull 3
         2: .line 1373
            iconst_1
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            dup
            iconst_0
            aload 3 /* exact */
            aastore
            areturn
         3: .line 1375
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Command
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
         4: .line 1376
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 1377
            aload 2 /* filter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 1378
            aload 1 /* cmd */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$42(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         7: .line 1379
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$43(I)[Ljdk/internal/jshell/tool/JShellTool$Command; (6)
                  (I)[Ljdk/internal/jshell/tool/JShellTool$Command;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$Command[]
         8: .line 1375
            areturn
        end local 3 // jdk.internal.jshell.tool.JShellTool$Command exact
        end local 2 // java.util.function.Predicate filter
        end local 1 // java.lang.String cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    9     1     cmd  Ljava/lang/String;
            0    9     2  filter  Ljava/util/function/Predicate<Ljdk/internal/jshell/tool/JShellTool$Command;>;
            1    9     3   exact  Ljdk/internal/jshell/tool/JShellTool$Command;
    Signature: (Ljava/lang/String;Ljava/util/function/Predicate<Ljdk/internal/jshell/tool/JShellTool$Command;>;)[Ljdk/internal/jshell/tool/JShellTool$Command;
    MethodParameters:
        Name  Flags
      cmd     
      filter  

  static java.nio.file.Path toPathResolvingUserHome(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/nio/file/Path;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.String pathString
         0: .line 1383
            aload 0 /* pathString */
            getstatic java.io.File.separatorChar:C
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            ldc "~/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 1384
            ldc "user.home"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* pathString */
            iconst_2
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aastore
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            areturn
         2: .line 1386
      StackMap locals:
      StackMap stack:
            aload 0 /* pathString */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            areturn
        end local 0 // java.lang.String pathString
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  pathString  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      pathString  

  private void registerCommand(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 1500
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            aload 1 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 1 /* cmd */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1501
            return
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;
    MethodParameters:
      Name  Flags
      cmd   

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider skipWordThenCompletion(jdk.internal.jshell.tool.JShellTool$CompletionProvider);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider completionProvider
         0: .line 1504
            aload 0 /* completionProvider */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$44(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider completionProvider
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    1     0  completionProvider  Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
                    Name  Flags
      completionProvider  

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider fileCompletions(java.util.function.Predicate<java.nio.file.Path>);
    descriptor: (Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.function.Predicate accept
         0: .line 1519
            aload 0 /* accept */
            invokedynamic completionSuggestions(Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$45(Ljava/util/function/Predicate;Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 0 // java.util.function.Predicate accept
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  accept  Ljava/util/function/Predicate<Ljava/nio/file/Path;>;
    Signature: (Ljava/util/function/Predicate<Ljava/nio/file/Path;>;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
        Name  Flags
      accept  

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider classPathCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1545
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$53(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokestatic jdk.internal.jshell.tool.JShellTool.fileCompletions:(Ljava/util/function/Predicate;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private jdk.internal.jshell.tool.JShellTool$CompletionProvider snippetCompletion(java.util.function.Supplier<java.util.stream.Stream<? extends jdk.jshell.Snippet>>);
    descriptor: (Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.function.Supplier snippetsSupplier
         0: .line 1552
            aload 1 /* snippetsSupplier */
            invokedynamic completionSuggestions(Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$54(Ljava/util/function/Supplier;Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 1 // java.util.function.Supplier snippetsSupplier
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1  snippetsSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<+Ljdk/jshell/Snippet;>;>;
    Signature: (Ljava/util/function/Supplier<Ljava/util/stream/Stream<+Ljdk/jshell/Snippet;>;>;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
                  Name  Flags
      snippetsSupplier  

  private jdk.internal.jshell.tool.JShellTool$CompletionProvider snippetWithOptionCompletion(jdk.internal.jshell.tool.JShellTool$CompletionProvider, java.util.function.Supplier<java.util.stream.Stream<? extends jdk.jshell.Snippet>>);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$CompletionProvider optionProvider
        start local 2 // java.util.function.Supplier snippetsSupplier
         0: .line 1576
            aload 0 /* this */
            aload 1 /* optionProvider */
            aload 2 /* snippetsSupplier */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$59(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;Ljava/lang/String;I[I)Ljava/util/List; (7)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 2 // java.util.function.Supplier snippetsSupplier
        end local 1 // jdk.internal.jshell.tool.JShellTool$CompletionProvider optionProvider
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    optionProvider  Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            0    1     2  snippetsSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<+Ljdk/jshell/Snippet;>;>;
    Signature: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier<Ljava/util/stream/Stream<+Ljdk/jshell/Snippet;>;>;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
                  Name  Flags
      optionProvider    
      snippetsSupplier  

  private jdk.internal.jshell.tool.JShellTool$CompletionProvider helpCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1590
            aload 0 /* this */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$60(Ljava/lang/String;I[I)Ljava/util/List; (7)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider saveCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1617
            invokedynamic completionSuggestions()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$64(Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider optionCompletion(jdk.internal.jshell.tool.JShellTool$CompletionProvider);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider provider
         0: .line 1631
            aload 0 /* provider */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$65(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider provider
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  provider  Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
          Name  Flags
      provider  

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider historyCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1685
            getstatic jdk.internal.jshell.tool.JShellTool.HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokestatic jdk.internal.jshell.tool.JShellTool.optionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider reloadCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1690
            getstatic jdk.internal.jshell.tool.JShellTool.RELOAD_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokestatic jdk.internal.jshell.tool.JShellTool.optionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider envCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1695
            getstatic jdk.internal.jshell.tool.JShellTool.COMMAND_LINE_LIKE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$FixedCompletionProvider;
            invokestatic jdk.internal.jshell.tool.JShellTool.optionCompletion:(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider orMostSpecificCompletion(jdk.internal.jshell.tool.JShellTool$CompletionProvider, jdk.internal.jshell.tool.JShellTool$CompletionProvider);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider left
        start local 1 // jdk.internal.jshell.tool.JShellTool$CompletionProvider right
         0: .line 1700
            aload 0 /* left */
            aload 1 /* right */
            invokedynamic completionSuggestions(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/String;I[I)Ljava/util/List;
                  jdk/internal/jshell/tool/JShellTool.lambda$69(Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List; (6)
                  (Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$CompletionProvider right
        end local 0 // jdk.internal.jshell.tool.JShellTool$CompletionProvider left
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   left  Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            0    1     1  right  Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    MethodParameters:
       Name  Flags
      left   
      right  

  java.util.stream.Stream<jdk.jshell.Snippet> allSnippets();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1726
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
    Signature: ()Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;

  java.util.stream.Stream<jdk.jshell.Snippet> dropableSnippets();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1730
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1731
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$70(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 1730
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/jshell/tool/JShellTool;
    Signature: ()Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;

  java.util.stream.Stream<jdk.jshell.VarSnippet> allVarSnippets();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1735
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1736
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$71(Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 1737
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$72(Ljdk/jshell/Snippet;)Ljdk/jshell/VarSnippet; (6)
                  (Ljdk/jshell/Snippet;)Ljdk/jshell/VarSnippet;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 1735
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
    Signature: ()Ljava/util/stream/Stream<Ljdk/jshell/VarSnippet;>;

  java.util.stream.Stream<jdk.jshell.MethodSnippet> allMethodSnippets();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1741
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1742
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$73(Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 1743
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$74(Ljdk/jshell/Snippet;)Ljdk/jshell/MethodSnippet; (6)
                  (Ljdk/jshell/Snippet;)Ljdk/jshell/MethodSnippet;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 1741
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
    Signature: ()Ljava/util/stream/Stream<Ljdk/jshell/MethodSnippet;>;

  java.util.stream.Stream<jdk.jshell.TypeDeclSnippet> allTypeSnippets();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1747
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1748
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$75(Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 1749
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$76(Ljdk/jshell/Snippet;)Ljdk/jshell/TypeDeclSnippet; (6)
                  (Ljdk/jshell/Snippet;)Ljdk/jshell/TypeDeclSnippet;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 1747
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
    Signature: ()Ljava/util/stream/Stream<Ljdk/jshell/TypeDeclSnippet;>;

  public java.util.List<jdk.jshell.SourceCodeAnalysis$Suggestion> commandCompletionSuggestions(java.lang.String, int, int[]);
    descriptor: (Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String code
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1886
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
            aload 1 /* code */
            iload 2 /* cursor */
            aload 3 /* anchor */
            invokevirtual jdk.internal.jshell.tool.ContinuousCompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            areturn
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String code
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    code  Ljava/lang/String;
            0    1     2  cursor  I
            0    1     3  anchor  [I
    Signature: (Ljava/lang/String;I[I)Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
    MethodParameters:
        Name  Flags
      code    
      cursor  
      anchor  

  public java.util.List<java.lang.String> commandDocumentation(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String code
        start local 2 // int cursor
        start local 3 // boolean shortDescription
         0: .line 1890
            aload 1 /* code */
            iconst_0
            iload 2 /* cursor */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            ldc "\\h+"
            ldc " "
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* code */
         1: .line 1891
            aload 1 /* code */
            ldc "/(he(lp?)?|\\?) "
            ldc ""
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* stripped */
        start local 4 // java.lang.String stripped
         2: .line 1892
            aload 1 /* code */
            aload 4 /* stripped */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_0
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* inHelp */
        start local 5 // boolean inHelp
         5: .line 1893
            aload 4 /* stripped */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* space */
        start local 6 // int space
         6: .line 1894
            iload 6 /* space */
            iconst_m1
            if_icmpeq 7
            aload 4 /* stripped */
            iconst_0
            iload 6 /* space */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 8
      StackMap locals: int int
      StackMap stack:
         7: aload 4 /* stripped */
      StackMap locals:
      StackMap stack: java.lang.String
         8: astore 7 /* prefix */
        start local 7 // java.lang.String prefix
         9: .line 1895
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
        10: .line 1899
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUB:Ljava/util/regex/Pattern;
            aload 4 /* stripped */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 18
        11: .line 1900
            aload 4 /* stripped */
            ldc "/?set ([^ ]*)($| .*)"
            ldc "$1"
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* setSubcommand */
        start local 10 // java.lang.String setSubcommand
        12: .line 1902
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
        13: .line 1903
            aload 10 /* setSubcommand */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$77(Ljava/lang/String;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        14: .line 1904
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$78(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry; (6)
                  (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        15: .line 1905
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        16: .line 1901
            astore 9 /* toShow */
        end local 10 // java.lang.String setSubcommand
        start local 9 // java.util.List toShow
        17: .line 1906
            goto 34
        end local 9 // java.util.List toShow
      StackMap locals: java.lang.String java.util.List
      StackMap stack:
        18: getstatic jdk.internal.jshell.tool.JShellTool.RERUN_ID:Ljava/util/regex/Pattern;
            aload 4 /* stripped */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 22
        19: .line 1908
            new java.util.AbstractMap$SimpleEntry
            dup
            ldc "/<id>"
            ldc "help.rerun"
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
        20: .line 1907
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        21: .line 1909
            goto 34
        end local 9 // java.util.List toShow
      StackMap locals:
      StackMap stack:
        22: getstatic jdk.internal.jshell.tool.JShellTool.RERUN_PREVIOUS:Ljava/util/regex/Pattern;
            aload 4 /* stripped */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 26
        23: .line 1911
            new java.util.AbstractMap$SimpleEntry
            dup
            ldc "/-<n>"
            ldc "help.rerun"
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
        24: .line 1910
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        25: .line 1912
            goto 34
        end local 9 // java.util.List toShow
        26: .line 1914
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
        27: .line 1915
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        28: .line 1916
            aload 7 /* prefix */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$79(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        29: .line 1918
            iload 5 /* inHelp */
            invokedynamic test(Z)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$80(ZLjdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        30: .line 1920
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  jdk/internal/jshell/tool/JShellTool.lambda$81(Ljdk/internal/jshell/tool/JShellTool$Command;Ljdk/internal/jshell/tool/JShellTool$Command;)I (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;Ljdk/internal/jshell/tool/JShellTool$Command;)I
            invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
        31: .line 1921
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$82(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/util/AbstractMap$SimpleEntry; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/util/AbstractMap$SimpleEntry;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        32: .line 1922
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        33: .line 1913
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        34: .line 1925
      StackMap locals: java.util.List
      StackMap stack:
            aload 9 /* toShow */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 39
            iload 5 /* inHelp */
            ifne 39
        35: .line 1926
            aload 8 /* result */
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 9 /* toShow */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.util.Map$Entry
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* shortDescription */
            ifeq 36
            ldc ".summary"
            goto 37
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List
      StackMap stack: java.util.List jdk.internal.jshell.tool.JShellTool java.lang.StringBuilder
        36: ldc ""
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List
      StackMap stack: java.util.List jdk.internal.jshell.tool.JShellTool java.lang.StringBuilder java.lang.String
        37: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        38: .line 1927
            goto 45
        39: .line 1928
      StackMap locals:
      StackMap stack:
            aload 9 /* toShow */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 44
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        40: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 10 /* e */
        start local 10 // java.util.Map$Entry e
        41: .line 1929
            aload 8 /* result */
            new java.lang.StringBuilder
            dup
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* shortDescription */
            ifeq 42
            ldc ".summary"
            goto 43
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List java.util.Map$Entry java.util.Iterator
      StackMap stack: java.util.List java.lang.StringBuilder jdk.internal.jshell.tool.JShellTool java.lang.StringBuilder
        42: ldc ""
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List java.util.Map$Entry java.util.Iterator
      StackMap stack: java.util.List java.lang.StringBuilder jdk.internal.jshell.tool.JShellTool java.lang.StringBuilder java.lang.String
        43: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // java.util.Map$Entry e
        44: .line 1928
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 40
        45: .line 1933
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.lang.String int int java.lang.String java.util.List java.util.List
      StackMap stack:
            aload 8 /* result */
            areturn
        end local 9 // java.util.List toShow
        end local 8 // java.util.List result
        end local 7 // java.lang.String prefix
        end local 6 // int space
        end local 5 // boolean inHelp
        end local 4 // java.lang.String stripped
        end local 3 // boolean shortDescription
        end local 2 // int cursor
        end local 1 // java.lang.String code
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   46     0              this  Ljdk/internal/jshell/tool/JShellTool;
            0   46     1              code  Ljava/lang/String;
            0   46     2            cursor  I
            0   46     3  shortDescription  Z
            2   46     4          stripped  Ljava/lang/String;
            5   46     5            inHelp  Z
            6   46     6             space  I
            9   46     7            prefix  Ljava/lang/String;
           10   46     8            result  Ljava/util/List<Ljava/lang/String;>;
           17   18     9            toShow  Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;
           21   22     9            toShow  Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;
           25   26     9            toShow  Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;
           34   46     9            toShow  Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;
           12   17    10     setSubcommand  Ljava/lang/String;
           41   44    10                 e  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/lang/String;IZ)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
                  Name  Flags
      code              
      cursor            
      shortDescription  

  void stop();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1938
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.stop:()V
         1: .line 1939
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  final boolean cmdSet(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1947
            ldc "/set"
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 1948
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            aload 2 /* cmd */
            aload 1 /* arg */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 3 /* at */
        start local 3 // jdk.internal.jshell.tool.ArgTokenizer at
         2: .line 1949
            aload 0 /* this */
            aload 2 /* cmd */
            aload 3 /* at */
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.subCommand:(Ljava/lang/String;Ljdk/internal/jshell/tool/ArgTokenizer;[Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* which */
        start local 4 // java.lang.String which
         3: .line 1950
            aload 4 /* which */
            ifnonnull 5
         4: .line 1951
            iconst_0
            ireturn
         5: .line 1953
      StackMap locals: java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String
      StackMap stack:
            aload 4 /* which */
            dup
            astore 5
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 9
          -1693144887: 6
          -1481378731: 7
          -1307827859: 8
          -1268779017: 9
           -979805852: 10
           -191501435: 11
              3357091: 12
            109757538: 13
           1774054948: 14
              default: 31
          }
      StackMap locals: java.lang.String
      StackMap stack:
         6: aload 5
            ldc "truncation"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 23
            goto 31
      StackMap locals:
      StackMap stack:
         7: aload 5
            ldc "_blank"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 31
      StackMap locals:
      StackMap stack:
         8: aload 5
            ldc "editor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 31
      StackMap locals:
      StackMap stack:
         9: aload 5
            ldc "format"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 22
            goto 31
      StackMap locals:
      StackMap stack:
        10: aload 5
            ldc "prompt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 28
            goto 31
      StackMap locals:
      StackMap stack:
        11: aload 5
            ldc "feedback"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 24
            goto 31
      StackMap locals:
      StackMap stack:
        12: aload 5
            ldc "mode"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
            goto 31
      StackMap locals:
      StackMap stack:
        13: aload 5
            ldc "start"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 31
      StackMap locals:
      StackMap stack:
        14: aload 5
            ldc "_retain"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            goto 31
        15: .line 1955
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.setting.to.retain.must.be.specified"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 1956
            iconst_0
            ireturn
        17: .line 1960
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$SetEditor
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$SetEditor.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool$SetEditor.set:()Z
            pop
        18: .line 1961
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        19: .line 1962
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            pop
        20: .line 1963
            aload 0 /* this */
            ldc "jshell.msg.set.show.mode.settings"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 1964
            iconst_1
            ireturn
        22: .line 1967
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setFormat:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        23: .line 1969
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setTruncation:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        24: .line 1971
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        25: .line 1973
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
        26: .line 1974
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$83(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
        27: .line 1973
            invokevirtual jdk.internal.jshell.tool.Feedback.setMode:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;Ljava/util/function/Consumer;)Z
            ireturn
        28: .line 1976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setPrompt:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        29: .line 1978
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$SetEditor
            dup
            aload 0 /* this */
            aload 3 /* at */
            invokespecial jdk.internal.jshell.tool.JShellTool$SetEditor.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/internal/jshell/tool/ArgTokenizer;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool$SetEditor.set:()Z
            ireturn
        30: .line 1980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setStart:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        31: .line 1982
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.arg"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* cmd */
            aastore
            dup
            iconst_1
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.val:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        32: .line 1983
            iconst_0
            ireturn
        end local 4 // java.lang.String which
        end local 3 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 2 // java.lang.String cmd
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   33     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   33     1    arg  Ljava/lang/String;
            1   33     2    cmd  Ljava/lang/String;
            2   33     3     at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   33     4  which  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   

  boolean setFeedback(jdk.internal.jshell.tool.MessageHandler, jdk.internal.jshell.tool.ArgTokenizer);
    descriptor: (Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.MessageHandler messageHandler
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         0: .line 1988
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 1 /* messageHandler */
            aload 2 /* at */
         1: .line 1989
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$84(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
         2: .line 1988
            invokevirtual jdk.internal.jshell.tool.Feedback.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;Ljava/util/function/Consumer;)Z
            ireturn
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // jdk.internal.jshell.tool.MessageHandler messageHandler
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1  messageHandler  Ljdk/internal/jshell/tool/MessageHandler;
            0    3     2              at  Ljdk/internal/jshell/tool/ArgTokenizer;
    MethodParameters:
                Name  Flags
      messageHandler  
      at              

  java.lang.String subCommand(java.lang.String, jdk.internal.jshell.tool.ArgTokenizer, java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljdk/internal/jshell/tool/ArgTokenizer;[Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String cmd
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        start local 3 // java.lang.String[] subs
         0: .line 1995
            aload 2 /* at */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-retain"
            aastore
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         1: .line 1996
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            astore 4 /* sub */
        start local 4 // java.lang.String sub
         2: .line 1997
            aload 4 /* sub */
            ifnonnull 7
         3: .line 1999
            aload 2 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 2000
            ldc "_retain"
            goto 6
         5: .line 2001
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "_blank"
         6: .line 1999
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
         7: .line 2003
      StackMap locals:
      StackMap stack:
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         8: .line 2004
            aload 4 /* sub */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$85(Ljava/lang/String;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         9: .line 2005
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$86(I)[Ljava/lang/String; (6)
                  (I)[Ljava/lang/String;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.String[]
        10: .line 2003
            astore 5 /* matches */
        start local 5 // java.lang.String[] matches
        11: .line 2006
            aload 5 /* matches */
            arraylength
            ifne 17
        12: .line 2008
            aload 0 /* this */
            ldc "jshell.err.arg"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* cmd */
            aastore
            dup
            iconst_1
            aload 4 /* sub */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        13: .line 2009
            aload 0 /* this */
            ldc "jshell.msg.use.one.of"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
        14: .line 2010
            ldc ", "
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            aastore
        15: .line 2009
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 2012
            aconst_null
            areturn
        17: .line 2014
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 5 /* matches */
            arraylength
            iconst_1
            if_icmple 23
        18: .line 2016
            aload 0 /* this */
            ldc "jshell.err.sub.ambiguous"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* cmd */
            aastore
            dup
            iconst_1
            aload 4 /* sub */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        19: .line 2017
            aload 0 /* this */
            ldc "jshell.msg.use.one.of"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* matches */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
        20: .line 2018
            ldc ", "
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            aastore
        21: .line 2017
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2020
            aconst_null
            areturn
        23: .line 2022
      StackMap locals:
      StackMap stack:
            aload 5 /* matches */
            iconst_0
            aaload
            areturn
        end local 5 // java.lang.String[] matches
        end local 4 // java.lang.String sub
        end local 3 // java.lang.String[] subs
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // java.lang.String cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   24     1      cmd  Ljava/lang/String;
            0   24     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            0   24     3     subs  [Ljava/lang/String;
            2   24     4      sub  Ljava/lang/String;
           11   24     5  matches  [Ljava/lang/String;
    MethodParameters:
      Name  Flags
      cmd   
      at    
      subs  

  boolean setStart(jdk.internal.jshell.tool.ArgTokenizer);
    descriptor: (Ljdk/internal/jshell/tool/ArgTokenizer;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.ArgTokenizer at
         0: .line 2192
            aload 1 /* at */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-default"
            aastore
            dup
            iconst_1
            ldc "-none"
            aastore
            dup
            iconst_2
            ldc "-retain"
            aastore
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         1: .line 2193
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fns */
        start local 2 // java.util.List fns
         2: .line 2194
            goto 4
         3: .line 2195
      StackMap locals: java.util.List
      StackMap stack:
            aload 2 /* fns */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.val:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 2194
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            ifnonnull 3
         5: .line 2197
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2198
            iconst_0
            ireturn
         7: .line 2200
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            ldc "-default"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            istore 3 /* defaultOption */
        start local 3 // boolean defaultOption
         8: .line 2201
            aload 1 /* at */
            ldc "-none"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            istore 4 /* noneOption */
        start local 4 // boolean noneOption
         9: .line 2202
            aload 1 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            istore 5 /* retainOption */
        start local 5 // boolean retainOption
        10: .line 2203
            aload 2 /* fns */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 11
            iconst_0
            goto 12
      StackMap locals: int int int
      StackMap stack:
        11: iconst_1
      StackMap locals:
      StackMap stack: int
        12: istore 6 /* hasFile */
        start local 6 // boolean hasFile
        13: .line 2205
            iload 3 /* defaultOption */
            ifeq 14
            iconst_1
            goto 15
      StackMap locals: int
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: iload 4 /* noneOption */
            ifeq 16
            iconst_1
            goto 17
      StackMap locals:
      StackMap stack: int
        16: iconst_0
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.ArgTokenizer java.util.List int int int int
      StackMap stack: int int
        17: iadd
            iload 6 /* hasFile */
            ifeq 18
            iconst_1
            goto 19
      StackMap locals:
      StackMap stack: int
        18: iconst_0
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.ArgTokenizer java.util.List int int int int
      StackMap stack: int int
        19: iadd
            istore 7 /* argCount */
        start local 7 // int argCount
        20: .line 2206
            iload 7 /* argCount */
            iconst_1
            if_icmple 23
        21: .line 2207
            aload 0 /* this */
            ldc "jshell.err.option.or.filename"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2208
            iconst_0
            ireturn
        23: .line 2210
      StackMap locals: int
      StackMap stack:
            iload 7 /* argCount */
            ifne 26
            iload 5 /* retainOption */
            ifne 26
        24: .line 2212
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        25: .line 2213
            iconst_1
            ireturn
        26: .line 2215
      StackMap locals:
      StackMap stack:
            iload 6 /* hasFile */
            ifeq 30
        27: .line 2216
            aload 0 /* this */
            aload 2 /* fns */
            ldc "/set start"
            aload 0 /* this */
            invokestatic jdk.internal.jshell.tool.Startup.fromFileList:(Ljava/util/List;Ljava/lang/String;Ljdk/internal/jshell/tool/MessageHandler;)Ljdk/internal/jshell/tool/Startup;
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        28: .line 2217
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            ifnonnull 35
        29: .line 2218
            iconst_0
            ireturn
        30: .line 2220
      StackMap locals:
      StackMap stack:
            iload 3 /* defaultOption */
            ifeq 33
        31: .line 2221
            aload 0 /* this */
            aload 0 /* this */
            invokestatic jdk.internal.jshell.tool.Startup.defaultStartup:(Ljdk/internal/jshell/tool/MessageHandler;)Ljdk/internal/jshell/tool/Startup;
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        32: .line 2222
            goto 35
      StackMap locals:
      StackMap stack:
        33: iload 4 /* noneOption */
            ifeq 35
        34: .line 2223
            aload 0 /* this */
            invokestatic jdk.internal.jshell.tool.Startup.noStartup:()Ljdk/internal/jshell/tool/Startup;
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        35: .line 2225
      StackMap locals:
      StackMap stack:
            iload 5 /* retainOption */
            ifeq 37
        36: .line 2227
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "STARTUP"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            invokevirtual jdk.internal.jshell.tool.Startup.storedForm:()Ljava/lang/String;
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.put:(Ljava/lang/String;Ljava/lang/String;)V
        37: .line 2229
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 7 // int argCount
        end local 6 // boolean hasFile
        end local 5 // boolean retainOption
        end local 4 // boolean noneOption
        end local 3 // boolean defaultOption
        end local 2 // java.util.List fns
        end local 1 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   38     0           this  Ljdk/internal/jshell/tool/JShellTool;
            0   38     1             at  Ljdk/internal/jshell/tool/ArgTokenizer;
            2   38     2            fns  Ljava/util/List<Ljava/lang/String;>;
            8   38     3  defaultOption  Z
            9   38     4     noneOption  Z
           10   38     5   retainOption  Z
           13   38     6        hasFile  Z
           20   38     7       argCount  I
    MethodParameters:
      Name  Flags
      at    

  void showSetStart();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2235
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2236
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "STARTUP"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* retained */
        start local 2 // java.lang.String retained
         2: .line 2237
            aload 2 /* retained */
            ifnull 14
         3: .line 2238
            aload 2 /* retained */
            aload 0 /* this */
            invokestatic jdk.internal.jshell.tool.Startup.unpack:(Ljava/lang/String;Ljdk/internal/jshell/tool/MessageHandler;)Ljdk/internal/jshell/tool/Startup;
            astore 3 /* retainedStart */
        start local 3 // jdk.internal.jshell.tool.Startup retainedStart
         4: .line 2239
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            aload 3 /* retainedStart */
            invokevirtual jdk.internal.jshell.tool.Startup.equals:(Ljava/lang/Object;)Z
            ifeq 5
            iconst_0
            goto 6
      StackMap locals: java.lang.StringBuilder java.lang.String jdk.internal.jshell.tool.Startup
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: istore 4 /* currentDifferent */
        start local 4 // boolean currentDifferent
         7: .line 2240
            aload 1 /* sb */
            aload 3 /* retainedStart */
            iconst_1
            invokevirtual jdk.internal.jshell.tool.Startup.show:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 2241
            iload 4 /* currentDifferent */
            ifeq 10
         9: .line 2242
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            iconst_0
            invokevirtual jdk.internal.jshell.tool.Startup.show:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 2244
      StackMap locals: int
      StackMap stack:
            aload 1 /* sb */
            aload 3 /* retainedStart */
            invokevirtual jdk.internal.jshell.tool.Startup.showDetail:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2245
            iload 4 /* currentDifferent */
            ifeq 16
        12: .line 2246
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            invokevirtual jdk.internal.jshell.tool.Startup.showDetail:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // boolean currentDifferent
        end local 3 // jdk.internal.jshell.tool.Startup retainedStart
        13: .line 2248
            goto 16
        14: .line 2249
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            iconst_0
            invokevirtual jdk.internal.jshell.tool.Startup.show:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 2250
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            invokevirtual jdk.internal.jshell.tool.Startup.showDetail:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 2252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        17: .line 2253
            return
        end local 2 // java.lang.String retained
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              this  Ljdk/internal/jshell/tool/JShellTool;
            1   18     1                sb  Ljava/lang/StringBuilder;
            2   18     2          retained  Ljava/lang/String;
            4   13     3     retainedStart  Ljdk/internal/jshell/tool/Startup;
            7   13     4  currentDifferent  Z

  boolean cmdDebug(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2256
            aload 1 /* arg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
         1: .line 2257
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.JShellTool
         2: iconst_1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack: jdk.internal.jshell.tool.JShellTool int
         3: putfield jdk.internal.jshell.tool.JShellTool.debug:Z
         4: .line 2258
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: jdk.jshell.JShell
         5: iconst_0
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack: jdk.jshell.JShell int
         6: invokestatic jdk.internal.jshell.debug.InternalDebugControl.setDebugFlags:(Ljdk/jshell/JShell;I)V
         7: .line 2259
            aload 0 /* this */
            ldc "Debugging %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 8
            ldc "on"
            goto 9
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.Object[] java.lang.Object[] int
         8: ldc "off"
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
         9: aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 2260
            goto 50
        11: .line 2261
      StackMap locals:
      StackMap stack:
            aload 1 /* arg */
            invokevirtual java.lang.String.toCharArray:()[C
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 48
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String top int int char[]
      StackMap stack:
        12: aload 5
            iload 3
            caload
            istore 2 /* ch */
        start local 2 // char ch
        13: .line 2262
            iload 2 /* ch */
            lookupswitch { // 9
                   48: 14
                   98: 39
                   99: 27
                  100: 30
                  101: 33
                  102: 24
                  103: 21
                  114: 18
                  119: 36
              default: 44
          }
        14: .line 2264
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int char[]
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        15: .line 2265
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        16: .line 2266
            aload 0 /* this */
            ldc "Debugging off"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        17: .line 2267
            goto 47
        18: .line 2269
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        19: .line 2270
            aload 0 /* this */
            ldc "REPL tool debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        20: .line 2271
            goto 47
        21: .line 2273
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            iconst_1
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        22: .line 2274
            aload 0 /* this */
            ldc "General debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        23: .line 2275
            goto 47
        24: .line 2277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            iconst_2
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        25: .line 2278
            aload 0 /* this */
            ldc "File manager debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 2279
            goto 47
        27: .line 2281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            iconst_4
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        28: .line 2282
            aload 0 /* this */
            ldc "Completion analysis debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        29: .line 2283
            goto 47
        30: .line 2285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            bipush 8
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        31: .line 2286
            aload 0 /* this */
            ldc "Dependency debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        32: .line 2287
            goto 47
        33: .line 2289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            bipush 16
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        34: .line 2290
            aload 0 /* this */
            ldc "Event debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        35: .line 2291
            goto 47
        36: .line 2293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            bipush 32
            ior
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        37: .line 2294
            aload 0 /* this */
            ldc "Wrap debugging on"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        38: .line 2295
            goto 47
        39: .line 2297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            ldc "RemoteVM Options: %s\nCompiler options: %s\n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        40: .line 2298
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.remoteVmOptions:()[Ljava/lang/String;
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            aastore
            dup
            iconst_1
        41: .line 2299
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.compilerOptions:()[Ljava/lang/String;
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            aastore
        42: .line 2297
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        43: .line 2300
            goto 47
        44: .line 2302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Unknown debugging option: %c"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* ch */
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        45: .line 2303
            aload 0 /* this */
            ldc "Use: 0 r g f c d e w b"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        46: .line 2304
            iconst_0
            ireturn
        end local 2 // char ch
        47: .line 2261
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String top int int char[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        48: iload 3
            iload 4
            if_icmplt 12
        49: .line 2307
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
            invokestatic jdk.internal.jshell.debug.InternalDebugControl.setDebugFlags:(Ljdk/jshell/JShell;I)V
        50: .line 2309
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   51     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   51     1   arg  Ljava/lang/String;
           13   47     2    ch  C
    MethodParameters:
      Name  Flags
      arg   

  private boolean cmdExit(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2313
            aload 1 /* arg */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 39
         1: .line 2314
            aload 0 /* this */
            ldc "Compiling exit: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 2315
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* arg */
            invokevirtual jdk.jshell.JShell.eval:(Ljava/lang/String;)Ljava/util/List;
            astore 2 /* events */
        start local 2 // java.util.List events
         3: .line 2316
            aload 2 /* events */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 38
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.jshell.SnippetEvent
            astore 3 /* e */
        start local 3 // jdk.jshell.SnippetEvent e
         5: .line 2318
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 38
         6: .line 2319
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 5 /* sn */
        start local 5 // jdk.jshell.Snippet sn
         7: .line 2322
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 5 /* sn */
            invokevirtual jdk.jshell.JShell.diagnostics:(Ljdk/jshell/Snippet;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            astore 6 /* diagnostics */
        start local 6 // java.util.List diagnostics
         8: .line 2323
            aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 7 /* source */
        start local 7 // java.lang.String source
         9: .line 2324
            aload 0 /* this */
            aload 7 /* source */
            aload 6 /* diagnostics */
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayDiagnostics:(Ljava/lang/String;Ljava/util/List;)V
        10: .line 2327
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 13
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            getstatic jdk.jshell.Snippet$Status.REJECTED:Ljdk/jshell/Snippet$Status;
            if_acmpeq 13
        11: .line 2328
            aload 0 /* this */
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Throwable;)Z
            ifeq 13
        12: .line 2330
            iconst_0
            ireturn
        13: .line 2334
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List jdk.jshell.SnippetEvent java.util.Iterator jdk.jshell.Snippet java.util.List java.lang.String
      StackMap stack:
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            getstatic jdk.jshell.Snippet$Status.VALID:Ljdk/jshell/Snippet$Status;
            if_acmpeq 15
        14: .line 2336
            iconst_0
            ireturn
        15: .line 2339
      StackMap locals:
      StackMap stack:
            aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.kind:()Ljdk/jshell/Snippet$Kind;
            getstatic jdk.jshell.Snippet$Kind.EXPRESSION:Ljdk/jshell/Snippet$Kind;
            if_acmpne 18
        16: .line 2340
            aload 5 /* sn */
            checkcast jdk.jshell.ExpressionSnippet
            invokevirtual jdk.jshell.ExpressionSnippet.typeName:()Ljava/lang/String;
            astore 8 /* typeName */
        start local 8 // java.lang.String typeName
        17: .line 2341
            goto 23
        end local 8 // java.lang.String typeName
      StackMap locals:
      StackMap stack:
        18: aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            getstatic jdk.jshell.Snippet$SubKind.TEMP_VAR_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            if_acmpne 21
        19: .line 2342
            aload 5 /* sn */
            checkcast jdk.jshell.VarSnippet
            invokevirtual jdk.jshell.VarSnippet.typeName:()Ljava/lang/String;
            astore 8 /* typeName */
        start local 8 // java.lang.String typeName
        20: .line 2343
            goto 23
        end local 8 // java.lang.String typeName
        21: .line 2345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.exit.not.expression"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2346
            iconst_0
            ireturn
        start local 8 // java.lang.String typeName
        23: .line 2348
      StackMap locals: java.lang.String
      StackMap stack:
            aload 8 /* typeName */
            dup
            astore 9
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 6
           -672261858: 24
               104431: 25
              2086184: 26
              3039496: 27
             79860828: 28
            109413500: 29
              default: 36
          }
      StackMap locals: java.lang.String
      StackMap stack:
        24: aload 9
            ldc "Integer"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
      StackMap locals:
      StackMap stack:
        25: aload 9
            ldc "int"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
      StackMap locals:
      StackMap stack:
        26: aload 9
            ldc "Byte"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
      StackMap locals:
      StackMap stack:
        27: aload 9
            ldc "byte"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
      StackMap locals:
      StackMap stack:
        28: aload 9
            ldc "Short"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
      StackMap locals:
      StackMap stack:
        29: aload 9
            ldc "short"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 36
        30: .line 2356
      StackMap locals:
      StackMap stack:
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 10 /* i */
        start local 10 // int i
        31: .line 2367
            aload 0 /* this */
            iload 10 /* i */
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        32: .line 2368
            goto 38
        end local 10 // int i
        33: .line 2369
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        34: .line 2371
            aload 0 /* this */
            ldc "jshell.err.exit.bad.value"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg */
            aastore
            dup
            iconst_1
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        35: .line 2372
            iconst_0
            ireturn
        36: .line 2376
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.exit.bad.type"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg */
            aastore
            dup
            iconst_1
            aload 8 /* typeName */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        37: .line 2377
            iconst_0
            ireturn
        end local 8 // java.lang.String typeName
        end local 7 // java.lang.String source
        end local 6 // java.util.List diagnostics
        end local 5 // jdk.jshell.Snippet sn
        end local 3 // jdk.jshell.SnippetEvent e
        38: .line 2316
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 2 // java.util.List events
        39: .line 2382
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        40: .line 2383
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        41: .line 2384
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ifne 44
        42: .line 2385
            aload 0 /* this */
            ldc "jshell.msg.goodbye"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        43: .line 2386
            goto 45
        44: .line 2387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.msg.goodbye.value"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        45: .line 2389
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   46     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0   46     1          arg  Ljava/lang/String;
            3   39     2       events  Ljava/util/List<Ljdk/jshell/SnippetEvent;>;
            5   38     3            e  Ljdk/jshell/SnippetEvent;
            7   38     5           sn  Ljdk/jshell/Snippet;
            8   38     6  diagnostics  Ljava/util/List<Ljdk/jshell/Diag;>;
            9   38     7       source  Ljava/lang/String;
           17   18     8     typeName  Ljava/lang/String;
           20   21     8     typeName  Ljava/lang/String;
           23   38     8     typeName  Ljava/lang/String;
           31   33    10            i  I
      Exception table:
        from    to  target  type
          30    32      33  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      arg   

  boolean cmdHelp(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2393
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/help"
            aload 1 /* arg */
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* at */
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         1: .line 2394
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            astore 3 /* subject */
        start local 3 // java.lang.String subject
         2: .line 2395
            aload 3 /* subject */
            ifnull 35
         3: .line 2398
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         4: .line 2399
            aload 3 /* subject */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$87(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         5: .line 2401
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$43(I)[Ljdk/internal/jshell/tool/JShellTool$Command; (6)
                  (I)[Ljdk/internal/jshell/tool/JShellTool$Command;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$Command[]
         6: .line 2398
            astore 4 /* matches */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
         7: .line 2402
            aload 4 /* matches */
            arraylength
            iconst_1
            if_icmpne 16
         8: .line 2403
            aload 4 /* matches */
            iconst_0
            aaload
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            astore 5 /* cmd */
        start local 5 // java.lang.String cmd
         9: .line 2404
            aload 5 /* cmd */
            ldc "/set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 2406
            aload 0 /* this */
            aload 5 /* cmd */
            aload 2 /* at */
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.subCommand:(Ljava/lang/String;Ljdk/internal/jshell/tool/ArgTokenizer;[Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* which */
        start local 6 // java.lang.String which
        11: .line 2407
            aload 6 /* which */
            ifnonnull 13
        12: .line 2408
            iconst_0
            ireturn
        13: .line 2410
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String jdk.internal.jshell.tool.JShellTool$Command[] java.lang.String java.lang.String
      StackMap stack:
            aload 6 /* which */
            ldc "_blank"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
        14: .line 2411
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "/set "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* which */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "help.set."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* which */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.printHelp:(Ljava/lang/String;Ljava/lang/String;)V
        15: .line 2412
            iconst_1
            ireturn
        end local 6 // java.lang.String which
        end local 5 // java.lang.String cmd
        16: .line 2416
      StackMap locals:
      StackMap stack:
            aload 4 /* matches */
            arraylength
            ifle 23
        17: .line 2417
            aload 4 /* matches */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 21
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String jdk.internal.jshell.tool.JShellTool$Command[] top int int jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
        18: aload 8
            iload 6
            aaload
            astore 5 /* c */
        start local 5 // jdk.internal.jshell.tool.JShellTool$Command c
        19: .line 2418
            aload 0 /* this */
            aload 5 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 5 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.printHelp:(Ljava/lang/String;Ljava/lang/String;)V
        end local 5 // jdk.internal.jshell.tool.JShellTool$Command c
        20: .line 2417
            iinc 6 1
      StackMap locals:
      StackMap stack:
        21: iload 6
            iload 7
            if_icmplt 18
        22: .line 2420
            iconst_1
            ireturn
        23: .line 2424
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
        24: .line 2425
            aload 3 /* subject */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$89(Ljava/lang/String;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        25: .line 2426
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$86(I)[Ljava/lang/String; (6)
                  (I)[Ljava/lang/String;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.String[]
        26: .line 2424
            astore 5 /* subs */
        start local 5 // java.lang.String[] subs
        27: .line 2427
            aload 5 /* subs */
            arraylength
            ifle 34
        28: .line 2428
            aload 5 /* subs */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 32
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String jdk.internal.jshell.tool.JShellTool$Command[] java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        29: aload 9
            iload 7
            aaload
            astore 6 /* sub */
        start local 6 // java.lang.String sub
        30: .line 2429
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "/set "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* sub */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "help.set."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* sub */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.printHelp:(Ljava/lang/String;Ljava/lang/String;)V
        end local 6 // java.lang.String sub
        31: .line 2428
            iinc 7 1
      StackMap locals:
      StackMap stack:
        32: iload 7
            iload 8
            if_icmplt 29
        33: .line 2431
            iconst_1
            ireturn
        34: .line 2433
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String jdk.internal.jshell.tool.JShellTool$Command[] java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.help.arg"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 5 // java.lang.String[] subs
        end local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
        35: .line 2436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.msg.help.begin"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        36: .line 2437
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        37: .line 2438
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$91(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        38: .line 2439
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$92(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        39: .line 2440
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$93(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        40: .line 2437
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        41: .line 2442
            aload 0 /* this */
            ldc "jshell.msg.help.subject"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        42: .line 2443
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        43: .line 2444
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$94(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        44: .line 2445
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$95(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        45: .line 2446
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$96(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        46: .line 2443
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        47: .line 2448
            iconst_1
            ireturn
        end local 3 // java.lang.String subject
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   48     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   48     1      arg  Ljava/lang/String;
            1   48     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            2   48     3  subject  Ljava/lang/String;
            7   35     4  matches  [Ljdk/internal/jshell/tool/JShellTool$Command;
            9   16     5      cmd  Ljava/lang/String;
           11   16     6    which  Ljava/lang/String;
           19   20     5        c  Ljdk/internal/jshell/tool/JShellTool$Command;
           27   35     5     subs  [Ljava/lang/String;
           30   31     6      sub  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   

  private void printHelp(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String key
         0: .line 2452
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         1: .line 2453
            new java.lang.StringBuilder
            dup
            ldc "%"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 72
            iload 3 /* len */
            iadd
            iconst_2
            idiv
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "s"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* centered */
        start local 4 // java.lang.String centered
         2: .line 2454
            aload 0 /* this */
            ldc ""
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 2455
            aload 0 /* this */
            aload 4 /* centered */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 2456
            aload 0 /* this */
            aload 4 /* centered */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$97()Ljava/lang/String; (6)
                  ()Ljava/lang/String;
            invokestatic java.util.stream.Stream.generate:(Ljava/util/function/Supplier;)Ljava/util/stream/Stream;
            iload 3 /* len */
            i2l
            invokeinterface java.util.stream.Stream.limit:(J)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.joining:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 2457
            aload 0 /* this */
            ldc ""
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 2458
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
         7: .line 2459
            return
        end local 4 // java.lang.String centered
        end local 3 // int len
        end local 2 // java.lang.String key
        end local 1 // java.lang.String name
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0    8     1      name  Ljava/lang/String;
            0    8     2       key  Ljava/lang/String;
            1    8     3       len  I
            2    8     4  centered  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  
      key   

  private boolean cmdHistory(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawArgs
         0: .line 2462
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/history"
            aload 1 /* rawArgs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* at */
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         1: .line 2463
            aload 2 /* at */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2464
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 4
         3: .line 2465
            iconst_0
            ireturn
         4: .line 2467
      StackMap locals: jdk.internal.jshell.tool.ArgTokenizer
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         5: .line 2468
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            aload 2 /* at */
            ldc "-all"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 6
            iconst_0
            goto 7
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.IOContext
         6: iconst_1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer
      StackMap stack: jdk.internal.jshell.tool.IOContext int
         7: invokevirtual jdk.internal.jshell.tool.IOContext.history:(Z)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 10
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer top java.util.Iterator
      StackMap stack:
         8: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* s */
        start local 3 // java.lang.String s
         9: .line 2470
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            ldc "%s\n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* s */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 3 // java.lang.String s
        10: .line 2468
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 2472
            iconst_1
            ireturn
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // java.lang.String rawArgs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   12     1  rawArgs  Ljava/lang/String;
            1   12     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            9   10     3        s  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      rawArgs  

  private static <T extends jdk.jshell.Snippet> java.util.stream.Stream<T> nonEmptyStream(java.util.function.Supplier<java.util.stream.Stream<T>>, jdk.internal.jshell.tool.JShellTool$SnippetPredicate<T>[]);
    descriptor: (Ljava/util/function/Supplier;[Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;)Ljava/util/stream/Stream;
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // java.util.function.Supplier supplier
        start local 1 // jdk.internal.jshell.tool.JShellTool$SnippetPredicate[] filters
         0: .line 2491
            aload 1 /* filters */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: java.util.function.Supplier jdk.internal.jshell.tool.JShellTool$SnippetPredicate[] top int int jdk.internal.jshell.tool.JShellTool$SnippetPredicate[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* filt */
        start local 2 // jdk.internal.jshell.tool.JShellTool$SnippetPredicate filt
         2: .line 2492
            aload 0 /* supplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            aload 2 /* filt */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.iterator:()Ljava/util/Iterator;
            astore 6 /* iterator */
        start local 6 // java.util.Iterator iterator
         3: .line 2493
            aload 6 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 5
         4: .line 2494
            aload 6 /* iterator */
            iconst_0
            invokestatic java.util.Spliterators.spliteratorUnknownSize:(Ljava/util/Iterator;I)Ljava/util/Spliterator;
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
        end local 6 // java.util.Iterator iterator
        end local 2 // jdk.internal.jshell.tool.JShellTool$SnippetPredicate filt
         5: .line 2491
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 1
         7: .line 2497
            aconst_null
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$SnippetPredicate[] filters
        end local 0 // java.util.function.Supplier supplier
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0  supplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0    8     1   filters  [Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;
            2    5     2      filt  Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate<TT;>;
            3    5     6  iterator  Ljava/util/Iterator<TT;>;
    Signature: <T:Ljdk/jshell/Snippet;>(Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;[Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate<TT;>;)Ljava/util/stream/Stream<TT;>;
    RuntimeVisibleAnnotations: 
      java.lang.SafeVarargs()
    MethodParameters:
          Name  Flags
      supplier  
      filters   

  private boolean inStartUp(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 2501
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.mapSnippet:Ljava/util/Map;
            aload 1 /* sn */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$SnippetInfo
            getfield jdk.internal.jshell.tool.JShellTool$SnippetInfo.space:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1    sn  Ljdk/jshell/Snippet;
    MethodParameters:
      Name  Flags
      sn    

  private boolean isActive(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 2505
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.status:(Ljdk/jshell/Snippet;)Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ireturn
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    sn  Ljdk/jshell/Snippet;
    MethodParameters:
      Name  Flags
      sn    

  private boolean mainActive(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 2509
            aload 0 /* this */
            aload 1 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool.inStartUp:(Ljdk/jshell/Snippet;)Z
            ifne 1
            aload 0 /* this */
            aload 1 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isActive:(Ljdk/jshell/Snippet;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1    sn  Ljdk/jshell/Snippet;
    MethodParameters:
      Name  Flags
      sn    

  private boolean matchingDeclaration(jdk.jshell.Snippet, java.lang.String);
    descriptor: (Ljdk/jshell/Snippet;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
        start local 2 // java.lang.String name
         0: .line 2513
            aload 1 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         1: .line 2514
            aload 1 /* sn */
            checkcast jdk.jshell.DeclarationSnippet
            invokevirtual jdk.jshell.DeclarationSnippet.name:()Ljava/lang/String;
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 2513
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // java.lang.String name
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1    sn  Ljdk/jshell/Snippet;
            0    4     2  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      sn    
      name  

  private <T extends jdk.jshell.Snippet> java.util.stream.Stream<T> argsOptionsToSnippets(java.util.function.Supplier<java.util.stream.Stream<T>>, java.util.function.Predicate<jdk.jshell.Snippet>, java.lang.String, java.lang.String);
    descriptor: (Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.function.Supplier snippetSupplier
        start local 2 // java.util.function.Predicate defFilter
        start local 3 // java.lang.String rawargs
        start local 4 // java.lang.String cmd
         0: .line 2529
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            aload 4 /* cmd */
            aload 3 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 5 /* at */
        start local 5 // jdk.internal.jshell.tool.ArgTokenizer at
         1: .line 2530
            aload 5 /* at */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            dup
            iconst_1
            ldc "-start"
            aastore
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2531
            aload 0 /* this */
            aload 1 /* snippetSupplier */
            aload 2 /* defFilter */
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljdk/internal/jshell/tool/ArgTokenizer;)Ljava/util/stream/Stream;
            areturn
        end local 5 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 4 // java.lang.String cmd
        end local 3 // java.lang.String rawargs
        end local 2 // java.util.function.Predicate defFilter
        end local 1 // java.util.function.Supplier snippetSupplier
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0    3     1  snippetSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0    3     2        defFilter  Ljava/util/function/Predicate<Ljdk/jshell/Snippet;>;
            0    3     3          rawargs  Ljava/lang/String;
            0    3     4              cmd  Ljava/lang/String;
            1    3     5               at  Ljdk/internal/jshell/tool/ArgTokenizer;
    Signature: <T:Ljdk/jshell/Snippet;>(Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;Ljava/util/function/Predicate<Ljdk/jshell/Snippet;>;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
                 Name  Flags
      snippetSupplier  
      defFilter        
      rawargs          
      cmd              

  private <T extends jdk.jshell.Snippet> java.util.stream.Stream<T> argsOptionsToSnippets(java.util.function.Supplier<java.util.stream.Stream<T>>, java.util.function.Predicate<jdk.jshell.Snippet>, jdk.internal.jshell.tool.ArgTokenizer);
    descriptor: (Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljdk/internal/jshell/tool/ArgTokenizer;)Ljava/util/stream/Stream;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.function.Supplier snippetSupplier
        start local 2 // java.util.function.Predicate defFilter
        start local 3 // jdk.internal.jshell.tool.ArgTokenizer at
         0: .line 2545
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* args */
        start local 4 // java.util.List args
         1: .line 2547
            goto 3
        start local 5 // java.lang.String s
         2: .line 2548
      StackMap locals: java.util.List java.lang.String
      StackMap stack:
            aload 4 /* args */
            aload 5 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String s
         3: .line 2547
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            dup
            astore 5 /* s */
        start local 5 // java.lang.String s
         4: ifnonnull 2
         5: .line 2550
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2551
            aconst_null
            areturn
         7: .line 2553
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            ifle 10
            aload 4 /* args */
            invokeinterface java.util.List.size:()I
            ifle 10
         8: .line 2554
            aload 0 /* this */
            ldc "jshell.err.may.not.specify.options.and.snippets"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 2555
            aconst_null
            areturn
        10: .line 2557
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 13
        11: .line 2558
            aload 0 /* this */
            ldc "jshell.err.conflicting.options"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 2559
            aconst_null
            areturn
        13: .line 2561
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            ldc "-all"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.isAllowedOption:(Ljava/lang/String;)Z
            ifeq 15
            aload 3 /* at */
            ldc "-all"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 15
        14: .line 2563
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            areturn
        15: .line 2565
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            ldc "-start"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.isAllowedOption:(Ljava/lang/String;)Z
            ifeq 19
            aload 3 /* at */
            ldc "-start"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 19
        16: .line 2567
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        17: .line 2568
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.inStartUp(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        18: .line 2567
            areturn
        19: .line 2570
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 23
        20: .line 2572
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        21: .line 2573
            aload 2 /* defFilter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 2572
            areturn
        23: .line 2575
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$ArgToSnippets
            dup
            aload 0 /* this */
            aload 1 /* snippetSupplier */
            invokespecial jdk.internal.jshell.tool.JShellTool$ArgToSnippets.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/util/function/Supplier;)V
            aload 4 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool$ArgToSnippets.argsToSnippets:(Ljava/util/List;)Ljava/util/stream/Stream;
            areturn
        end local 5 // java.lang.String s
        end local 4 // java.util.List args
        end local 3 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 2 // java.util.function.Predicate defFilter
        end local 1 // java.util.function.Supplier snippetSupplier
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   24     1  snippetSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0   24     2        defFilter  Ljava/util/function/Predicate<Ljdk/jshell/Snippet;>;
            0   24     3               at  Ljdk/internal/jshell/tool/ArgTokenizer;
            1   24     4             args  Ljava/util/List<Ljava/lang/String;>;
            2    3     5                s  Ljava/lang/String;
            4   24     5                s  Ljava/lang/String;
    Signature: <T:Ljdk/jshell/Snippet;>(Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;Ljava/util/function/Predicate<Ljdk/jshell/Snippet;>;Ljdk/internal/jshell/tool/ArgTokenizer;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
                 Name  Flags
      snippetSupplier  
      defFilter        
      at               

  private boolean cmdDrop(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 2799
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/drop"
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* at */
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         1: .line 2800
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2801
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* args */
        start local 3 // java.util.List args
         3: .line 2803
            goto 5
        start local 4 // java.lang.String s
         4: .line 2804
      StackMap locals: jdk.internal.jshell.tool.ArgTokenizer java.util.List java.lang.String
      StackMap stack:
            aload 3 /* args */
            aload 4 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.String s
         5: .line 2803
      StackMap locals:
      StackMap stack:
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            dup
            astore 4 /* s */
        start local 4 // java.lang.String s
         6: ifnonnull 4
         7: .line 2806
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2807
            iconst_0
            ireturn
         9: .line 2809
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 12
        10: .line 2810
            aload 0 /* this */
            ldc "jshell.err.drop.arg"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        11: .line 2811
            iconst_0
            ireturn
        12: .line 2813
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$ArgToSnippets
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.dropableSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
            invokespecial jdk.internal.jshell.tool.JShellTool$ArgToSnippets.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/util/function/Supplier;)V
            aload 3 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool$ArgToSnippets.argsToSnippets:(Ljava/util/List;)Ljava/util/stream/Stream;
            astore 5 /* stream */
        start local 5 // java.util.stream.Stream stream
        13: .line 2814
            aload 5 /* stream */
            ifnonnull 16
        14: .line 2816
            aload 0 /* this */
            ldc "jshell.msg.see.classes.etc"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        15: .line 2817
            iconst_0
            ireturn
        16: .line 2819
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            aload 5 /* stream */
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$100(Ljdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        17: .line 2820
            iconst_1
            ireturn
        end local 5 // java.util.stream.Stream stream
        end local 4 // java.lang.String s
        end local 3 // java.util.List args
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   18     1  rawargs  Ljava/lang/String;
            1   18     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   18     3     args  Ljava/util/List<Ljava/lang/String;>;
            4    5     4        s  Ljava/lang/String;
            6   18     4        s  Ljava/lang/String;
           13   18     5   stream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
    MethodParameters:
         Name  Flags
      rawargs  

  private boolean cmdEdit(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=12, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2824
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic get(Ljdk/jshell/JShell;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/jshell/JShell.snippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
         1: .line 2825
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.mainActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 1 /* arg */
            ldc "/edit"
         2: .line 2824
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 2 /* stream */
        start local 2 // java.util.stream.Stream stream
         3: .line 2826
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2827
            iconst_0
            ireturn
         5: .line 2829
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 5 /* srcSet */
        start local 5 // java.util.Set srcSet
         6: .line 2830
            aload 2 /* stream */
            aload 0 /* this */
            aload 5 /* srcSet */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$104(Ljava/util/Set;Ljdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         7: .line 2859
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2860
            aload 5 /* srcSet */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 12
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.stream.Stream top top java.util.Set java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         9: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* s */
        start local 7 // java.lang.String s
        10: .line 2861
            aload 6 /* sb */
            aload 7 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2862
            aload 6 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String s
        12: .line 2860
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 2864
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* src */
        start local 7 // java.lang.String src
        14: .line 2865
            new jdk.internal.jshell.tool.JShellTool$SaveHandler
            dup
            aload 0 /* this */
            aload 7 /* src */
            aload 5 /* srcSet */
            invokespecial jdk.internal.jshell.tool.JShellTool$SaveHandler.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;Ljava/util/Set;)V
            astore 8 /* saveHandler */
        start local 8 // java.util.function.Consumer saveHandler
        15: .line 2866
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$105(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            astore 9 /* errorHandler */
        start local 9 // java.util.function.Consumer errorHandler
        16: .line 2867
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            getstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            if_acmpne 18
        17: .line 2868
            aload 0 /* this */
            aload 7 /* src */
            aload 8 /* saveHandler */
            aload 9 /* errorHandler */
            invokevirtual jdk.internal.jshell.tool.JShellTool.builtInEdit:(Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)Z
            ireturn
        18: .line 2873
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.stream.Stream top top java.util.Set java.lang.StringBuilder java.lang.String java.util.function.Consumer java.util.function.Consumer
      StackMap stack:
            iconst_1
            anewarray java.lang.String
            astore 10 /* buffer */
        start local 10 // java.lang.String[] buffer
        19: .line 2874
            aload 0 /* this */
            aload 10 /* buffer */
            aload 8 /* saveHandler */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;[Ljava/lang/String;Ljava/util/function/Consumer;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$106([Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            astore 11 /* extSaveHandler */
        start local 11 // java.util.function.Consumer extSaveHandler
        20: .line 2881
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            getfield jdk.internal.jshell.tool.JShellTool$EditorSetting.cmd:[Ljava/lang/String;
            aload 7 /* src */
        21: .line 2882
            aload 9 /* errorHandler */
            aload 11 /* extSaveHandler */
        22: .line 2883
            aload 0 /* this */
            invokedynamic run(Ljdk/internal/jshell/tool/JShellTool;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  jdk/internal/jshell/tool/JShellTool.lambda$107()V (7)
                  ()V
        23: .line 2884
            aload 0 /* this */
            invokedynamic run(Ljdk/internal/jshell/tool/JShellTool;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  jdk/internal/jshell/tool/JShellTool.lambda$108()V (7)
                  ()V
        24: .line 2885
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            getfield jdk.internal.jshell.tool.JShellTool$EditorSetting.wait:Z
        25: .line 2886
            aload 0 /* this */
            invokedynamic run(Ljdk/internal/jshell/tool/JShellTool;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  jdk/internal/jshell/tool/JShellTool.lambda$109()V (7)
                  ()V
        26: .line 2881
            invokestatic jdk.internal.editor.external.ExternalEditor.edit:([Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/lang/Runnable;Ljava/lang/Runnable;ZLjava/lang/Runnable;)V
        27: .line 2887
            aload 10 /* buffer */
            iconst_0
            aaload
            ifnull 29
        28: .line 2888
            aload 8 /* saveHandler */
            aload 10 /* buffer */
            iconst_0
            aaload
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
        end local 11 // java.util.function.Consumer extSaveHandler
        end local 10 // java.lang.String[] buffer
        29: .line 2891
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 9 // java.util.function.Consumer errorHandler
        end local 8 // java.util.function.Consumer saveHandler
        end local 7 // java.lang.String src
        end local 6 // java.lang.StringBuilder sb
        end local 5 // java.util.Set srcSet
        end local 2 // java.util.stream.Stream stream
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   30     0            this  Ljdk/internal/jshell/tool/JShellTool;
            0   30     1             arg  Ljava/lang/String;
            3   30     2          stream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
            6   30     5          srcSet  Ljava/util/Set<Ljava/lang/String;>;
            8   30     6              sb  Ljava/lang/StringBuilder;
           10   12     7               s  Ljava/lang/String;
           14   30     7             src  Ljava/lang/String;
           15   30     8     saveHandler  Ljava/util/function/Consumer<Ljava/lang/String;>;
           16   30     9    errorHandler  Ljava/util/function/Consumer<Ljava/lang/String;>;
           19   29    10          buffer  [Ljava/lang/String;
           20   29    11  extSaveHandler  Ljava/util/function/Consumer<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      arg   

  private boolean builtInEdit(java.lang.String, java.util.function.Consumer<java.lang.String>, java.util.function.Consumer<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String initialText
        start local 2 // java.util.function.Consumer saveHandler
        start local 3 // java.util.function.Consumer errorHandler
         0: .line 2899
            ldc Ljdk/internal/editor/spi/BuildInEditorProvider;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         1: .line 2898
            astore 4 /* sl */
        start local 4 // java.util.ServiceLoader sl
         2: .line 2901
            aconst_null
            astore 5 /* provider */
        start local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
         3: .line 2902
            aload 4 /* sl */
            invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
            astore 7
            goto 7
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.function.Consumer java.util.function.Consumer java.util.ServiceLoader jdk.internal.editor.spi.BuildInEditorProvider top java.util.Iterator
      StackMap stack:
         4: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.internal.editor.spi.BuildInEditorProvider
            astore 6 /* p */
        start local 6 // jdk.internal.editor.spi.BuildInEditorProvider p
         5: .line 2903
            aload 5 /* provider */
            ifnull 6
            aload 6 /* p */
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.rank:()I
            aload 5 /* provider */
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.rank:()I
            if_icmple 7
         6: .line 2904
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.function.Consumer java.util.function.Consumer java.util.ServiceLoader jdk.internal.editor.spi.BuildInEditorProvider jdk.internal.editor.spi.BuildInEditorProvider java.util.Iterator
      StackMap stack:
            aload 6 /* p */
            astore 5 /* provider */
        end local 6 // jdk.internal.editor.spi.BuildInEditorProvider p
         7: .line 2902
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.function.Consumer java.util.function.Consumer java.util.ServiceLoader jdk.internal.editor.spi.BuildInEditorProvider top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 2907
            aload 5 /* provider */
            ifnull 13
         9: .line 2908
            aload 5 /* provider */
            aload 0 /* this */
            ldc "jshell.label.editpad"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
        10: .line 2909
            aload 1 /* initialText */
            aload 2 /* saveHandler */
            aload 3 /* errorHandler */
        11: .line 2908
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.edit:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V
        12: .line 2910
            iconst_1
            ireturn
        13: .line 2912
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.function.Consumer java.util.function.Consumer java.util.ServiceLoader jdk.internal.editor.spi.BuildInEditorProvider
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.no.builtin.editor"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
        end local 4 // java.util.ServiceLoader sl
        14: .line 2914
            goto 17
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.function.Consumer java.util.function.Consumer
      StackMap stack: java.lang.RuntimeException
        15: astore 4 /* ex */
        start local 4 // java.lang.RuntimeException ex
        16: .line 2915
            aload 0 /* this */
            ldc "jshell.err.cant.launch.editor"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* ex */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 4 // java.lang.RuntimeException ex
        17: .line 2917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.msg.try.set.editor"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        18: .line 2918
            iconst_0
            ireturn
        end local 3 // java.util.function.Consumer errorHandler
        end local 2 // java.util.function.Consumer saveHandler
        end local 1 // java.lang.String initialText
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Ljdk/internal/jshell/tool/JShellTool;
            0   19     1   initialText  Ljava/lang/String;
            0   19     2   saveHandler  Ljava/util/function/Consumer<Ljava/lang/String;>;
            0   19     3  errorHandler  Ljava/util/function/Consumer<Ljava/lang/String;>;
            2   14     4            sl  Ljava/util/ServiceLoader<Ljdk/internal/editor/spi/BuildInEditorProvider;>;
            3   14     5      provider  Ljdk/internal/editor/spi/BuildInEditorProvider;
            5    7     6             p  Ljdk/internal/editor/spi/BuildInEditorProvider;
           16   17     4            ex  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           0    12      15  Class java.lang.RuntimeException
          13    14      15  Class java.lang.RuntimeException
    Signature: (Ljava/lang/String;Ljava/util/function/Consumer<Ljava/lang/String;>;Ljava/util/function/Consumer<Ljava/lang/String;>;)Z
    MethodParameters:
              Name  Flags
      initialText   
      saveHandler   
      errorHandler  

  private boolean cmdList(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2977
            aload 1 /* arg */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmplt 2
            ldc "-history"
            aload 1 /* arg */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 2978
            aload 0 /* this */
            ldc ""
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:(Ljava/lang/String;)Z
            ireturn
         2: .line 2980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic get(Ljdk/jshell/JShell;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/jshell/JShell.snippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
         3: .line 2981
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.mainActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 1 /* arg */
            ldc "/list"
         4: .line 2980
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 2 /* stream */
        start local 2 // java.util.stream.Stream stream
         5: .line 2982
            aload 2 /* stream */
            ifnonnull 7
         6: .line 2983
            iconst_0
            ireturn
         7: .line 2987
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            iconst_1
            newarray 4
            astore 5 /* hasOutput */
        start local 5 // boolean[] hasOutput
         8: .line 2988
            aload 2 /* stream */
            aload 0 /* this */
            aload 5 /* hasOutput */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;[Z)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$112([ZLjdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         9: .line 2995
            iconst_1
            ireturn
        end local 5 // boolean[] hasOutput
        end local 2 // java.util.stream.Stream stream
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   10     1        arg  Ljava/lang/String;
            5   10     2     stream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
            8   10     5  hasOutput  [Z
    MethodParameters:
      Name  Flags
      arg   

  private boolean cmdOpen(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String filename
         0: .line 2999
            aload 0 /* this */
            aload 1 /* filename */
            ldc "/open"
            invokevirtual jdk.internal.jshell.tool.JShellTool.runFile:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String filename
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  private boolean runFile(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String filename
        start local 2 // java.lang.String context
         0: .line 3003
            aload 1 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 45
         1: .line 3006
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
            ifne 5
            aload 1 /* filename */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         2: .line 3008
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         3: .line 3009
            new java.util.Scanner
            dup
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
            invokespecial java.util.Scanner.<init>:(Ljava/io/InputStream;)V
            astore 3 /* scanner */
        start local 3 // java.util.Scanner scanner
         4: .line 3010
            goto 29
        end local 3 // java.util.Scanner scanner
         5: .line 3011
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* path */
        start local 4 // java.nio.file.Path path
         6: .line 3012
            aconst_null
            astore 5 /* url */
        start local 5 // java.net.URL url
         7: .line 3015
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 4 /* path */
         8: .line 3016
            goto 16
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String top java.nio.file.Path java.net.URL
      StackMap stack: java.nio.file.InvalidPathException
         9: pop
        10: .line 3018
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        11: .line 3019
            aload 5 /* url */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            ldc "file"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 16
        12: .line 3020
            aload 5 /* url */
            invokevirtual java.net.URL.toURI:()Ljava/net/URI;
            invokestatic java.nio.file.Paths.get:(Ljava/net/URI;)Ljava/nio/file/Path;
            astore 4 /* path */
        13: .line 3022
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        14: pop
        15: .line 3023
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 3026
      StackMap locals:
      StackMap stack:
            aload 4 /* path */
            ifnull 19
            aload 4 /* path */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 19
        17: .line 3027
            new java.util.Scanner
            dup
            new java.io.FileReader
            dup
            aload 4 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
            invokespecial java.util.Scanner.<init>:(Ljava/lang/Readable;)V
            astore 3 /* scanner */
        start local 3 // java.util.Scanner scanner
        18: .line 3028
            goto 29
        end local 3 // java.util.Scanner scanner
      StackMap locals:
      StackMap stack:
        19: aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.getResource:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 6 /* resource */
        start local 6 // java.lang.String resource
        20: ifnull 23
        21: .line 3029
            new java.util.Scanner
            dup
            new java.io.StringReader
            dup
            aload 6 /* resource */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            invokespecial java.util.Scanner.<init>:(Ljava/lang/Readable;)V
            astore 3 /* scanner */
        start local 3 // java.util.Scanner scanner
        22: .line 3030
            goto 29
        end local 3 // java.util.Scanner scanner
        23: .line 3031
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* url */
            ifnonnull 28
        24: .line 3033
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        25: .line 3034
            goto 28
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
        26: pop
        27: .line 3035
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 3038
      StackMap locals:
      StackMap stack:
            new java.util.Scanner
            dup
            aload 5 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            invokespecial java.util.Scanner.<init>:(Ljava/io/InputStream;)V
            astore 3 /* scanner */
        end local 6 // java.lang.String resource
        end local 5 // java.net.URL url
        end local 4 // java.nio.file.Path path
        start local 3 // java.util.Scanner scanner
        29: .line 3041
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.util.Scanner
      StackMap stack:
            aconst_null
            astore 4
            aconst_null
            astore 5
        30: new jdk.internal.jshell.tool.ScannerIOContext
            dup
            aload 3 /* scanner */
            invokespecial jdk.internal.jshell.tool.ScannerIOContext.<init>:(Ljava/util/Scanner;)V
            astore 6 /* scannerIOContext */
        start local 6 // jdk.internal.jshell.tool.ScannerIOContext scannerIOContext
        31: .line 3042
            aload 0 /* this */
            aload 6 /* scannerIOContext */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        32: .line 3043
            aload 6 /* scannerIOContext */
            ifnull 38
            aload 6 /* scannerIOContext */
            invokevirtual jdk.internal.jshell.tool.ScannerIOContext.close:()V
            goto 38
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.util.Scanner java.lang.Throwable java.lang.Throwable jdk.internal.jshell.tool.ScannerIOContext
      StackMap stack: java.lang.Throwable
        33: astore 4
            aload 6 /* scannerIOContext */
            ifnull 34
            aload 6 /* scannerIOContext */
            invokevirtual jdk.internal.jshell.tool.ScannerIOContext.close:()V
        end local 6 // jdk.internal.jshell.tool.ScannerIOContext scannerIOContext
      StackMap locals:
      StackMap stack:
        34: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 5
            aload 4
            ifnonnull 36
            aload 5
            astore 4
            goto 37
      StackMap locals:
      StackMap stack:
        36: aload 4
            aload 5
            if_acmpeq 37
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        37: aload 4
            athrow
        38: .line 3044
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.util.Scanner scanner
        39: .line 3045
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String
      StackMap stack: java.io.FileNotFoundException
            astore 3 /* e */
        start local 3 // java.io.FileNotFoundException e
        40: .line 3046
            aload 0 /* this */
            ldc "jshell.err.file.not.found"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* context */
            aastore
            dup
            iconst_1
            aload 1 /* filename */
            aastore
            dup
            iconst_2
            aload 3 /* e */
            invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 3 // java.io.FileNotFoundException e
        41: goto 46
        42: .line 3047
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        43: .line 3048
            aload 0 /* this */
            ldc "jshell.err.file.exception"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* context */
            aastore
            dup
            iconst_1
            aload 1 /* filename */
            aastore
            dup
            iconst_2
            aload 3 /* e */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 3 // java.lang.Exception e
        44: .line 3050
            goto 46
        45: .line 3051
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.file.filename"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* context */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        46: .line 3053
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.String context
        end local 1 // java.lang.String filename
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   47     0              this  Ljdk/internal/jshell/tool/JShellTool;
            0   47     1          filename  Ljava/lang/String;
            0   47     2           context  Ljava/lang/String;
            4    5     3           scanner  Ljava/util/Scanner;
           18   19     3           scanner  Ljava/util/Scanner;
           22   23     3           scanner  Ljava/util/Scanner;
           29   39     3           scanner  Ljava/util/Scanner;
            6   29     4              path  Ljava/nio/file/Path;
            7   29     5               url  Ljava/net/URL;
           20   29     6          resource  Ljava/lang/String;
           31   34     6  scannerIOContext  Ljdk/internal/jshell/tool/ScannerIOContext;
           40   41     3                 e  Ljava/io/FileNotFoundException;
           43   44     3                 e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           7     8       9  Class java.nio.file.InvalidPathException
          10    13      14  Class java.net.MalformedURLException
          10    13      14  Class java.net.URISyntaxException
          24    25      26  Class java.net.MalformedURLException
          31    32      33  any
          30    35      35  any
           1    38      39  Class java.io.FileNotFoundException
           1    38      42  Class java.lang.Exception
    MethodParameters:
          Name  Flags
      filename  
      context   

  static java.lang.String getResource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 3057
            getstatic jdk.internal.jshell.tool.JShellTool.BUILTIN_FILE_PATTERN:Ljava/util/regex/Pattern;
            aload 0 /* name */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 4
         1: .line 3059
            aload 0 /* name */
            invokestatic jdk.internal.jshell.tool.JShellTool.readResource:(Ljava/lang/String;)Ljava/lang/String;
         2: areturn
         3: .line 3060
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 3064
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      name  

  static java.lang.String readResource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.String name
         0: .line 3112
            aload 0 /* name */
            ldc "JAVASE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 3114
            new jdk.internal.jshell.tool.JShellTool$1ComputeImports
            dup
            ldc "java.se"
            invokespecial jdk.internal.jshell.tool.JShellTool$1ComputeImports.<init>:(Ljava/lang/String;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool$1ComputeImports.imports:()Ljava/lang/String;
            areturn
         2: .line 3118
      StackMap locals:
      StackMap stack:
            ldc "/jdk/jshell/tool/resources/%s.jsh"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* name */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* spec */
        start local 1 // java.lang.String spec
         3: .line 3120
            aconst_null
            astore 2
            aconst_null
            astore 3
         4: ldc Ljdk/internal/jshell/tool/JShellTool;
            aload 1 /* spec */
            invokevirtual java.lang.Class.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 4 /* in */
        start local 4 // java.io.InputStream in
         5: .line 3121
            new java.io.BufferedReader
            dup
            new java.io.InputStreamReader
            dup
            aload 4 /* in */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 5 /* reader */
        start local 5 // java.io.BufferedReader reader
         6: .line 3122
            aload 5 /* reader */
            invokevirtual java.io.BufferedReader.lines:()Ljava/util/stream/Stream;
            ldc "\n"
            ldc ""
            ldc "\n"
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.lang.String
         7: .line 3123
            aload 5 /* reader */
            ifnull 8
            aload 5 /* reader */
            invokevirtual java.io.BufferedReader.close:()V
      StackMap locals: java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.io.InputStream java.io.BufferedReader
      StackMap stack: java.lang.String
         8: aload 4 /* in */
            ifnull 9
            aload 4 /* in */
            invokevirtual java.io.InputStream.close:()V
         9: .line 3122
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 3123
            aload 5 /* reader */
            ifnull 12
            aload 5 /* reader */
            invokevirtual java.io.BufferedReader.close:()V
        end local 5 // java.io.BufferedReader reader
      StackMap locals:
      StackMap stack:
        12: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 2
            ifnonnull 14
            aload 3
            astore 2
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 2
            aload 3
            if_acmpeq 15
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        15: aload 4 /* in */
            ifnull 16
            aload 4 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 4 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
        16: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 3
            aload 2
            ifnonnull 18
            aload 3
            astore 2
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 2
            aload 3
            if_acmpeq 19
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 2
            athrow
        end local 1 // java.lang.String spec
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    name  Ljava/lang/String;
            3   20     1    spec  Ljava/lang/String;
            5   16     4      in  Ljava/io/InputStream;
            6   12     5  reader  Ljava/io/BufferedReader;
      Exception table:
        from    to  target  type
           6     7      10  any
           5     8      13  any
          10    13      13  any
           4     9      17  any
          10    17      17  any
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      name  

  private boolean cmdReset(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 3127
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.JShellTool$Options
         2: astore 2 /* oldOptions */
        start local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
         3: .line 3128
            aload 0 /* this */
            aload 1 /* rawargs */
            new jdk.internal.jshell.tool.JShellTool$OptionParserBase
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$OptionParserBase.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.parseCommandLineLikeFlags:(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$OptionParserBase;)Z
            ifne 5
         4: .line 3129
            iconst_0
            ireturn
         5: .line 3131
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Options
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         6: .line 3132
            aload 0 /* this */
            ldc "jshell.msg.resetting.state"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         7: .line 3133
            aload 0 /* this */
            aconst_null
            iconst_0
            aload 2 /* oldOptions */
            invokevirtual jdk.internal.jshell.tool.JShellTool.doReload:(Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;ZLjdk/internal/jshell/tool/JShellTool$Options;)Z
            ireturn
        end local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0    8     1     rawargs  Ljava/lang/String;
            3    8     2  oldOptions  Ljdk/internal/jshell/tool/JShellTool$Options;
    MethodParameters:
         Name  Flags
      rawargs  

  private boolean cmdReload(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 3137
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.JShellTool$Options
         2: astore 2 /* oldOptions */
        start local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
         3: .line 3138
            new jdk.internal.jshell.tool.JShellTool$OptionParserReload
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$OptionParserReload.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            astore 3 /* ap */
        start local 3 // jdk.internal.jshell.tool.JShellTool$OptionParserReload ap
         4: .line 3139
            aload 0 /* this */
            aload 1 /* rawargs */
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool.parseCommandLineLikeFlags:(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$OptionParserBase;)Z
            ifne 6
         5: .line 3140
            iconst_0
            ireturn
         6: .line 3143
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Options jdk.internal.jshell.tool.JShellTool$OptionParserReload
      StackMap stack:
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 13
         7: .line 3144
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            ifnonnull 10
         8: .line 3145
            aload 0 /* this */
            ldc "jshell.err.reload.no.previous"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 3146
            iconst_0
            ireturn
        10: .line 3148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            astore 4 /* history */
        start local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        11: .line 3149
            aload 0 /* this */
            ldc "jshell.err.reload.restarting.previous.state"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 3150
            goto 15
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        13: .line 3151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            astore 4 /* history */
        start local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        14: .line 3152
            aload 0 /* this */
            ldc "jshell.err.reload.restarting.state"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        15: .line 3154
      StackMap locals: jdk.internal.jshell.tool.JShellTool$ReplayableHistory
      StackMap stack:
            aload 0 /* this */
            aload 4 /* history */
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.quiet:()Z
            ifeq 16
            iconst_0
            goto 17
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.JShellTool$Options jdk.internal.jshell.tool.JShellTool$OptionParserReload jdk.internal.jshell.tool.JShellTool$ReplayableHistory
      StackMap stack: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.JShellTool$ReplayableHistory
        16: iconst_1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.JShellTool$Options jdk.internal.jshell.tool.JShellTool$OptionParserReload jdk.internal.jshell.tool.JShellTool$ReplayableHistory
      StackMap stack: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.JShellTool$ReplayableHistory int
        17: aload 2 /* oldOptions */
            invokevirtual jdk.internal.jshell.tool.JShellTool.doReload:(Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;ZLjdk/internal/jshell/tool/JShellTool$Options;)Z
            istore 5 /* success */
        start local 5 // boolean success
        18: .line 3155
            iload 5 /* success */
            ifeq 20
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 20
        19: .line 3158
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.markSaved:()V
        20: .line 3160
      StackMap locals: int
      StackMap stack:
            iload 5 /* success */
            ireturn
        end local 5 // boolean success
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        end local 3 // jdk.internal.jshell.tool.JShellTool$OptionParserReload ap
        end local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   21     1     rawargs  Ljava/lang/String;
            3   21     2  oldOptions  Ljdk/internal/jshell/tool/JShellTool$Options;
            4   21     3          ap  Ljdk/internal/jshell/tool/JShellTool$OptionParserReload;
           11   13     4     history  Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
           14   21     4     history  Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
           18   21     5     success  Z
    MethodParameters:
         Name  Flags
      rawargs  

  private boolean cmdEnv(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 3164
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 17
         1: .line 3166
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 3167
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.shownOptions:()[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 13
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.StringBuilder top int int java.lang.String[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* a */
        start local 3 // java.lang.String a
         4: .line 3168
            aload 2 /* sb */
         5: .line 3169
            aload 3 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 3170
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 8
         7: .line 3171
            ldc "\n   "
            goto 10
         8: .line 3172
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.StringBuilder java.lang.String int int java.lang.String[]
      StackMap stack: java.lang.StringBuilder
            ldc "   "
            goto 10
         9: .line 3173
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
        10: .line 3168
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.StringBuilder java.lang.String int int java.lang.String[]
      StackMap stack: java.lang.StringBuilder java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 3174
            aload 2 /* sb */
            aload 3 /* a */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // java.lang.String a
        12: .line 3167
            iinc 4 1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.StringBuilder top int int java.lang.String[]
      StackMap stack:
        13: iload 4
            iload 5
            if_icmplt 3
        14: .line 3176
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 16
        15: .line 3177
            aload 0 /* this */
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 3179
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.StringBuilder
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.StringBuilder sb
        17: .line 3181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            astore 2 /* oldOptions */
        start local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
        18: .line 3182
            aload 0 /* this */
            aload 1 /* rawargs */
            new jdk.internal.jshell.tool.JShellTool$OptionParserBase
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$OptionParserBase.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.parseCommandLineLikeFlags:(Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$OptionParserBase;)Z
            ifne 20
        19: .line 3183
            iconst_0
            ireturn
        20: .line 3185
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Options
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.msg.set.restore"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 3186
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            iconst_0
            aload 2 /* oldOptions */
            invokevirtual jdk.internal.jshell.tool.JShellTool.doReload:(Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;ZLjdk/internal/jshell/tool/JShellTool$Options;)Z
            ireturn
        end local 2 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   22     1     rawargs  Ljava/lang/String;
            2   17     2          sb  Ljava/lang/StringBuilder;
            4   12     3           a  Ljava/lang/String;
           18   22     2  oldOptions  Ljdk/internal/jshell/tool/JShellTool$Options;
    MethodParameters:
         Name  Flags
      rawargs  

  private boolean doReload(jdk.internal.jshell.tool.JShellTool$ReplayableHistory, boolean, jdk.internal.jshell.tool.JShellTool$Options);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;ZLjdk/internal/jshell/tool/JShellTool$Options;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        start local 2 // boolean echo
        start local 3 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
         0: .line 3190
            aload 3 /* oldOptions */
            ifnull 9
         1: .line 3192
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         2: .line 3193
            goto 10
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         3: astore 4 /* ex */
        start local 4 // java.lang.IllegalStateException ex
         4: .line 3194
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.mainNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            putfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
         5: .line 3195
            aload 0 /* this */
            ldc "jshell.err.restart.failed"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* ex */
            invokevirtual java.lang.IllegalStateException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 3197
            aload 0 /* this */
            aload 3 /* oldOptions */
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         7: .line 3198
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        end local 4 // java.lang.IllegalStateException ex
         8: .line 3200
            goto 10
         9: .line 3201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        10: .line 3203
      StackMap locals:
      StackMap stack:
            aload 1 /* history */
            ifnull 17
        11: .line 3204
            aload 0 /* this */
        12: new jdk.internal.jshell.tool.ReloadIOContext
            dup
            aload 1 /* history */
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.iterable:()Ljava/lang/Iterable;
        13: .line 3205
            iload 2 /* echo */
            ifeq 14
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            goto 15
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.JShellTool$ReplayableHistory int jdk.internal.jshell.tool.JShellTool$Options
      StackMap stack: jdk.internal.jshell.tool.JShellTool new 12 new 12 java.lang.Iterable
        14: aconst_null
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.JShellTool$ReplayableHistory int jdk.internal.jshell.tool.JShellTool$Options
      StackMap stack: jdk.internal.jshell.tool.JShellTool new 12 new 12 java.lang.Iterable java.io.PrintStream
        15: invokespecial jdk.internal.jshell.tool.ReloadIOContext.<init>:(Ljava/lang/Iterable;Ljava/io/PrintStream;)V
        16: .line 3204
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        17: .line 3207
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // jdk.internal.jshell.tool.JShellTool$Options oldOptions
        end local 2 // boolean echo
        end local 1 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   18     1     history  Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            0   18     2        echo  Z
            0   18     3  oldOptions  Ljdk/internal/jshell/tool/JShellTool$Options;
            4    8     4          ex  Ljava/lang/IllegalStateException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalStateException
    MethodParameters:
            Name  Flags
      history     
      echo        
      oldOptions  

  private boolean parseCommandLineLikeFlags(java.lang.String, jdk.internal.jshell.tool.JShellTool$OptionParserBase);
    descriptor: (Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$OptionParserBase;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
        start local 2 // jdk.internal.jshell.tool.JShellTool$OptionParserBase ap
         0: .line 3211
            aload 1 /* rawargs */
            ldc "\\s+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         1: .line 3212
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$113(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 3213
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$86(I)[Ljava/lang/String; (6)
                  (I)[Ljava/lang/String;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.String[]
         3: .line 3211
            astore 3 /* args */
        start local 3 // java.lang.String[] args
         4: .line 3214
            aload 2 /* ap */
            aload 3 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserBase.parse:([Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$Options;
            astore 4 /* opts */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Options opts
         5: .line 3215
            aload 4 /* opts */
            ifnonnull 7
         6: .line 3216
            iconst_0
            ireturn
         7: .line 3218
      StackMap locals: java.lang.String[] jdk.internal.jshell.tool.JShellTool$Options
      StackMap stack:
            aload 2 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserBase.nonOptions:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 10
         8: .line 3219
            aload 0 /* this */
            ldc "jshell.err.unexpected.at.end"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserBase.nonOptions:()Ljava/util/List;
            aastore
            dup
            iconst_1
            aload 1 /* rawargs */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 3220
            iconst_0
            ireturn
        10: .line 3222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            aload 4 /* opts */
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.override:(Ljdk/internal/jshell/tool/JShellTool$Options;)Ljdk/internal/jshell/tool/JShellTool$Options;
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
        11: .line 3223
            iconst_1
            ireturn
        end local 4 // jdk.internal.jshell.tool.JShellTool$Options opts
        end local 3 // java.lang.String[] args
        end local 2 // jdk.internal.jshell.tool.JShellTool$OptionParserBase ap
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   12     1  rawargs  Ljava/lang/String;
            0   12     2       ap  Ljdk/internal/jshell/tool/JShellTool$OptionParserBase;
            4   12     3     args  [Ljava/lang/String;
            5   12     4     opts  Ljdk/internal/jshell/tool/JShellTool$Options;
    MethodParameters:
         Name  Flags
      rawargs  
      ap       

  private boolean cmdSave(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=14, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 3228
            aload 1 /* rawargs */
            ldc "\\s"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 2 /* args */
        start local 2 // java.lang.String[] args
         1: .line 3229
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         2: .line 3230
            aload 3 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
         3: .line 3231
            aload 0 /* this */
            ldc "jshell.err.file.filename"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "/save"
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 3232
            iconst_0
            ireturn
         5: .line 3235
      StackMap locals: java.lang.String[] java.lang.String
      StackMap stack:
            aload 2 /* args */
            iconst_0
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;II)Ljava/util/stream/Stream;
         6: .line 3236
            ldc "\n"
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.lang.String
         7: .line 3235
            astore 4 /* srcSpec */
        start local 4 // java.lang.String srcSpec
         8: .line 3238
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/save"
            aload 4 /* srcSpec */
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 5 /* at */
        start local 5 // jdk.internal.jshell.tool.ArgTokenizer at
         9: .line 3239
            aload 5 /* at */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "-all"
            aastore
            dup
            iconst_1
            ldc "-start"
            aastore
            dup
            iconst_2
            ldc "-history"
            aastore
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
        10: .line 3240
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic get(Ljdk/jshell/JShell;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/jshell/JShell.snippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.mainActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljdk/internal/jshell/tool/ArgTokenizer;)Ljava/util/stream/Stream;
            astore 6 /* snippetStream */
        start local 6 // java.util.stream.Stream snippetStream
        11: .line 3241
            aload 6 /* snippetStream */
            ifnonnull 13
        12: .line 3243
            iconst_0
            ireturn
        13: .line 3245
      StackMap locals: java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.util.stream.Stream
      StackMap stack:
            aconst_null
            astore 9
            aconst_null
            astore 10
        14: aload 3 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
        15: .line 3246
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
        16: .line 3247
            getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_1
            getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_2
            getstatic java.nio.file.StandardOpenOption.WRITE:Ljava/nio/file/StandardOpenOption;
            aastore
        17: .line 3245
            invokestatic java.nio.file.Files.newBufferedWriter:(Ljava/nio/file/Path;Ljava/nio/charset/Charset;[Ljava/nio/file/OpenOption;)Ljava/io/BufferedWriter;
            astore 11 /* writer */
        start local 11 // java.io.BufferedWriter writer
        18: .line 3248
            aload 5 /* at */
            ldc "-history"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 25
        19: .line 3250
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            iconst_1
            invokevirtual jdk.internal.jshell.tool.IOContext.history:(Z)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 13
            goto 23
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String[] java.lang.String java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.util.stream.Stream top top java.lang.Throwable java.lang.Throwable java.io.BufferedWriter top java.util.Iterator
      StackMap stack:
        20: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* s */
        start local 12 // java.lang.String s
        21: .line 3251
            aload 11 /* writer */
            aload 12 /* s */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        22: .line 3252
            aload 11 /* writer */
            ldc "\n"
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 12 // java.lang.String s
        23: .line 3250
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        24: .line 3254
            goto 29
        25: .line 3256
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String[] java.lang.String java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.util.stream.Stream top top java.lang.Throwable java.lang.Throwable java.io.BufferedWriter
      StackMap stack:
            aload 11 /* writer */
            aload 6 /* snippetStream */
        26: .line 3257
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/jshell/Snippet.source()Ljava/lang/String; (5)
                  (Ljdk/jshell/Snippet;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        27: .line 3258
            ldc "\n"
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.lang.String
        28: .line 3256
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        29: .line 3260
      StackMap locals:
      StackMap stack:
            aload 11 /* writer */
            ifnull 41
            aload 11 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
            goto 41
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 9
            aload 11 /* writer */
            ifnull 31
            aload 11 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
        end local 11 // java.io.BufferedWriter writer
      StackMap locals:
      StackMap stack:
        31: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        32: astore 10
            aload 9
            ifnonnull 33
            aload 10
            astore 9
            goto 34
      StackMap locals:
      StackMap stack:
        33: aload 9
            aload 10
            if_acmpeq 34
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        34: aload 9
            athrow
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String[] java.lang.String java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.util.stream.Stream
      StackMap stack: java.io.FileNotFoundException
        35: astore 9 /* e */
        start local 9 // java.io.FileNotFoundException e
        36: .line 3261
            aload 0 /* this */
            ldc "jshell.err.file.not.found"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "/save"
            aastore
            dup
            iconst_1
            aload 3 /* filename */
            aastore
            dup
            iconst_2
            aload 9 /* e */
            invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        37: .line 3262
            iconst_0
            ireturn
        end local 9 // java.io.FileNotFoundException e
        38: .line 3263
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        39: .line 3264
            aload 0 /* this */
            ldc "jshell.err.file.exception"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "/save"
            aastore
            dup
            iconst_1
            aload 3 /* filename */
            aastore
            dup
            iconst_2
            aload 9 /* e */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        40: .line 3265
            iconst_0
            ireturn
        end local 9 // java.lang.Exception e
        41: .line 3267
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 6 // java.util.stream.Stream snippetStream
        end local 5 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 4 // java.lang.String srcSpec
        end local 3 // java.lang.String filename
        end local 2 // java.lang.String[] args
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   42     0           this  Ljdk/internal/jshell/tool/JShellTool;
            0   42     1        rawargs  Ljava/lang/String;
            1   42     2           args  [Ljava/lang/String;
            2   42     3       filename  Ljava/lang/String;
            8   42     4        srcSpec  Ljava/lang/String;
            9   42     5             at  Ljdk/internal/jshell/tool/ArgTokenizer;
           11   42     6  snippetStream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
           18   31    11         writer  Ljava/io/BufferedWriter;
           21   23    12              s  Ljava/lang/String;
           36   38     9              e  Ljava/io/FileNotFoundException;
           39   41     9              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          18    29      30  any
          14    32      32  any
          13    35      35  Class java.io.FileNotFoundException
          13    35      38  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      rawargs  

  private boolean cmdVars(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 3271
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allVarSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
         1: .line 3272
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.isActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 1 /* arg */
            ldc "/vars"
         2: .line 3271
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 2 /* stream */
        start local 2 // java.util.stream.Stream stream
         3: .line 3273
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3274
            iconst_0
            ireturn
         5: .line 3276
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            aload 2 /* stream */
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$120(Ljdk/jshell/VarSnippet;)V (7)
                  (Ljdk/jshell/VarSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 3283
            iconst_1
            ireturn
        end local 2 // java.util.stream.Stream stream
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1     arg  Ljava/lang/String;
            3    7     2  stream  Ljava/util/stream/Stream<Ljdk/jshell/VarSnippet;>;
    MethodParameters:
      Name  Flags
      arg   

  private boolean cmdMethods(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 3287
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allMethodSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
         1: .line 3288
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.isActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 1 /* arg */
            ldc "/methods"
         2: .line 3287
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 2 /* stream */
        start local 2 // java.util.stream.Stream stream
         3: .line 3289
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3290
            iconst_0
            ireturn
         5: .line 3292
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            aload 2 /* stream */
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$123(Ljdk/jshell/MethodSnippet;)V (7)
                  (Ljdk/jshell/MethodSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 3302
            iconst_1
            ireturn
        end local 2 // java.util.stream.Stream stream
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1     arg  Ljava/lang/String;
            3    7     2  stream  Ljava/util/stream/Stream<Ljdk/jshell/MethodSnippet;>;
    MethodParameters:
      Name  Flags
      arg   

  private boolean cmdTypes(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 3306
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic get(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.allTypeSnippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
         1: .line 3307
            aload 0 /* this */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.isActive(Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aload 1 /* arg */
            ldc "/types"
         2: .line 3306
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 2 /* stream */
        start local 2 // java.util.stream.Stream stream
         3: .line 3308
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3309
            iconst_0
            ireturn
         5: .line 3311
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            aload 2 /* stream */
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$126(Ljdk/jshell/TypeDeclSnippet;)V (7)
                  (Ljdk/jshell/TypeDeclSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 3335
            iconst_1
            ireturn
        end local 2 // java.util.stream.Stream stream
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1     arg  Ljava/lang/String;
            3    7     2  stream  Ljava/util/stream/Stream<Ljdk/jshell/TypeDeclSnippet;>;
    MethodParameters:
      Name  Flags
      arg   

  private boolean cmdImports();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 3339
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.imports:()Ljava/util/stream/Stream;
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$127(Ljdk/jshell/ImportSnippet;)V (7)
                  (Ljdk/jshell/ImportSnippet;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         1: .line 3342
            iconst_1
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private boolean cmdUseHistoryEntry(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // int index
         0: .line 3346
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* keys */
        start local 2 // java.util.List keys
         1: .line 3347
            iload 1 /* index */
            ifge 3
         2: .line 3348
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            iadd
            istore 1 /* index */
            goto 4
         3: .line 3350
      StackMap locals: java.util.List
      StackMap stack:
            iinc 1 /* index */ -1
         4: .line 3351
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            iflt 7
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            if_icmpge 7
         5: .line 3352
            aload 0 /* this */
            aload 2 /* keys */
            iload 1 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.jshell.Snippet
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunSnippet:(Ljdk/jshell/Snippet;)V
         6: .line 3353
            goto 9
         7: .line 3354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.out.of.range"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 3355
            iconst_0
            ireturn
         9: .line 3357
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // java.util.List keys
        end local 1 // int index
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   10     1  index  I
            1   10     2   keys  Ljava/util/List<Ljdk/jshell/Snippet;>;
    MethodParameters:
       Name  Flags
      index  

  boolean checkOptionsAndRemainingInput(jdk.internal.jshell.tool.ArgTokenizer);
    descriptor: (Ljdk/internal/jshell/tool/ArgTokenizer;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.ArgTokenizer at
         0: .line 3361
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.remainder:()Ljava/lang/String;
            astore 2 /* junk */
        start local 2 // java.lang.String junk
         1: .line 3362
            aload 2 /* junk */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
         2: .line 3363
            aload 0 /* this */
            ldc "jshell.err.unexpected.at.end"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* junk */
            aastore
            dup
            iconst_1
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 3364
            iconst_0
            ireturn
         4: .line 3366
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.badOptions:()Ljava/lang/String;
            astore 3 /* bad */
        start local 3 // java.lang.String bad
         5: .line 3367
            aload 3 /* bad */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 8
         6: .line 3368
            aload 0 /* this */
            ldc "jshell.err.unknown.option"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* bad */
            aastore
            dup
            iconst_1
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         7: .line 3369
            iconst_0
            ireturn
        end local 3 // java.lang.String bad
         8: .line 3372
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // java.lang.String junk
        end local 1 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    9     1    at  Ljdk/internal/jshell/tool/ArgTokenizer;
            1    9     2  junk  Ljava/lang/String;
            5    8     3   bad  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      at    

  private void rerunHistoryEntriesById(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 3383
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/<id>"
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* at */
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         1: .line 3384
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 3385
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic get(Ljdk/jshell/JShell;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/jshell/JShell.snippets()Ljava/util/stream/Stream; (5)
                  ()Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$129(Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsOptionsToSnippets:(Ljava/util/function/Supplier;Ljava/util/function/Predicate;Ljdk/internal/jshell/tool/ArgTokenizer;)Ljava/util/stream/Stream;
            astore 3 /* stream */
        start local 3 // java.util.stream.Stream stream
         3: .line 3386
            aload 3 /* stream */
            ifnull 5
         4: .line 3388
            aload 3 /* stream */
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$130(Ljdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         5: .line 3390
      StackMap locals: jdk.internal.jshell.tool.ArgTokenizer java.util.stream.Stream
      StackMap stack:
            return
        end local 3 // java.util.stream.Stream stream
        end local 2 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 1 // java.lang.String rawargs
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0    6     1  rawargs  Ljava/lang/String;
            1    6     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3    6     3   stream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
    MethodParameters:
         Name  Flags
      rawargs  

  private void rerunSnippet(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet snippet
         0: .line 3393
            aload 1 /* snippet */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 2 /* source */
        start local 2 // java.lang.String source
         1: .line 3394
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            ldc "%s\n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* source */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         2: .line 3395
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.IOContext.replaceLastHistoryEntry:(Ljava/lang/String;)V
         3: .line 3396
            aload 0 /* this */
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Z
            pop
         4: .line 3397
            return
        end local 2 // java.lang.String source
        end local 1 // jdk.jshell.Snippet snippet
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0    5     1  snippet  Ljdk/jshell/Snippet;
            1    5     2   source  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      snippet  

  java.util.List<jdk.jshell.Diag> errorsOnly(java.util.List<jdk.jshell.Diag>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.List diagnostics
         0: .line 3405
            aload 1 /* diagnostics */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 3406
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/jshell/Diag.isError()Z (5)
                  (Ljdk/jshell/Diag;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 3407
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         3: .line 3405
            areturn
        end local 1 // java.util.List diagnostics
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1  diagnostics  Ljava/util/List<Ljdk/jshell/Diag;>;
    Signature: (Ljava/util/List<Ljdk/jshell/Diag;>;)Ljava/util/List<Ljdk/jshell/Diag;>;
    MethodParameters:
             Name  Flags
      diagnostics  

  private boolean displayException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.Throwable exception
         0: .line 3417
            aload 1 /* exception */
            astore 2 /* rootCause */
        start local 2 // java.lang.Throwable rootCause
         1: .line 3418
            goto 3
         2: .line 3419
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 2 /* rootCause */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 2 /* rootCause */
         3: .line 3418
      StackMap locals:
      StackMap stack:
            aload 2 /* rootCause */
            instanceof jdk.jshell.EvalException
            ifne 2
         4: .line 3421
            aload 2 /* rootCause */
            aload 1 /* exception */
            if_acmpeq 6
            aload 2 /* rootCause */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 6
         5: .line 3423
            aload 0 /* this */
            aload 2 /* rootCause */
            aconst_null
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Throwable;[Ljava/lang/StackTraceElement;)Z
            ireturn
         6: .line 3425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* exception */
            aconst_null
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Throwable;[Ljava/lang/StackTraceElement;)Z
            ireturn
        end local 2 // java.lang.Throwable rootCause
        end local 1 // java.lang.Throwable exception
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1  exception  Ljava/lang/Throwable;
            1    7     2  rootCause  Ljava/lang/Throwable;
    MethodParameters:
           Name  Flags
      exception  

  private boolean displayException(java.lang.Throwable, java.lang.StackTraceElement[]);
    descriptor: (Ljava/lang/Throwable;[Ljava/lang/StackTraceElement;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.Throwable exception
        start local 2 // java.lang.StackTraceElement[] caused
         0: .line 3430
            aload 1 /* exception */
            instanceof jdk.jshell.EvalException
            ifeq 2
         1: .line 3432
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.EvalException
            aload 2 /* caused */
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayEvalException:(Ljdk/jshell/EvalException;[Ljava/lang/StackTraceElement;)Z
            ireturn
         2: .line 3433
      StackMap locals:
      StackMap stack:
            aload 1 /* exception */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 4
         3: .line 3435
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.UnresolvedReferenceException
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayUnresolvedException:(Ljdk/jshell/UnresolvedReferenceException;)Z
            ireturn
         4: .line 3438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Unexpected execution exception: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* exception */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 3439
            iconst_1
            ireturn
        end local 2 // java.lang.StackTraceElement[] caused
        end local 1 // java.lang.Throwable exception
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0    6     1  exception  Ljava/lang/Throwable;
            0    6     2     caused  [Ljava/lang/StackTraceElement;
    MethodParameters:
           Name  Flags
      exception  
      caused     

  private boolean displayUnresolvedException(jdk.jshell.UnresolvedReferenceException);
    descriptor: (Ljdk/jshell/UnresolvedReferenceException;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.UnresolvedReferenceException ex
         0: .line 3445
            aload 0 /* this */
            aload 1 /* ex */
            invokevirtual jdk.jshell.UnresolvedReferenceException.getSnippet:()Ljdk/jshell/DeclarationSnippet;
            iconst_0
            invokevirtual jdk.internal.jshell.tool.JShellTool.printSnippetStatus:(Ljdk/jshell/DeclarationSnippet;Z)V
         1: .line 3446
            iconst_0
            ireturn
        end local 1 // jdk.jshell.UnresolvedReferenceException ex
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    2     1    ex  Ljdk/jshell/UnresolvedReferenceException;
    MethodParameters:
      Name  Flags
      ex    

  private boolean displayEvalException(jdk.jshell.EvalException, java.lang.StackTraceElement[]);
    descriptor: (Ljdk/jshell/EvalException;[Ljava/lang/StackTraceElement;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.EvalException ex
        start local 2 // java.lang.StackTraceElement[] caused
         0: .line 3454
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            astore 3 /* msg */
        start local 3 // java.lang.String msg
         1: .line 3455
            new java.lang.StringBuilder
            dup
            ldc "jshell.err.exception"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 3456
            aload 2 /* caused */
            ifnonnull 3
            ldc ".thrown"
            goto 4
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.EvalException java.lang.StackTraceElement[] java.lang.String
      StackMap stack: java.lang.StringBuilder
         3: ldc ".cause"
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.EvalException java.lang.StackTraceElement[] java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
         4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 3457
            aload 3 /* msg */
            ifnonnull 6
            ldc ""
            goto 7
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         6: ldc ".message"
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.EvalException java.lang.StackTraceElement[] java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 3455
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* key */
        start local 4 // java.lang.String key
         9: .line 3458
            aload 0 /* this */
            aload 4 /* key */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getExceptionClassName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* msg */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 3460
            aload 0 /* this */
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getStackTrace:()[Ljava/lang/StackTraceElement;
            aload 2 /* caused */
            invokevirtual jdk.internal.jshell.tool.JShellTool.printStackTrace:([Ljava/lang/StackTraceElement;[Ljava/lang/StackTraceElement;)V
        11: .line 3461
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getCause:()Ljdk/jshell/JShellException;
            astore 5 /* cause */
        start local 5 // jdk.jshell.JShellException cause
        12: .line 3462
            aload 5 /* cause */
            ifnull 14
        13: .line 3464
            aload 0 /* this */
            aload 5 /* cause */
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getStackTrace:()[Ljava/lang/StackTraceElement;
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Throwable;[Ljava/lang/StackTraceElement;)Z
            pop
        14: .line 3466
      StackMap locals: java.lang.String jdk.jshell.JShellException
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // jdk.jshell.JShellException cause
        end local 4 // java.lang.String key
        end local 3 // java.lang.String msg
        end local 2 // java.lang.StackTraceElement[] caused
        end local 1 // jdk.jshell.EvalException ex
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljdk/internal/jshell/tool/JShellTool;
            0   15     1      ex  Ljdk/jshell/EvalException;
            0   15     2  caused  [Ljava/lang/StackTraceElement;
            1   15     3     msg  Ljava/lang/String;
            9   15     4     key  Ljava/lang/String;
           12   15     5   cause  Ljdk/jshell/JShellException;
    MethodParameters:
        Name  Flags
      ex      
      caused  

  private void displayDiagnostics(java.lang.String, java.util.List<jdk.jshell.Diag>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String source
        start local 2 // java.util.List diagnostics
         0: .line 3476
            aload 2 /* diagnostics */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.jshell.Diag
            astore 3 /* d */
        start local 3 // jdk.jshell.Diag d
         2: .line 3477
            aload 0 /* this */
            aload 3 /* d */
            invokevirtual jdk.jshell.Diag.isError:()Z
            ifeq 3
            ldc "jshell.msg.error"
            goto 4
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List jdk.jshell.Diag java.util.Iterator
      StackMap stack: jdk.internal.jshell.tool.JShellTool
         3: ldc "jshell.msg.warning"
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List jdk.jshell.Diag java.util.Iterator
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String
         4: iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 3478
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* disp */
        start local 5 // java.util.List disp
         6: .line 3479
            aload 0 /* this */
            aload 1 /* source */
            aload 3 /* d */
            aload 5 /* disp */
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayableDiagnostic:(Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List;)V
         7: .line 3480
            aload 5 /* disp */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         8: .line 3481
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$132(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        end local 5 // java.util.List disp
        end local 3 // jdk.jshell.Diag d
         9: .line 3476
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        10: .line 3483
            return
        end local 2 // java.util.List diagnostics
        end local 1 // java.lang.String source
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0   11     1       source  Ljava/lang/String;
            0   11     2  diagnostics  Ljava/util/List<Ljdk/jshell/Diag;>;
            2    9     3            d  Ljdk/jshell/Diag;
            6    9     5         disp  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Ljava/lang/String;Ljava/util/List<Ljdk/jshell/Diag;>;)V
    MethodParameters:
             Name  Flags
      source       
      diagnostics  

  private void displayableDiagnostic(java.lang.String, jdk.jshell.Diag, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=14, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String source
        start local 2 // jdk.jshell.Diag diag
        start local 3 // java.util.List toDisplay
         0: .line 3494
            aload 2 /* diag */
            aconst_null
            invokevirtual jdk.jshell.Diag.getMessage:(Ljava/util/Locale;)Ljava/lang/String;
            ldc "\\r?\\n"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 5
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.jshell.Diag java.util.List top int int java.lang.String[]
      StackMap stack:
         1: aload 7
            iload 5
            aaload
            astore 4 /* line */
        start local 4 // java.lang.String line
         2: .line 3495
            aload 4 /* line */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            ldc "location:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         3: .line 3496
            aload 3 /* toDisplay */
            aload 4 /* line */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.String line
         4: .line 3494
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         5: iload 5
            iload 6
            if_icmplt 1
         6: .line 3500
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            l2i
            istore 4 /* pstart */
        start local 4 // int pstart
         7: .line 3501
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            l2i
            istore 5 /* pend */
        start local 5 // int pend
         8: .line 3502
            getstatic jdk.internal.jshell.tool.JShellTool.LINEBREAK:Ljava/util/regex/Pattern;
            aload 1 /* source */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 6 /* m */
        start local 6 // java.util.regex.Matcher m
         9: .line 3503
            iconst_0
            istore 7 /* pstartl */
        start local 7 // int pstartl
        10: .line 3504
            bipush -2
            istore 8 /* pendl */
        start local 8 // int pendl
        11: .line 3505
            goto 16
        12: .line 3506
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.jshell.Diag java.util.List int int java.util.regex.Matcher int int
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.start:()I
            istore 8 /* pendl */
        13: .line 3507
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmplt 15
        14: .line 3508
            goto 17
        15: .line 3510
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pstartl */
        16: .line 3505
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            iload 7 /* pstartl */
            invokevirtual java.util.regex.Matcher.find:(I)Z
            ifne 12
        17: .line 3513
      StackMap locals:
      StackMap stack:
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmpge 19
        18: .line 3514
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 8 /* pendl */
        19: .line 3516
      StackMap locals:
      StackMap stack:
            aload 3 /* toDisplay */
            aload 1 /* source */
            iload 7 /* pstartl */
            iload 8 /* pendl */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 3518
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        21: .line 3519
            iload 4 /* pstart */
            iload 7 /* pstartl */
            isub
            istore 10 /* start */
        start local 10 // int start
        22: .line 3520
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        23: goto 26
        24: .line 3521
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 9 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 3520
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 11 /* i */
            iload 10 /* start */
            if_icmplt 24
        end local 11 // int i
        27: .line 3523
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        28: .line 3524
            iload 5 /* pend */
            iload 8 /* pendl */
            if_icmple 29
            iconst_1
            goto 30
      StackMap locals:
      StackMap stack:
        29: iconst_0
      StackMap locals:
      StackMap stack: int
        30: istore 11 /* multiline */
        start local 11 // boolean multiline
        31: .line 3525
            iload 11 /* multiline */
            ifeq 32
            iload 8 /* pendl */
            goto 33
      StackMap locals: int
      StackMap stack:
        32: iload 5 /* pend */
      StackMap locals:
      StackMap stack: int
        33: iload 7 /* pstartl */
            isub
            iconst_1
            isub
            istore 12 /* end */
        start local 12 // int end
        34: .line 3526
            iload 12 /* end */
            iload 10 /* start */
            if_icmple 44
        35: .line 3527
            iload 10 /* start */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        36: goto 39
        37: .line 3528
      StackMap locals: int int
      StackMap stack:
            aload 9 /* sb */
            bipush 45
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 3527
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 13 /* i */
            iload 12 /* end */
            if_icmplt 37
        end local 13 // int i
        40: .line 3530
            iload 11 /* multiline */
            ifeq 43
        41: .line 3531
            aload 9 /* sb */
            ldc "-..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        42: .line 3532
            goto 44
        43: .line 3533
      StackMap locals:
      StackMap stack:
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        44: .line 3536
      StackMap locals:
      StackMap stack:
            aload 3 /* toDisplay */
            aload 9 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 3538
            aload 0 /* this */
            ldc "printDiagnostics start-pos = %d ==> %d -- wrap = %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            iload 10 /* start */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        46: .line 3539
            aload 0 /* this */
            ldc "Code: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getCode:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        47: .line 3540
            aload 0 /* this */
            ldc "Pos: %d (%d - %d)"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
        48: .line 3541
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
        49: .line 3540
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        50: .line 3542
            return
        end local 12 // int end
        end local 11 // boolean multiline
        end local 10 // int start
        end local 9 // java.lang.StringBuilder sb
        end local 8 // int pendl
        end local 7 // int pstartl
        end local 6 // java.util.regex.Matcher m
        end local 5 // int pend
        end local 4 // int pstart
        end local 3 // java.util.List toDisplay
        end local 2 // jdk.jshell.Diag diag
        end local 1 // java.lang.String source
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   51     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   51     1     source  Ljava/lang/String;
            0   51     2       diag  Ljdk/jshell/Diag;
            0   51     3  toDisplay  Ljava/util/List<Ljava/lang/String;>;
            2    4     4       line  Ljava/lang/String;
            7   51     4     pstart  I
            8   51     5       pend  I
            9   51     6          m  Ljava/util/regex/Matcher;
           10   51     7    pstartl  I
           11   51     8      pendl  I
           21   51     9         sb  Ljava/lang/StringBuilder;
           22   51    10      start  I
           23   27    11          i  I
           31   51    11  multiline  Z
           34   51    12        end  I
           36   40    13          i  I
    Signature: (Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
           Name  Flags
      source     
      diag       
      toDisplay  

  boolean processSource(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String source
         0: .line 3551
            aload 0 /* this */
            ldc "Compiling: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* source */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 3552
            iconst_0
            istore 2 /* failed */
        start local 2 // boolean failed
         2: .line 3553
            iconst_0
            istore 3 /* isActive */
        start local 3 // boolean isActive
         3: .line 3554
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* source */
            invokevirtual jdk.jshell.JShell.eval:(Ljava/lang/String;)Ljava/util/List;
            astore 4 /* events */
        start local 4 // java.util.List events
         4: .line 3555
            aload 4 /* events */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.jshell.SnippetEvent
            astore 5 /* e */
        start local 5 // jdk.jshell.SnippetEvent e
         6: .line 3557
            iload 2 /* failed */
            aload 0 /* this */
            aload 5 /* e */
            invokevirtual jdk.internal.jshell.tool.JShellTool.handleEvent:(Ljdk/jshell/SnippetEvent;)Z
            ior
            istore 2 /* failed */
         7: .line 3561
            iload 3 /* isActive */
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 10
         8: .line 3562
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 10
         9: .line 3563
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            invokevirtual jdk.jshell.Snippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            getstatic jdk.jshell.Snippet$SubKind.VAR_VALUE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            if_acmpeq 10
            iconst_1
            goto 11
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List jdk.jshell.SnippetEvent java.util.Iterator
      StackMap stack: int
        10: iconst_0
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List jdk.jshell.SnippetEvent java.util.Iterator
      StackMap stack: int int
        11: ior
            istore 3 /* isActive */
        end local 5 // jdk.jshell.SnippetEvent e
        12: .line 3555
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        13: .line 3567
            iload 3 /* isActive */
            ifeq 15
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifeq 15
        14: .line 3568
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        15: .line 3571
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List
      StackMap stack:
            iload 2 /* failed */
            ifeq 16
            iconst_0
            goto 17
      StackMap locals:
      StackMap stack:
        16: iconst_1
      StackMap locals:
      StackMap stack: int
        17: ireturn
        end local 4 // java.util.List events
        end local 3 // boolean isActive
        end local 2 // boolean failed
        end local 1 // java.lang.String source
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   18     1    source  Ljava/lang/String;
            2   18     2    failed  Z
            3   18     3  isActive  Z
            4   18     4    events  Ljava/util/List<Ljdk/jshell/SnippetEvent;>;
            6   12     5         e  Ljdk/jshell/SnippetEvent;
    MethodParameters:
        Name  Flags
      source  

  private boolean handleEvent(jdk.jshell.SnippetEvent);
    descriptor: (Ljdk/jshell/SnippetEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.SnippetEvent ste
         0: .line 3576
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 2 /* sn */
        start local 2 // jdk.jshell.Snippet sn
         1: .line 3577
            aload 2 /* sn */
            ifnonnull 4
         2: .line 3578
            aload 0 /* this */
            ldc "Event with null key: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ste */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 3579
            iconst_0
            ireturn
         4: .line 3581
      StackMap locals: jdk.jshell.Snippet
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 2 /* sn */
            invokevirtual jdk.jshell.JShell.diagnostics:(Ljdk/jshell/Snippet;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            astore 3 /* diagnostics */
        start local 3 // java.util.List diagnostics
         5: .line 3582
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 4 /* source */
        start local 4 // java.lang.String source
         6: .line 3583
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 18
         7: .line 3585
            aload 0 /* this */
            aload 4 /* source */
            aload 3 /* diagnostics */
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayDiagnostics:(Ljava/lang/String;Ljava/util/List;)V
         8: .line 3587
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            getstatic jdk.jshell.Snippet$Status.REJECTED:Ljdk/jshell/Snippet$Status;
            if_acmpeq 15
         9: .line 3588
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 12
        10: .line 3589
            aload 0 /* this */
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Throwable;)Z
            ifeq 22
        11: .line 3590
            iconst_1
            ireturn
        12: .line 3593
      StackMap locals: java.util.List java.lang.String
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* ste */
            getstatic jdk.internal.jshell.tool.Feedback$FormatWhen.PRIMARY:Ljdk/internal/jshell/tool/Feedback$FormatWhen;
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            aload 3 /* diagnostics */
            invokespecial jdk.internal.jshell.tool.JShellTool$DisplayEvent.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/SnippetEvent;Ljdk/internal/jshell/tool/Feedback$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        13: .line 3594
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        14: .line 3596
            goto 22
        15: .line 3597
      StackMap locals:
      StackMap stack:
            aload 3 /* diagnostics */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 17
        16: .line 3598
            aload 0 /* this */
            ldc "jshell.err.failed"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        17: .line 3600
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        18: .line 3604
      StackMap locals:
      StackMap stack:
            aload 2 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 22
        19: .line 3605
            aload 0 /* this */
            aload 3 /* diagnostics */
            invokevirtual jdk.internal.jshell.tool.JShellTool.errorsOnly:(Ljava/util/List;)Ljava/util/List;
            astore 5 /* other */
        start local 5 // java.util.List other
        20: .line 3608
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* ste */
            getstatic jdk.internal.jshell.tool.Feedback$FormatWhen.UPDATE:Ljdk/internal/jshell/tool/Feedback$FormatWhen;
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            aload 5 /* other */
            invokespecial jdk.internal.jshell.tool.JShellTool$DisplayEvent.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/SnippetEvent;Ljdk/internal/jshell/tool/Feedback$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        21: .line 3609
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        end local 5 // java.util.List other
        22: .line 3612
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // java.lang.String source
        end local 3 // java.util.List diagnostics
        end local 2 // jdk.jshell.Snippet sn
        end local 1 // jdk.jshell.SnippetEvent ste
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0   23     1          ste  Ljdk/jshell/SnippetEvent;
            1   23     2           sn  Ljdk/jshell/Snippet;
            5   23     3  diagnostics  Ljava/util/List<Ljdk/jshell/Diag;>;
            6   23     4       source  Ljava/lang/String;
           20   22     5        other  Ljava/util/List<Ljdk/jshell/Diag;>;
    MethodParameters:
      Name  Flags
      ste   

  void printStackTrace(java.lang.StackTraceElement[], java.lang.StackTraceElement[]);
    descriptor: ([Ljava/lang/StackTraceElement;[Ljava/lang/StackTraceElement;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=11, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.StackTraceElement[] stes
        start local 2 // java.lang.StackTraceElement[] caused
         0: .line 3617
            iconst_0
            istore 3 /* overlap */
        start local 3 // int overlap
         1: .line 3618
            aload 2 /* caused */
            ifnull 7
         2: .line 3619
            aload 1 /* stes */
            arraylength
            aload 2 /* caused */
            arraylength
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* maxOverlap */
        start local 4 // int maxOverlap
         3: .line 3620
            goto 5
         4: .line 3622
      StackMap locals: int int
      StackMap stack:
            iinc 3 /* overlap */ 1
         5: .line 3620
      StackMap locals:
      StackMap stack:
            iload 3 /* overlap */
            iload 4 /* maxOverlap */
            if_icmpge 7
         6: .line 3621
            aload 1 /* stes */
            aload 1 /* stes */
            arraylength
            iload 3 /* overlap */
            iconst_1
            iadd
            isub
            aaload
            aload 2 /* caused */
            aload 2 /* caused */
            arraylength
            iload 3 /* overlap */
            iconst_1
            iadd
            isub
            aaload
            invokevirtual java.lang.StackTraceElement.equals:(Ljava/lang/Object;)Z
            ifne 4
        end local 4 // int maxOverlap
         7: .line 3625
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 34
         9: .line 3626
      StackMap locals: int
      StackMap stack:
            aload 1 /* stes */
            iload 4 /* i */
            aaload
            astore 5 /* ste */
        start local 5 // java.lang.StackTraceElement ste
        10: .line 3627
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
        11: .line 3628
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
            astore 7 /* cn */
        start local 7 // java.lang.String cn
        12: .line 3629
            aload 7 /* cn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 19
        13: .line 3630
            aload 7 /* cn */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* dot */
        start local 8 // int dot
        14: .line 3631
            iload 8 /* dot */
            ifle 17
        15: .line 3632
            aload 6 /* sb */
            aload 7 /* cn */
            iload 8 /* dot */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 3633
            goto 18
        17: .line 3634
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.StackTraceElement[] java.lang.StackTraceElement[] int int java.lang.StackTraceElement java.lang.StringBuilder java.lang.String int
      StackMap stack:
            aload 6 /* sb */
            aload 7 /* cn */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 3636
      StackMap locals:
      StackMap stack:
            aload 6 /* sb */
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 8 // int dot
        19: .line 3638
      StackMap locals:
      StackMap stack:
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 22
        20: .line 3639
            aload 6 /* sb */
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 3640
            aload 6 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 3642
      StackMap locals:
      StackMap stack:
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getFileName:()Ljava/lang/String;
            astore 8 /* fileName */
        start local 8 // java.lang.String fileName
        23: .line 3643
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getLineNumber:()I
            istore 9 /* lineNumber */
        start local 9 // int lineNumber
        24: .line 3644
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.isNativeMethod:()Z
            ifeq 26
        25: .line 3645
            aload 0 /* this */
            ldc "jshell.msg.native.method"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            goto 31
        26: .line 3646
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 8 /* fileName */
            ifnonnull 28
        27: .line 3647
            aload 0 /* this */
            ldc "jshell.msg.unknown.source"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            goto 31
        28: .line 3648
      StackMap locals:
      StackMap stack:
            iload 9 /* lineNumber */
            iflt 30
        29: .line 3649
            new java.lang.StringBuilder
            dup
            aload 8 /* fileName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 9 /* lineNumber */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 31
        30: .line 3650
      StackMap locals:
      StackMap stack:
            aload 8 /* fileName */
        31: .line 3644
      StackMap locals:
      StackMap stack: java.lang.String
            astore 10 /* loc */
        start local 10 // java.lang.String loc
        32: .line 3651
            aload 0 /* this */
            ldc "      at %s(%s)"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* sb */
            aastore
            dup
            iconst_1
            aload 10 /* loc */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 10 // java.lang.String loc
        end local 9 // int lineNumber
        end local 8 // java.lang.String fileName
        end local 7 // java.lang.String cn
        end local 6 // java.lang.StringBuilder sb
        end local 5 // java.lang.StackTraceElement ste
        33: .line 3625
            iinc 4 /* i */ 1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.StackTraceElement[] java.lang.StackTraceElement[] int int
      StackMap stack:
        34: iload 4 /* i */
            aload 1 /* stes */
            arraylength
            iload 3 /* overlap */
            isub
            if_icmplt 9
        end local 4 // int i
        35: .line 3654
            iload 3 /* overlap */
            ifeq 37
        36: .line 3655
            aload 0 /* this */
            ldc "      ..."
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        37: .line 3657
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int overlap
        end local 2 // java.lang.StackTraceElement[] caused
        end local 1 // java.lang.StackTraceElement[] stes
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   38     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   38     1        stes  [Ljava/lang/StackTraceElement;
            0   38     2      caused  [Ljava/lang/StackTraceElement;
            1   38     3     overlap  I
            3    7     4  maxOverlap  I
            8   35     4           i  I
           10   33     5         ste  Ljava/lang/StackTraceElement;
           11   33     6          sb  Ljava/lang/StringBuilder;
           12   33     7          cn  Ljava/lang/String;
           14   19     8         dot  I
           23   33     8    fileName  Ljava/lang/String;
           24   33     9  lineNumber  I
           32   33    10         loc  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      stes    
      caused  

  private jdk.internal.jshell.tool.Feedback$FormatAction toAction(jdk.jshell.Snippet$Status, jdk.jshell.Snippet$Status, boolean);
    descriptor: (Ljdk/jshell/Snippet$Status;Ljdk/jshell/Snippet$Status;Z)Ljdk/internal/jshell/tool/Feedback$FormatAction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet$Status status
        start local 2 // jdk.jshell.Snippet$Status previousStatus
        start local 3 // boolean isSignatureChange
         0: .line 3661
            invokestatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$Status:()[I
            aload 1 /* status */
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iaload
            tableswitch { // 1 - 7
                    1: 1
                    2: 1
                    3: 1
                    4: 11
                    5: 9
                    6: 13
                    7: 13
              default: 13
          }
         1: .line 3665
      StackMap locals:
      StackMap stack:
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 7
         2: .line 3666
            iload 3 /* isSignatureChange */
            ifeq 4
         3: .line 3667
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.REPLACED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            goto 5
         4: .line 3668
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.MODIFIED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
         5: .line 3666
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.Feedback$FormatAction
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         6: .line 3669
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         7: .line 3670
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.ADDED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         8: .line 3672
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         9: .line 3674
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.OVERWROTE:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        10: .line 3675
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        11: .line 3677
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        12: .line 3678
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        13: .line 3683
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unexpected status: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "=>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* status */
            invokevirtual jdk.jshell.Snippet$Status.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        14: .line 3684
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        15: .line 3686
      StackMap locals: jdk.internal.jshell.tool.Feedback$FormatAction
      StackMap stack:
            aload 4 /* act */
            areturn
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        end local 3 // boolean isSignatureChange
        end local 2 // jdk.jshell.Snippet$Status previousStatus
        end local 1 // jdk.jshell.Snippet$Status status
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     1             status  Ljdk/jshell/Snippet$Status;
            0   16     2     previousStatus  Ljdk/jshell/Snippet$Status;
            0   16     3  isSignatureChange  Z
            6    7     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
            8    9     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           10   11     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           12   13     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           15   16     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
    MethodParameters:
                   Name  Flags
      status             
      previousStatus     
      isSignatureChange  

  void printSnippetStatus(jdk.jshell.DeclarationSnippet, boolean);
    descriptor: (Ljdk/jshell/DeclarationSnippet;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.DeclarationSnippet sn
        start local 2 // boolean resolve
         0: .line 3690
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.diagnostics:(Ljdk/jshell/Snippet;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            invokevirtual jdk.internal.jshell.tool.JShellTool.errorsOnly:(Ljava/util/List;)Ljava/util/List;
            astore 3 /* otherErrors */
        start local 3 // java.util.List otherErrors
         1: .line 3691
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* sn */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.status:(Ljdk/jshell/Snippet;)Ljdk/jshell/Snippet$Status;
            iload 2 /* resolve */
            aload 3 /* otherErrors */
            invokespecial jdk.internal.jshell.tool.JShellTool$DisplayEvent.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/Snippet;Ljdk/jshell/Snippet$Status;ZLjava/util/List;)V
         2: .line 3692
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
         3: .line 3693
            return
        end local 3 // java.util.List otherErrors
        end local 2 // boolean resolve
        end local 1 // jdk.jshell.DeclarationSnippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1           sn  Ljdk/jshell/DeclarationSnippet;
            0    4     2      resolve  Z
            1    4     3  otherErrors  Ljava/util/List<Ljdk/jshell/Diag;>;
    MethodParameters:
         Name  Flags
      sn       
      resolve  

  java.lang.String version();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 3865
            aload 0 /* this */
            ldc "release"
            invokevirtual jdk.internal.jshell.tool.JShellTool.version:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  java.lang.String fullVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 3871
            aload 0 /* this */
            ldc "full"
            invokevirtual jdk.internal.jshell.tool.JShellTool.version:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private java.lang.String version(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String key
         0: .line 3875
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            ifnonnull 5
         1: .line 3877
            aload 0 /* this */
            ldc "jdk.internal.jshell.tool.resources.version"
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
            invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/ResourceBundle;
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         2: .line 3878
            goto 5
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 3879
            ldc "(version info not available)"
            areturn
         5: .line 3883
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            aload 1 /* key */
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
         6: areturn
         7: .line 3885
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
            pop
         8: .line 3886
            ldc "(version info not available)"
            areturn
        end local 1 // java.lang.String key
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    9     1   key  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.util.MissingResourceException
           5     6       7  Class java.util.MissingResourceException
    MethodParameters:
      Name  Flags
      key   

  static boolean access$0(jdk.internal.jshell.tool.JShellTool, jdk.jshell.Snippet);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/Snippet;)Z
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 2504
            aload 0
            aload 1
            invokespecial jdk.internal.jshell.tool.JShellTool.isActive:(Ljdk/jshell/Snippet;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean access$1(jdk.internal.jshell.tool.JShellTool, jdk.jshell.Snippet, java.lang.String);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/Snippet;Ljava/lang/String;)Z
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 2512
            aload 0
            aload 1
            aload 2
            invokespecial jdk.internal.jshell.tool.JShellTool.matchingDeclaration:(Ljdk/jshell/Snippet;Ljava/lang/String;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$jdk$jshell$Snippet$SubKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 141
            getstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.jshell.Snippet$SubKind.values:()[Ljdk/jshell/Snippet$SubKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ANNOTATION_TYPE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 8
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ASSIGNMENT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 14
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.jshell.Snippet$SubKind.CLASS_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ENUM_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.jshell.Snippet$SubKind.INTERFACE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.jshell.Snippet$SubKind.METHOD_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 9
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.jshell.Snippet$SubKind.OTHER_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 15
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.jshell.Snippet$SubKind.SINGLE_STATIC_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_3
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.jshell.Snippet$SubKind.SINGLE_TYPE_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_1
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.jshell.Snippet$SubKind.STATEMENT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 16
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.jshell.Snippet$SubKind.STATIC_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_4
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic jdk.jshell.Snippet$SubKind.TEMP_VAR_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 12
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic jdk.jshell.Snippet$SubKind.TYPE_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_2
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic jdk.jshell.Snippet$SubKind.UNKNOWN_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 17
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_DECLARATION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 10
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_DECLARATION_WITH_INITIALIZER_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 11
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_VALUE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 13
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            dup
            putstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:[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

  static int[] $SWITCH_TABLE$jdk$jshell$Snippet$Status();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 141
            getstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$Status:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.jshell.Snippet$Status.values:()[Ljdk/jshell/Snippet$Status;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.jshell.Snippet$Status.DROPPED:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.jshell.Snippet$Status.NONEXISTENT:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            bipush 7
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.jshell.Snippet$Status.OVERWRITTEN:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.jshell.Snippet$Status.RECOVERABLE_DEFINED:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iconst_2
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.jshell.Snippet$Status.RECOVERABLE_NOT_DEFINED:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iconst_3
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.jshell.Snippet$Status.REJECTED:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.jshell.Snippet$Status.VALID:Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.ordinal:()I
            iconst_1
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            dup
            putstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$Status:[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

  private static boolean lambda$0(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.nio.file.Path p
         0: .line 1490
            iconst_1
            ireturn
        end local 0 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     p  Ljava/nio/file/Path;

  private static boolean lambda$133(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.nio.file.Path  arg0
         0: aload 0 /*  arg0 */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ireturn
        end local 0 // java.nio.file.Path  arg0
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   arg0  Ljava/nio/file/Path;

  private java.lang.Boolean lambda$16(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1786
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdImports:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.lang.Boolean lambda$17(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1789
            aload 0 /* this */
            aload 1 /* arg */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdExit:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.util.List lambda$18(java.lang.String, int, int[]);
    descriptor: (Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String sn
        start local 2 // int c
        start local 3 // int[] a
         0: .line 1791
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            ifnull 1
            aload 1 /* sn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 2
         1: .line 1793
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 1796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            new java.lang.StringBuilder
            dup
            ldc "int $$exit$$ = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* sn */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 1797
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            iload 2 /* c */
            iadd
            aload 3 /* a */
         4: .line 1796
            invokevirtual jdk.jshell.SourceCodeAnalysis.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 4 /* suggestions */
        start local 4 // java.util.List suggestions
         5: .line 1798
            aload 3 /* a */
            iconst_0
            dup2
            iaload
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            isub
            iastore
         6: .line 1799
            aload 4 /* suggestions */
            areturn
        end local 4 // java.util.List suggestions
        end local 3 // int[] a
        end local 2 // int c
        end local 1 // java.lang.String sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     1           sn  Ljava/lang/String;
            0    7     2            c  I
            0    7     3            a  [I
            5    7     4  suggestions  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;

  private java.lang.Boolean lambda$19(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1803
            aload 0 /* this */
            aload 1 /* arg */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdEnv:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.lang.Boolean lambda$20(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1806
            aload 0 /* this */
            aload 1 /* arg */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdReset:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.lang.Boolean lambda$28(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1842
            aload 0 /* this */
            iconst_m1
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdUseHistoryEntry:(I)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.lang.Boolean lambda$29(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1849
            aload 0 /* this */
            ldc "rerun"
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHelp:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private java.lang.Boolean lambda$30(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1854
            aload 0 /* this */
            ldc "rerun"
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHelp:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   arg  Ljava/lang/String;

  private static boolean lambda$31(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1878
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.shouldSuggestCompletions:Z
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$32(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1879
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider lambda$33(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1879
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.completions:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$34(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.lang.String m1
        start local 1 // java.lang.String m2
         0: .line 886
            aload 0 /* m1 */
            areturn
        end local 1 // java.lang.String m2
        end local 0 // java.lang.String m1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    m1  Ljava/lang/String;
            0    1     1    m2  Ljava/lang/String;

  private java.lang.String lambda$36();
    descriptor: ()Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 1071
            new java.lang.StringBuilder
            dup
            ldc "$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            invokevirtual jdk.internal.jshell.tool.JShellTool$NameSpace.tidNext:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private java.lang.String lambda$37(jdk.jshell.Snippet, java.lang.Integer);
    descriptor: (Ljdk/jshell/Snippet;Ljava/lang/Integer;)Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
        start local 2 // java.lang.Integer i
         0: .line 1072
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            if_acmpeq 1
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.status:(Ljdk/jshell/Snippet;)Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 2
         1: .line 1073
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            aload 1 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool$NameSpace.tid:(Ljdk/jshell/Snippet;)Ljava/lang/String;
            goto 3
         2: .line 1074
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.errorNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            aload 1 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool$NameSpace.tid:(Ljdk/jshell/Snippet;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 2 // java.lang.Integer i
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1    sn  Ljdk/jshell/Snippet;
            0    4     2     i  Ljava/lang/Integer;

  private void lambda$38(jdk.jshell.JShell);
    descriptor: (Ljdk/jshell/JShell;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.JShell deadState
         0: .line 1083
            aload 1 /* deadState */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            if_acmpne 4
         1: .line 1084
            aload 0 /* this */
            ldc "jshell.msg.terminated"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 1085
            aload 0 /* this */
            ldc "jshell.msg.terminated.restore"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 1086
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         4: .line 1088
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.jshell.JShell deadState
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0    5     1  deadState  Ljdk/jshell/JShell;

  private static boolean lambda$39(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1270
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.isRealCommand:Z
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$40(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1342
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.isRealCommand:Z
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$41(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1364
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$42(java.lang.String, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command command
         0: .line 1378
            aload 1 /* command */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command command
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     1  command  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static jdk.internal.jshell.tool.JShellTool$Command[] lambda$43(int);
    descriptor: (I)[Ljdk/internal/jshell/tool/JShellTool$Command;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            iload 0
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.util.List lambda$44(jdk.internal.jshell.tool.JShellTool$CompletionProvider, java.lang.String, int, int[]);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=7, args_size=4
        start local 1 // java.lang.String input
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1505
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
         1: .line 1507
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* space */
        start local 5 // int space
         2: .line 1508
            iload 5 /* space */
            iconst_m1
            if_icmpeq 6
         3: .line 1509
            aload 1 /* input */
            iload 5 /* space */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* rest */
        start local 6 // java.lang.String rest
         4: .line 1510
            aload 0
            aload 6 /* rest */
            iload 2 /* cursor */
            iload 5 /* space */
            isub
            iconst_1
            isub
            aload 3 /* anchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 4 /* result */
         5: .line 1511
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* space */
            iconst_1
            iadd
            iadd
            iastore
        end local 6 // java.lang.String rest
         6: .line 1514
      StackMap locals: java.util.List int
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 5 // int space
        end local 4 // java.util.List result
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String input
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     1   input  Ljava/lang/String;
            0    7     2  cursor  I
            0    7     3  anchor  [I
            1    7     4  result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            2    7     5   space  I
            4    6     6    rest  Ljava/lang/String;

  private static java.util.List lambda$45(java.util.function.Predicate, java.lang.String, int, int[]);
    descriptor: (Ljava/util/function/Predicate;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=12, args_size=4
        start local 1 // java.lang.String code
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1520
            aload 1 /* code */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastSlash */
        start local 4 // int lastSlash
         1: .line 1521
            aload 1 /* code */
            iconst_0
            iload 4 /* lastSlash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* path */
        start local 5 // java.lang.String path
         2: .line 1522
            iload 4 /* lastSlash */
            iconst_m1
            if_icmpeq 3
            aload 1 /* code */
            iload 4 /* lastSlash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 4
      StackMap locals: int java.lang.String
      StackMap stack:
         3: aload 1 /* code */
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 6 /* prefix */
        start local 6 // java.lang.String prefix
         5: .line 1523
            aload 5 /* path */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 7 /* current */
        start local 7 // java.nio.file.Path current
         6: .line 1524
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
         7: .line 1525
            aconst_null
            astore 9
            aconst_null
            astore 10
         8: aload 7 /* current */
            invokestatic java.nio.file.Files.list:(Ljava/nio/file/Path;)Ljava/util/stream/Stream;
            astore 11 /* dir */
        start local 11 // java.util.stream.Stream dir
         9: .line 1526
            aload 11 /* dir */
            aload 0
            aload 6 /* prefix */
            invokedynamic test(Ljava/util/function/Predicate;Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$46(Ljava/util/function/Predicate;Ljava/lang/String;Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        10: .line 1527
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$47(Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion; (6)
                  (Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        11: .line 1528
            aload 8 /* result */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/List;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/util/List.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        12: .line 1529
            aload 11 /* dir */
            ifnull 19
            aload 11 /* dir */
            invokeinterface java.util.stream.Stream.close:()V
            goto 19
      StackMap locals: java.util.function.Predicate java.lang.String int int[] int java.lang.String java.lang.String java.nio.file.Path java.util.List java.lang.Throwable java.lang.Throwable java.util.stream.Stream
      StackMap stack: java.lang.Throwable
        13: astore 9
            aload 11 /* dir */
            ifnull 14
            aload 11 /* dir */
            invokeinterface java.util.stream.Stream.close:()V
        end local 11 // java.util.stream.Stream dir
      StackMap locals:
      StackMap stack:
        14: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 10
            aload 9
            ifnonnull 16
            aload 10
            astore 9
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 9
            aload 10
            if_acmpeq 17
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 9
            athrow
      StackMap locals: java.util.function.Predicate java.lang.String int int[] int java.lang.String java.lang.String java.nio.file.Path java.util.List
      StackMap stack: java.io.IOException
        18: pop
        19: .line 1532
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        20: .line 1533
            invokestatic java.nio.file.FileSystems.getDefault:()Ljava/nio/file/FileSystem;
            invokevirtual java.nio.file.FileSystem.getRootDirectories:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.spliterator:()Ljava/util/Spliterator;
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
        21: .line 1534
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$49(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 1535
            aload 0
            aload 6 /* prefix */
            invokedynamic test(Ljava/util/function/Predicate;Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$50(Ljava/util/function/Predicate;Ljava/lang/String;Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        23: .line 1536
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$51(Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion; (6)
                  (Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        24: .line 1537
            aload 8 /* result */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/List;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/util/List.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        25: .line 1539
      StackMap locals:
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            aload 5 /* path */
            invokevirtual java.lang.String.length:()I
            iastore
        26: .line 1540
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // java.nio.file.Path current
        end local 6 // java.lang.String prefix
        end local 5 // java.lang.String path
        end local 4 // int lastSlash
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String code
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     1       code  Ljava/lang/String;
            0   27     2     cursor  I
            0   27     3     anchor  [I
            1   27     4  lastSlash  I
            2   27     5       path  Ljava/lang/String;
            5   27     6     prefix  Ljava/lang/String;
            6   27     7    current  Ljava/nio/file/Path;
            7   27     8     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            9   14    11        dir  Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
      Exception table:
        from    to  target  type
           9    12      13  any
           8    15      15  any
           7    18      18  Class java.io.IOException

  private static boolean lambda$53(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.nio.file.Path p
         0: .line 1545
            aload 0 /* p */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifne 3
         1: .line 1546
            aload 0 /* p */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            ldc ".zip"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 3
         2: .line 1547
            aload 0 /* p */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            ldc ".jar"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 0 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     p  Ljava/nio/file/Path;

  private static java.util.List lambda$54(java.util.function.Supplier, java.lang.String, int, int[]);
    descriptor: (Ljava/util/function/Supplier;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=7, args_size=4
        start local 1 // java.lang.String prefix
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1553
            aload 3 /* anchor */
            iconst_0
            iconst_0
            iastore
         1: .line 1554
            aload 1 /* prefix */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1555
            new java.util.HashSet
            dup
            aload 1 /* prefix */
            ldc " "
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 5 /* prior */
        start local 5 // java.util.Set prior
         3: .line 1556
            aload 5 /* prior */
            ldc "-all"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
            aload 5 /* prior */
            ldc "-history"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1557
      StackMap locals: int java.util.Set
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         5: .line 1559
      StackMap locals:
      StackMap stack:
            aload 1 /* prefix */
            iload 4 /* space */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* argPrefix */
        start local 6 // java.lang.String argPrefix
         6: .line 1560
            aload 0
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
         7: .line 1561
            aload 5 /* prior */
            invokedynamic test(Ljava/util/Set;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$55(Ljava/util/Set;Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         8: .line 1564
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$56(Ljdk/jshell/Snippet;)Ljava/util/stream/Stream; (6)
                  (Ljdk/jshell/Snippet;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         9: .line 1567
            aload 6 /* argPrefix */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$57(Ljava/lang/String;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        10: .line 1568
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool$ArgSuggestion.<init>(Ljava/lang/String;)V (8)
                  (Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        11: .line 1569
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        12: .line 1560
            areturn
        end local 6 // java.lang.String argPrefix
        end local 5 // java.util.Set prior
        end local 4 // int space
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     1     prefix  Ljava/lang/String;
            0   13     2     cursor  I
            0   13     3     anchor  [I
            2   13     4      space  I
            3   13     5      prior  Ljava/util/Set<Ljava/lang/String;>;
            6   13     6  argPrefix  Ljava/lang/String;

  private java.util.List lambda$59(jdk.internal.jshell.tool.JShellTool$CompletionProvider, java.util.function.Supplier, java.lang.String, int, int[]);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/util/function/Supplier;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 3 // java.lang.String code
        start local 4 // int cursor
        start local 5 // int[] anchor
         0: .line 1577
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         1: .line 1578
            aload 3 /* code */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
         2: .line 1579
            iload 7 /* pastSpace */
            ifne 4
         3: .line 1580
            aload 6 /* result */
            aload 1
            aload 3 /* code */
            iload 4 /* cursor */
            aload 5 /* anchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 1582
      StackMap locals: java.util.List int
      StackMap stack:
            aload 6 /* result */
            aload 0 /* this */
            aload 2
            invokevirtual jdk.internal.jshell.tool.JShellTool.snippetCompletion:(Ljava/util/function/Supplier;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            aload 3 /* code */
            iload 4 /* cursor */
            aload 5 /* anchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 1583
            aload 5 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
         6: .line 1584
            aload 6 /* result */
            areturn
        end local 7 // int pastSpace
        end local 6 // java.util.List result
        end local 5 // int[] anchor
        end local 4 // int cursor
        end local 3 // java.lang.String code
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0    7     3       code  Ljava/lang/String;
            0    7     4     cursor  I
            0    7     5     anchor  [I
            1    7     6     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            2    7     7  pastSpace  I

  private java.util.List lambda$60(java.lang.String, int, int[]);
    descriptor: (Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String code
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1592
            aload 1 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_1
            iadd
            istore 5 /* pastSpace */
        start local 5 // int pastSpace
         1: .line 1593
            iload 5 /* pastSpace */
            ifne 13
         2: .line 1597
            aload 1 /* code */
            invokevirtual java.lang.String.length:()I
            ifle 3
            aload 1 /* code */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 3
            iconst_1
            goto 4
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int[] top int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 6 /* noslash */
        start local 6 // boolean noslash
         5: .line 1598
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         6: .line 1599
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$61(Ljdk/internal/jshell/tool/JShellTool$Command;)Z (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         7: .line 1600
            iload 6 /* noslash */
            invokedynamic apply(Z)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$62(ZLjdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         8: .line 1603
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$86(I)[Ljava/lang/String; (6)
                  (I)[Ljava/lang/String;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.String[]
         9: .line 1598
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        10: .line 1604
            aload 1 /* code */
            iload 2 /* cursor */
            aload 3 /* anchor */
            invokevirtual jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
        11: .line 1598
            astore 4 /* result */
        end local 6 // boolean noslash
        start local 4 // java.util.List result
        12: .line 1605
            goto 19
        end local 4 // java.util.List result
      StackMap locals:
      StackMap stack:
        13: aload 1 /* code */
            ldc "/se"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 14
            aload 1 /* code */
            ldc "se"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 18
        14: .line 1606
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            getstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        15: .line 1607
            aload 1 /* code */
            iload 5 /* pastSpace */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            iload 2 /* cursor */
            iload 5 /* pastSpace */
            isub
            aload 3 /* anchor */
            invokevirtual jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
        16: .line 1606
            astore 4 /* result */
        start local 4 // java.util.List result
        17: .line 1608
            goto 19
        end local 4 // java.util.List result
        18: .line 1609
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
        19: .line 1611
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int[] java.util.List int
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* pastSpace */
            iadd
            iastore
        20: .line 1612
            aload 4 /* result */
            areturn
        end local 5 // int pastSpace
        end local 4 // java.util.List result
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String code
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   21     1       code  Ljava/lang/String;
            0   21     2     cursor  I
            0   21     3     anchor  [I
           12   13     4     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
           17   18     4     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
           19   21     4     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            1   21     5  pastSpace  I
            5   12     6    noslash  Z

  private static java.util.List lambda$64(java.lang.String, int, int[]);
    descriptor: (Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.lang.String code
        start local 1 // int cursor
        start local 2 // int[] anchor
         0: .line 1618
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.List result
         1: .line 1619
            aload 0 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1620
            iload 4 /* space */
            iconst_m1
            if_icmpne 4
         3: .line 1621
            aload 3 /* result */
            getstatic jdk.internal.jshell.tool.JShellTool.SAVE_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            aload 0 /* code */
            iload 1 /* cursor */
            aload 2 /* anchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 1623
      StackMap locals: java.util.List int
      StackMap stack:
            aload 3 /* result */
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            aload 0 /* code */
            iload 4 /* space */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            iload 1 /* cursor */
            iload 4 /* space */
            isub
            iconst_1
            isub
            aload 2 /* anchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 1624
            aload 2 /* anchor */
            iconst_0
            dup2
            iaload
            iload 4 /* space */
            iconst_1
            iadd
            iadd
            iastore
         6: .line 1625
            aload 3 /* result */
            areturn
        end local 4 // int space
        end local 3 // java.util.List result
        end local 2 // int[] anchor
        end local 1 // int cursor
        end local 0 // java.lang.String code
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    code  Ljava/lang/String;
            0    7     1  cursor  I
            0    7     2  anchor  [I
            1    7     3  result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            2    7     4   space  I

  private static java.util.List lambda$65(jdk.internal.jshell.tool.JShellTool$CompletionProvider, java.lang.String, int, int[]);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=9, args_size=4
        start local 1 // java.lang.String code
        start local 2 // int cursor
        start local 3 // int[] anchor
         0: .line 1632
            getstatic jdk.internal.jshell.tool.JShellTool.OPTION_VALUE_PATTERN:Ljava/util/regex/Pattern;
            aload 1 /* code */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 4 /* ovm */
        start local 4 // java.util.regex.Matcher ovm
         1: .line 1633
            aload 4 /* ovm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
         2: .line 1634
            aload 4 /* ovm */
            ldc "flag"
            invokevirtual java.util.regex.Matcher.group:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* flag */
        start local 5 // java.lang.String flag
         3: .line 1635
            getstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         4: .line 1636
            aload 5 /* flag */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  jdk/internal/jshell/tool/JShellTool.lambda$66(Ljava/lang/String;Ljava/util/Map$Entry;)Z (6)
                  (Ljava/util/Map$Entry;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         5: .line 1637
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$67(Ljava/util/Map$Entry;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider; (6)
                  (Ljava/util/Map$Entry;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 1638
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         7: .line 1635
            astore 6 /* ps */
        start local 6 // java.util.List ps
         8: .line 1639
            aload 6 /* ps */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 15
         9: .line 1640
            aload 4 /* ovm */
            ldc "val"
            invokevirtual java.util.regex.Matcher.start:(Ljava/lang/String;)I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        10: .line 1641
            aload 6 /* ps */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
        11: .line 1642
            aload 4 /* ovm */
            ldc "val"
            invokevirtual java.util.regex.Matcher.group:(Ljava/lang/String;)Ljava/lang/String;
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        12: .line 1641
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 8 /* result */
        start local 8 // java.util.List result
        13: .line 1643
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        14: .line 1644
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        end local 6 // java.util.List ps
        end local 5 // java.lang.String flag
        15: .line 1647
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
            aload 1 /* code */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 5 /* om */
        start local 5 // java.util.regex.Matcher om
        16: .line 1648
            aload 5 /* om */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 29
        17: .line 1649
            aload 5 /* om */
            ldc "flag"
            invokevirtual java.util.regex.Matcher.start:(Ljava/lang/String;)I
            istore 6 /* pastSpace */
        start local 6 // int pastSpace
        18: .line 1650
            aload 0
        19: .line 1651
            aload 5 /* om */
            ldc "flag"
            invokevirtual java.util.regex.Matcher.group:(Ljava/lang/String;)Ljava/lang/String;
            iload 2 /* cursor */
            iload 6 /* pastSpace */
            isub
            aload 3 /* anchor */
        20: .line 1650
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 7 /* result */
        start local 7 // java.util.List result
        21: .line 1652
            aload 5 /* om */
            ldc "dd"
            invokevirtual java.util.regex.Matcher.group:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 27
        22: .line 1653
            aload 7 /* result */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        23: .line 1654
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$68(Ljdk/jshell/SourceCodeAnalysis$Suggestion;)Ljdk/internal/jshell/tool/JShellTool$1; (6)
                  (Ljdk/jshell/SourceCodeAnalysis$Suggestion;)Ljdk/internal/jshell/tool/JShellTool$1;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        24: .line 1665
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        25: .line 1653
            astore 7 /* result */
        26: .line 1666
            iinc 6 /* pastSpace */ -1
        27: .line 1668
      StackMap locals: java.util.regex.Matcher int java.util.List
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 6 /* pastSpace */
            iadd
            iastore
        28: .line 1669
            aload 7 /* result */
            areturn
        end local 7 // java.util.List result
        end local 6 // int pastSpace
        29: .line 1671
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
            aload 1 /* code */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 6 /* opp */
        start local 6 // java.util.regex.Matcher opp
        30: .line 1672
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 37
        31: .line 1673
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        32: .line 1674
            aload 0
        33: .line 1675
            ldc ""
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        34: .line 1674
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 8 /* result */
        start local 8 // java.util.List result
        35: .line 1676
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        36: .line 1677
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        37: .line 1679
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
        end local 6 // java.util.regex.Matcher opp
        end local 5 // java.util.regex.Matcher om
        end local 4 // java.util.regex.Matcher ovm
        end local 3 // int[] anchor
        end local 2 // int cursor
        end local 1 // java.lang.String code
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   38     1       code  Ljava/lang/String;
            0   38     2     cursor  I
            0   38     3     anchor  [I
            1   38     4        ovm  Ljava/util/regex/Matcher;
            3   15     5       flag  Ljava/lang/String;
            8   15     6         ps  Ljava/util/List<Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;>;
           10   15     7  pastSpace  I
           13   15     8     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
           16   38     5         om  Ljava/util/regex/Matcher;
           18   29     6  pastSpace  I
           21   29     7     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
           30   38     6        opp  Ljava/util/regex/Matcher;
           32   37     7  pastSpace  I
           35   37     8     result  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;

  private static java.util.List lambda$69(jdk.internal.jshell.tool.JShellTool$CompletionProvider, jdk.internal.jshell.tool.JShellTool$CompletionProvider, java.lang.String, int, int[]);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;Ljava/lang/String;I[I)Ljava/util/List;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=10, args_size=5
        start local 2 // java.lang.String code
        start local 3 // int cursor
        start local 4 // int[] anchor
         0: .line 1701
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 5 /* leftAnchor */
        start local 5 // int[] leftAnchor
         1: .line 1702
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 6 /* rightAnchor */
        start local 6 // int[] rightAnchor
         2: .line 1704
            aload 0
            aload 2 /* code */
            iload 3 /* cursor */
            aload 5 /* leftAnchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 7 /* leftSuggestions */
        start local 7 // java.util.List leftSuggestions
         3: .line 1705
            aload 1
            aload 2 /* code */
            iload 3 /* cursor */
            aload 6 /* rightAnchor */
            invokeinterface jdk.internal.jshell.tool.JShellTool$CompletionProvider.completionSuggestions:(Ljava/lang/String;I[I)Ljava/util/List;
            astore 8 /* rightSuggestions */
        start local 8 // java.util.List rightSuggestions
         4: .line 1707
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* suggestions */
        start local 9 // java.util.List suggestions
         5: .line 1709
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmplt 8
         6: .line 1710
            aload 4 /* anchor */
            iconst_0
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            iastore
         7: .line 1711
            aload 9 /* suggestions */
            aload 7 /* leftSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 1714
      StackMap locals: jdk.internal.jshell.tool.JShellTool$CompletionProvider jdk.internal.jshell.tool.JShellTool$CompletionProvider java.lang.String int int[] int[] int[] java.util.List java.util.List java.util.List
      StackMap stack:
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmpgt 11
         9: .line 1715
            aload 4 /* anchor */
            iconst_0
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            iastore
        10: .line 1716
            aload 9 /* suggestions */
            aload 8 /* rightSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 1719
      StackMap locals:
      StackMap stack:
            aload 9 /* suggestions */
            areturn
        end local 9 // java.util.List suggestions
        end local 8 // java.util.List rightSuggestions
        end local 7 // java.util.List leftSuggestions
        end local 6 // int[] rightAnchor
        end local 5 // int[] leftAnchor
        end local 4 // int[] anchor
        end local 3 // int cursor
        end local 2 // java.lang.String code
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     2              code  Ljava/lang/String;
            0   12     3            cursor  I
            0   12     4            anchor  [I
            1   12     5        leftAnchor  [I
            2   12     6       rightAnchor  [I
            3   12     7   leftSuggestions  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            4   12     8  rightSuggestions  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
            5   12     9       suggestions  Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;

  private boolean lambda$70(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 1731
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.status:(Ljdk/jshell/Snippet;)Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ireturn
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    sn  Ljdk/jshell/Snippet;

  private static boolean lambda$71(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1736
            aload 0 /* sn */
            invokevirtual jdk.jshell.Snippet.kind:()Ljdk/jshell/Snippet$Kind;
            getstatic jdk.jshell.Snippet$Kind.VAR:Ljdk/jshell/Snippet$Kind;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    sn  Ljdk/jshell/Snippet;

  private static jdk.jshell.VarSnippet lambda$72(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Ljdk/jshell/VarSnippet;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1737
            aload 0 /* sn */
            checkcast jdk.jshell.VarSnippet
            areturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    sn  Ljdk/jshell/Snippet;

  private static boolean lambda$73(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1742
            aload 0 /* sn */
            invokevirtual jdk.jshell.Snippet.kind:()Ljdk/jshell/Snippet$Kind;
            getstatic jdk.jshell.Snippet$Kind.METHOD:Ljdk/jshell/Snippet$Kind;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    sn  Ljdk/jshell/Snippet;

  private static jdk.jshell.MethodSnippet lambda$74(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Ljdk/jshell/MethodSnippet;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1743
            aload 0 /* sn */
            checkcast jdk.jshell.MethodSnippet
            areturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    sn  Ljdk/jshell/Snippet;

  private static boolean lambda$75(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1748
            aload 0 /* sn */
            invokevirtual jdk.jshell.Snippet.kind:()Ljdk/jshell/Snippet$Kind;
            getstatic jdk.jshell.Snippet$Kind.TYPE_DECL:Ljdk/jshell/Snippet$Kind;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    sn  Ljdk/jshell/Snippet;

  private static jdk.jshell.TypeDeclSnippet lambda$76(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Ljdk/jshell/TypeDeclSnippet;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 1749
            aload 0 /* sn */
            checkcast jdk.jshell.TypeDeclSnippet
            areturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    sn  Ljdk/jshell/Snippet;

  private static boolean lambda$77(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 1903
            aload 1 /* s */
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;

  private static java.util.AbstractMap$SimpleEntry lambda$78(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 1904
            new java.util.AbstractMap$SimpleEntry
            dup
            new java.lang.StringBuilder
            dup
            ldc "/set "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "help.set."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;

  private static boolean lambda$79(java.lang.String, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1916
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
         1: .line 1917
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     1     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$80(boolean, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (ZLjdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1918
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.showInHelp:Z
            ifne 3
         1: .line 1919
            iload 0
            ifeq 2
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            if_acmpeq 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static int lambda$81(jdk.internal.jshell.tool.JShellTool$Command, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;Ljdk/internal/jshell/tool/JShellTool$Command;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c1
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command c2
         0: .line 1920
            aload 0 /* c1 */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 1 /* c2 */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command c2
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    c1  Ljdk/internal/jshell/tool/JShellTool$Command;
            0    1     1    c2  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.util.AbstractMap$SimpleEntry lambda$82(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/util/AbstractMap$SimpleEntry;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1921
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 0 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private void lambda$83(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String retained
         0: .line 1974
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            aload 1 /* retained */
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.put:(Ljava/lang/String;Ljava/lang/String;)V
            return
        end local 1 // java.lang.String retained
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1  retained  Ljava/lang/String;

  private void lambda$84(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String fb
         0: .line 1989
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "FEEDBACK"
            aload 1 /* fb */
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.put:(Ljava/lang/String;Ljava/lang/String;)V
            return
        end local 1 // java.lang.String fb
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    fb  Ljava/lang/String;

  private static boolean lambda$85(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 2004
            aload 1 /* s */
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;

  private static java.lang.String[] lambda$86(int);
    descriptor: (I)[Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            iload 0
            anewarray java.lang.String
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static boolean lambda$87(java.lang.String, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 2399
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
         1: .line 2400
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     1     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$89(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 2425
            aload 1 /* s */
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;

  private static boolean lambda$91(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2438
            aload 0 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.showInHelp:Z
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private java.lang.String lambda$92(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2439
            new java.lang.StringBuilder
            dup
            aload 1 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".args"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private java.lang.String lambda$93(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2440
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".summary"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$94(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2444
            aload 0 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$95(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2445
            aload 0 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private java.lang.String lambda$96(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 2446
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".summary"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command cmd
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$97();
    descriptor: ()Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 2456
            ldc "="
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void lambda$100(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 2819
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* sn */
            invokevirtual jdk.jshell.JShell.drop:(Ljdk/jshell/Snippet;)Ljava/util/List;
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.handleEvent(Ljdk/jshell/SnippetEvent;)Z (7)
                  (Ljdk/jshell/SnippetEvent;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
            return
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    sn  Ljdk/jshell/Snippet;

  private void lambda$104(java.util.Set, jdk.jshell.Snippet);
    descriptor: (Ljava/util/Set;Ljdk/jshell/Snippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 2 // jdk.jshell.Snippet sn
         0: .line 2831
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 3 /* src */
        start local 3 // java.lang.String src
         1: .line 2832
            invokestatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:()[I
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iaload
            tableswitch { // 12 - 17
                   12: 3
                   13: 2
                   14: 3
                   15: 3
                   16: 7
                   17: 3
              default: 14
          }
         2: .line 2834
      StackMap locals: java.lang.String
      StackMap stack:
            goto 15
         3: .line 2839
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 5
         4: .line 2840
            new java.lang.StringBuilder
            dup
            aload 3 /* src */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* src */
         5: .line 2842
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 2843
            goto 15
         7: .line 2845
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc "}"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 10
         8: .line 2848
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            aload 3 /* src */
            invokevirtual jdk.jshell.SourceCodeAnalysis.analyzeCompletion:(Ljava/lang/String;)Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.source:()Ljava/lang/String;
            astore 3 /* src */
         9: .line 2849
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2850
            new java.lang.StringBuilder
            dup
            aload 3 /* src */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* src */
        12: .line 2852
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2853
            goto 15
        14: .line 2855
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String src
        15: .line 2858
      StackMap locals:
      StackMap stack:
            return
        end local 2 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     2    sn  Ljdk/jshell/Snippet;
            1   15     3   src  Ljava/lang/String;

  private void lambda$105(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String s
         0: .line 2866
            aload 0 /* this */
            ldc "Edit Error: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* s */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
            return
        end local 1 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1     s  Ljava/lang/String;

  private void lambda$106(java.lang.String[], java.util.function.Consumer, java.lang.String);
    descriptor: ([Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 3 // java.lang.String s
         0: .line 2875
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.terminalEditorRunning:()Z
            ifeq 3
         1: .line 2876
            aload 1
            iconst_0
            aload 3 /* s */
            aastore
         2: .line 2877
            goto 4
         3: .line 2878
      StackMap locals:
      StackMap stack:
            aload 2
            aload 3 /* s */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 2880
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String s
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    5     3     s  Ljava/lang/String;

  private void lambda$107();
    descriptor: ()V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2883
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.suspend:()V
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private void lambda$108();
    descriptor: ()V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2884
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.resume:()V
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private void lambda$109();
    descriptor: ()V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2886
            aload 0 /* this */
            ldc "jshell.msg.press.return.to.leave.edit.mode"
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;

  private void lambda$112(boolean[], jdk.jshell.Snippet);
    descriptor: ([ZLjdk/jshell/Snippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 2 // jdk.jshell.Snippet sn
         0: .line 2989
            aload 1
            iconst_0
            baload
            ifne 3
         1: .line 2990
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         2: .line 2991
            aload 1
            iconst_0
            iconst_1
            bastore
         3: .line 2993
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            ldc "%4s : %s\n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            ldc "\n"
            ldc "\n       "
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         4: .line 2994
            return
        end local 2 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    5     2    sn  Ljdk/jshell/Snippet;

  private static boolean lambda$113(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 3212
            aload 0 /* s */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;

  private void lambda$120(jdk.jshell.VarSnippet);
    descriptor: (Ljdk/jshell/VarSnippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.VarSnippet vk
         0: .line 3278
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* vk */
            invokevirtual jdk.jshell.JShell.status:(Ljdk/jshell/Snippet;)Ljdk/jshell/Snippet$Status;
            getstatic jdk.jshell.Snippet$Status.VALID:Ljdk/jshell/Snippet$Status;
            if_acmpne 2
         1: .line 3279
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            aload 1 /* vk */
            invokevirtual jdk.jshell.JShell.varValue:(Ljdk/jshell/VarSnippet;)Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.Feedback.truncateVarValue:(Ljava/lang/String;)Ljava/lang/String;
            goto 3
         2: .line 3280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.msg.vars.not.active"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
         3: .line 3278
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* val */
        start local 2 // java.lang.String val
         4: .line 3281
            aload 0 /* this */
            ldc "  %s %s = %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* vk */
            invokevirtual jdk.jshell.VarSnippet.typeName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* vk */
            invokevirtual jdk.jshell.VarSnippet.name:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* val */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 2 // java.lang.String val
         5: .line 3282
            return
        end local 1 // jdk.jshell.VarSnippet vk
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    6     1    vk  Ljdk/jshell/VarSnippet;
            4    5     2   val  Ljava/lang/String;

  private void lambda$123(jdk.jshell.MethodSnippet);
    descriptor: (Ljdk/jshell/MethodSnippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=4, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.MethodSnippet meth
         0: .line 3293
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.signature:()Ljava/lang/String;
            astore 2 /* sig */
        start local 2 // java.lang.String sig
         1: .line 3294
            aload 2 /* sig */
            ldc ")"
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            iconst_1
            iadd
            istore 3 /* i */
        start local 3 // int i
         2: .line 3295
            iload 3 /* i */
            ifgt 5
         3: .line 3296
            aload 0 /* this */
            ldc "  %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.name:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 3297
            goto 6
         5: .line 3298
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 0 /* this */
            ldc "  %s %s%s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* sig */
            iload 3 /* i */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.name:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* sig */
            iconst_0
            iload 3 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         6: .line 3300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* meth */
            iconst_1
            invokevirtual jdk.internal.jshell.tool.JShellTool.printSnippetStatus:(Ljdk/jshell/DeclarationSnippet;Z)V
        end local 3 // int i
        end local 2 // java.lang.String sig
         7: .line 3301
            return
        end local 1 // jdk.jshell.MethodSnippet meth
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    8     1  meth  Ljdk/jshell/MethodSnippet;
            1    7     2   sig  Ljava/lang/String;
            2    7     3     i  I

  private void lambda$126(jdk.jshell.TypeDeclSnippet);
    descriptor: (Ljdk/jshell/TypeDeclSnippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.TypeDeclSnippet ck
         0: .line 3314
            invokestatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:()[I
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iaload
            tableswitch { // 5 - 8
                    5: 3
                    6: 1
                    7: 5
                    8: 7
              default: 9
          }
         1: .line 3316
      StackMap locals:
      StackMap stack:
            ldc "interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         2: .line 3317
            goto 11
        end local 2 // java.lang.String kind
         3: .line 3319
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         4: .line 3320
            goto 11
        end local 2 // java.lang.String kind
         5: .line 3322
      StackMap locals:
      StackMap stack:
            ldc "enum"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         6: .line 3323
            goto 11
        end local 2 // java.lang.String kind
         7: .line 3325
      StackMap locals:
      StackMap stack:
            ldc "@interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         8: .line 3326
            goto 11
        end local 2 // java.lang.String kind
         9: .line 3328
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.$assertionsDisabled:Z
            ifne 10
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Wrong kind"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        10: .line 3329
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        11: .line 3332
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "  %s %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* kind */
            aastore
            dup
            iconst_1
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.name:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 3333
            aload 0 /* this */
            aload 1 /* ck */
            iconst_1
            invokevirtual jdk.internal.jshell.tool.JShellTool.printSnippetStatus:(Ljdk/jshell/DeclarationSnippet;Z)V
        end local 2 // java.lang.String kind
        13: .line 3334
            return
        end local 1 // jdk.jshell.TypeDeclSnippet ck
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   14     1    ck  Ljdk/jshell/TypeDeclSnippet;
            2    3     2  kind  Ljava/lang/String;
            4    5     2  kind  Ljava/lang/String;
            6    7     2  kind  Ljava/lang/String;
            8    9     2  kind  Ljava/lang/String;
           11   13     2  kind  Ljava/lang/String;

  private void lambda$127(jdk.jshell.ImportSnippet);
    descriptor: (Ljdk/jshell/ImportSnippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.ImportSnippet ik
         0: .line 3340
            aload 0 /* this */
            ldc "  import %s%s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ik */
            invokevirtual jdk.jshell.ImportSnippet.isStatic:()Z
            ifeq 1
            ldc "static "
            goto 2
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.ImportSnippet
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.Object[] java.lang.Object[] int
         1: ldc ""
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.ImportSnippet
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
         2: aastore
            dup
            iconst_1
            aload 1 /* ik */
            invokevirtual jdk.jshell.ImportSnippet.fullname:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 3341
            return
        end local 1 // jdk.jshell.ImportSnippet ik
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1    ik  Ljdk/jshell/ImportSnippet;

  private static boolean lambda$129(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 3385
            iconst_1
            ireturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    sn  Ljdk/jshell/Snippet;

  private void lambda$130(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet sn
         0: .line 3388
            aload 0 /* this */
            aload 1 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunSnippet:(Ljdk/jshell/Snippet;)V
            return
        end local 1 // jdk.jshell.Snippet sn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1    sn  Ljdk/jshell/Snippet;

  private void lambda$132(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String l
         0: .line 3481
            aload 0 /* this */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* l */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
            return
        end local 1 // java.lang.String l
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1     l  Ljava/lang/String;

  private static boolean lambda$46(java.util.function.Predicate, java.lang.String, java.nio.file.Path);
    descriptor: (Ljava/util/function/Predicate;Ljava/lang/String;Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // java.nio.file.Path f
         0: .line 1526
            aload 0
            aload 2 /* f */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 1
            aload 2 /* f */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            aload 1
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // java.nio.file.Path f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2     f  Ljava/nio/file/Path;

  private static jdk.internal.jshell.tool.JShellTool$ArgSuggestion lambda$47(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.nio.file.Path f
         0: .line 1527
            new jdk.internal.jshell.tool.JShellTool$ArgSuggestion
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* f */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            aload 0 /* f */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 1
            ldc "/"
            goto 2
      StackMap locals: java.nio.file.Path
      StackMap stack: new 0 new 0 java.lang.StringBuilder
         1: ldc ""
      StackMap locals: java.nio.file.Path
      StackMap stack: new 0 new 0 java.lang.StringBuilder java.lang.String
         2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.JShellTool$ArgSuggestion.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.nio.file.Path f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     f  Ljava/nio/file/Path;

  private static boolean lambda$49(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.nio.file.Path root
         0: .line 1534
            aload 0 /* root */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ireturn
        end local 0 // java.nio.file.Path root
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  root  Ljava/nio/file/Path;

  private static boolean lambda$50(java.util.function.Predicate, java.lang.String, java.nio.file.Path);
    descriptor: (Ljava/util/function/Predicate;Ljava/lang/String;Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // java.nio.file.Path root
         0: .line 1535
            aload 0
            aload 2 /* root */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 1
            aload 2 /* root */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            aload 1
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // java.nio.file.Path root
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2  root  Ljava/nio/file/Path;

  private static jdk.internal.jshell.tool.JShellTool$ArgSuggestion lambda$51(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljdk/internal/jshell/tool/JShellTool$ArgSuggestion;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.nio.file.Path root
         0: .line 1536
            new jdk.internal.jshell.tool.JShellTool$ArgSuggestion
            dup
            aload 0 /* root */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.JShellTool$ArgSuggestion.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.nio.file.Path root
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  root  Ljava/nio/file/Path;

  private static boolean lambda$55(java.util.Set, jdk.jshell.Snippet);
    descriptor: (Ljava/util/Set;Ljdk/jshell/Snippet;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // jdk.jshell.Snippet k
         0: .line 1561
            aload 0
            aload 1 /* k */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 1562
            aload 1 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         2: .line 1563
            aload 0
            aload 1 /* k */
            checkcast jdk.jshell.DeclarationSnippet
            invokevirtual jdk.jshell.DeclarationSnippet.name:()Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: ireturn
        end local 1 // jdk.jshell.Snippet k
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     1     k  Ljdk/jshell/Snippet;

  private static java.util.stream.Stream lambda$56(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet k
         0: .line 1564
            aload 0 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 2
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 1565
            new java.lang.StringBuilder
            dup
            aload 0 /* k */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            new java.lang.StringBuilder
            dup
            aload 0 /* k */
            checkcast jdk.jshell.DeclarationSnippet
            invokevirtual jdk.jshell.DeclarationSnippet.name:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            goto 3
         2: .line 1566
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* k */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
      StackMap locals:
      StackMap stack: java.util.stream.Stream
         3: areturn
        end local 0 // jdk.jshell.Snippet k
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     k  Ljdk/jshell/Snippet;

  private static boolean lambda$57(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String k
         0: .line 1567
            aload 1 /* k */
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String k
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     k  Ljava/lang/String;

  private static boolean lambda$61(jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (Ljdk/internal/jshell/tool/JShellTool$Command;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
         0: .line 1599
            aload 0 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getfield jdk.internal.jshell.tool.JShellTool$CommandKind.showInHelp:Z
            ifne 1
            aload 0 /* cmd */
            getfield jdk.internal.jshell.tool.JShellTool$Command.kind:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            if_acmpeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool$Command cmd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   cmd  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static java.lang.String lambda$62(boolean, jdk.internal.jshell.tool.JShellTool$Command);
    descriptor: (ZLjdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 1 // jdk.internal.jshell.tool.JShellTool$Command c
         0: .line 1600
            new java.lang.StringBuilder
            dup
            iload 0
            ifeq 2
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 1601
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 3
         2: .line 1602
      StackMap locals: int jdk.internal.jshell.tool.JShellTool$Command
      StackMap stack: new 0 new 0
            aload 1 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
      StackMap locals: int jdk.internal.jshell.tool.JShellTool$Command
      StackMap stack: new 0 new 0 java.lang.String
         3: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1600
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1602
            areturn
        end local 1 // jdk.internal.jshell.tool.JShellTool$Command c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     1     c  Ljdk/internal/jshell/tool/JShellTool$Command;

  private static boolean lambda$66(java.lang.String, java.util.Map$Entry);
    descriptor: (Ljava/lang/String;Ljava/util/Map$Entry;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.util.Map$Entry es
         0: .line 1636
            aload 1 /* es */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 0
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.util.Map$Entry es
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1    es  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;>;

  private static jdk.internal.jshell.tool.JShellTool$CompletionProvider lambda$67(java.util.Map$Entry);
    descriptor: (Ljava/util/Map$Entry;)Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Map$Entry es
         0: .line 1637
            aload 0 /* es */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
            areturn
        end local 0 // java.util.Map$Entry es
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    es  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;>;

  private static jdk.internal.jshell.tool.JShellTool$1 lambda$68(jdk.jshell.SourceCodeAnalysis$Suggestion);
    descriptor: (Ljdk/jshell/SourceCodeAnalysis$Suggestion;)Ljdk/internal/jshell/tool/JShellTool$1;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.jshell.SourceCodeAnalysis$Suggestion sug
         0: .line 1654
            new jdk.internal.jshell.tool.JShellTool$1
            dup
            aload 0 /* sug */
            invokespecial jdk.internal.jshell.tool.JShellTool$1.<init>:(Ljdk/jshell/SourceCodeAnalysis$Suggestion;)V
         1: .line 1664
            areturn
        end local 0 // jdk.jshell.SourceCodeAnalysis$Suggestion sug
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   sug  Ljdk/jshell/SourceCodeAnalysis$Suggestion;
}
SourceFile: "JShellTool.java"
NestMembers:
  jdk.internal.jshell.tool.JShellTool$1  jdk.internal.jshell.tool.JShellTool$1  jdk.internal.jshell.tool.JShellTool$1ComputeImports  jdk.internal.jshell.tool.JShellTool$2  jdk.internal.jshell.tool.JShellTool$3  jdk.internal.jshell.tool.JShellTool$ArgSuggestion  jdk.internal.jshell.tool.JShellTool$ArgToSnippets  jdk.internal.jshell.tool.JShellTool$Command  jdk.internal.jshell.tool.JShellTool$CommandKind  jdk.internal.jshell.tool.JShellTool$CompletionProvider  jdk.internal.jshell.tool.JShellTool$DisplayEvent  jdk.internal.jshell.tool.JShellTool$EditorSetting  jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider  jdk.internal.jshell.tool.JShellTool$InitMessageHandler  jdk.internal.jshell.tool.JShellTool$NameSpace  jdk.internal.jshell.tool.JShellTool$OptionKind  jdk.internal.jshell.tool.JShellTool$OptionParserBase  jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine  jdk.internal.jshell.tool.JShellTool$OptionParserReload  jdk.internal.jshell.tool.JShellTool$Options  jdk.internal.jshell.tool.JShellTool$ReplayableHistory  jdk.internal.jshell.tool.JShellTool$SaveHandler  jdk.internal.jshell.tool.JShellTool$SetEditor  jdk.internal.jshell.tool.JShellTool$SnippetInfo  jdk.internal.jshell.tool.JShellTool$SnippetPredicate
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public SimpleEntry = java.util.AbstractMap$SimpleEntry of java.util.AbstractMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public final FormatAction = jdk.internal.jshell.tool.Feedback$FormatAction of jdk.internal.jshell.tool.Feedback
  public final FormatWhen = jdk.internal.jshell.tool.Feedback$FormatWhen of jdk.internal.jshell.tool.Feedback
  InputInterruptedException = jdk.internal.jshell.tool.IOContext$InputInterruptedException of jdk.internal.jshell.tool.IOContext
  jdk.internal.jshell.tool.JShellTool$1
  ComputeImports = jdk.internal.jshell.tool.JShellTool$1ComputeImports
  jdk.internal.jshell.tool.JShellTool$2
  jdk.internal.jshell.tool.JShellTool$3
  ArgSuggestion = jdk.internal.jshell.tool.JShellTool$ArgSuggestion of jdk.internal.jshell.tool.JShellTool
  private ArgToSnippets = jdk.internal.jshell.tool.JShellTool$ArgToSnippets of jdk.internal.jshell.tool.JShellTool
  final Command = jdk.internal.jshell.tool.JShellTool$Command of jdk.internal.jshell.tool.JShellTool
  final CommandKind = jdk.internal.jshell.tool.JShellTool$CommandKind of jdk.internal.jshell.tool.JShellTool
  abstract CompletionProvider = jdk.internal.jshell.tool.JShellTool$CompletionProvider of jdk.internal.jshell.tool.JShellTool
  DisplayEvent = jdk.internal.jshell.tool.JShellTool$DisplayEvent of jdk.internal.jshell.tool.JShellTool
  EditorSetting = jdk.internal.jshell.tool.JShellTool$EditorSetting of jdk.internal.jshell.tool.JShellTool
  final FixedCompletionProvider = jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider of jdk.internal.jshell.tool.JShellTool
  private InitMessageHandler = jdk.internal.jshell.tool.JShellTool$InitMessageHandler of jdk.internal.jshell.tool.JShellTool
  NameSpace = jdk.internal.jshell.tool.JShellTool$NameSpace of jdk.internal.jshell.tool.JShellTool
  private final OptionKind = jdk.internal.jshell.tool.JShellTool$OptionKind of jdk.internal.jshell.tool.JShellTool
  private OptionParserBase = jdk.internal.jshell.tool.JShellTool$OptionParserBase of jdk.internal.jshell.tool.JShellTool
  private OptionParserCommandLine = jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine of jdk.internal.jshell.tool.JShellTool
  private OptionParserReload = jdk.internal.jshell.tool.JShellTool$OptionParserReload of jdk.internal.jshell.tool.JShellTool
  private Options = jdk.internal.jshell.tool.JShellTool$Options of jdk.internal.jshell.tool.JShellTool
  private ReplayableHistory = jdk.internal.jshell.tool.JShellTool$ReplayableHistory of jdk.internal.jshell.tool.JShellTool
  private SaveHandler = jdk.internal.jshell.tool.JShellTool$SaveHandler of jdk.internal.jshell.tool.JShellTool
  SetEditor = jdk.internal.jshell.tool.JShellTool$SetEditor of jdk.internal.jshell.tool.JShellTool
  SnippetInfo = jdk.internal.jshell.tool.JShellTool$SnippetInfo of jdk.internal.jshell.tool.JShellTool
  private abstract SnippetPredicate = jdk.internal.jshell.tool.JShellTool$SnippetPredicate of jdk.internal.jshell.tool.JShellTool
  public Builder = jdk.jshell.JShell$Builder of jdk.jshell.JShell
  public Subscription = jdk.jshell.JShell$Subscription of jdk.jshell.JShell
  public final Kind = jdk.jshell.Snippet$Kind of jdk.jshell.Snippet
  public final Status = jdk.jshell.Snippet$Status of jdk.jshell.Snippet
  public final SubKind = jdk.jshell.Snippet$SubKind of jdk.jshell.Snippet
  public final Completeness = jdk.jshell.SourceCodeAnalysis$Completeness of jdk.jshell.SourceCodeAnalysis
  public abstract CompletionInfo = jdk.jshell.SourceCodeAnalysis$CompletionInfo of jdk.jshell.SourceCodeAnalysis
  public abstract Suggestion = jdk.jshell.SourceCodeAnalysis$Suggestion of jdk.jshell.SourceCodeAnalysis