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 MODE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "MODE"

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

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

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

  public static final java.lang.String INDENT_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "INDENT"

  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

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

  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 140
            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 142
            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 143
            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 144
            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 145
            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 146
            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 212
            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 223
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
        10: .line 224
            ldc "JSHELLEDITOR"
            aastore
            dup
            iconst_1
            ldc "VISUAL"
            aastore
            dup
            iconst_2
            ldc "EDITOR"
            aastore
        11: .line 223
            putstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
        12: .line 238
            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 247
            ldc "\\s*(\\S+\\s+)*?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        14: .line 246
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
        15: .line 250
            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 249
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
        17: .line 253
            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 252
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_VALUE_PATTERN:Ljava/util/regex/Pattern;
        19: .line 1504
            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 1505
            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 1506
            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 1507
            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 1508
            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 1509
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        25: .line 1510
            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 1509
            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 1511
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
        28: .line 1512
            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 1513
            ldc "-restore "
            aastore
            dup
            iconst_1
            ldc "-quiet "
        30: .line 1511
            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 1514
            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 1515
            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 1516
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
        34: .line 1518
            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 1519
            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 1520
            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 1521
            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 1969
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
        39: .line 1970
            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
            dup
            bipush 7
            ldc "indent"
            aastore
        40: .line 1969
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
        41: .line 1970
            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=23, 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 178
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 163
            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 199
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         3: .line 200
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         4: .line 202
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         5: .line 203
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         6: .line 204
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 205
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
         8: .line 209
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         9: .line 210
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
        10: .line 214
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        11: .line 215
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        12: .line 216
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
        13: .line 217
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        14: .line 218
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        15: .line 219
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
        16: .line 220
            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 221
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        18: .line 1523
            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 1780
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/list"
        20: .line 1781
            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 1782
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        22: .line 1783
            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 1782
            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 1780
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        25: .line 1784
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/edit"
        26: .line 1785
            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 1786
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        28: .line 1787
            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 1786
            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 1784
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        31: .line 1788
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/drop"
        32: .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.cmdDrop(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        33: .line 1790
            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 1791
            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 1788
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        36: .line 1792
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/save"
        37: .line 1793
            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 1794
            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 1792
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        40: .line 1795
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/open"
        41: .line 1796
            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 1797
            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 1795
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        44: .line 1798
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/vars"
        45: .line 1799
            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 1800
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        47: .line 1801
            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 1800
            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 1798
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        50: .line 1802
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/methods"
        51: .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.cmdMethods(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        52: .line 1804
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        53: .line 1805
            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 1804
            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 1802
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        56: .line 1806
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/types"
        57: .line 1807
            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 1808
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        59: .line 1809
            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 1808
            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 1806
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        62: .line 1810
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/imports"
        63: .line 1811
            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 1812
            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 1810
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        66: .line 1813
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/exit"
        67: .line 1814
            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 1815
            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 1813
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        70: .line 1827
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/env"
        71: .line 1828
            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 1829
            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 1827
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        74: .line 1830
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reset"
        75: .line 1831
            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 1832
            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 1830
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        78: .line 1833
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reload"
        79: .line 1834
            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 1835
            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 1833
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        82: .line 1836
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/history"
        83: .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.cmdHistory(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        84: .line 1838
            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 1836
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        86: .line 1839
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/debug"
        87: .line 1840
            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 1841
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        89: .line 1842
            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 1839
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        91: .line 1843
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/help"
        92: .line 1844
            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 1845
            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 1843
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        95: .line 1846
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/set"
        96: .line 1847
            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 1848
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
        98: .line 1850
            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 1851
            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 1852
            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 1853
            ldc "mode"
       102: .line 1854
            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 1855
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       104: .line 1853
            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 1856
            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 1857
            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 1858
            ldc "start"
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       108: .line 1859
            ldc "indent"
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       109: .line 1848
            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/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
       110: .line 1860
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
       111: .line 1848
            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
       112: .line 1846
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       113: .line 1861
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/?"
       114: .line 1862
            ldc "help.quest"
       115: .line 1863
            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;
       116: .line 1864
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       117: .line 1865
            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
       118: .line 1861
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       119: .line 1866
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/!"
       120: .line 1867
            ldc "help.bang"
       121: .line 1868
            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;
       122: .line 1869
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       123: .line 1870
            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
       124: .line 1866
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       125: .line 1873
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/<id>"
       126: .line 1874
            ldc "help.slashID"
       127: .line 1875
            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;
       128: .line 1876
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       129: .line 1877
            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
       130: .line 1873
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       131: .line 1878
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/-<n>"
       132: .line 1879
            ldc "help.previous"
       133: .line 1880
            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;
       134: .line 1881
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       135: .line 1882
            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
       136: .line 1878
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       137: .line 1883
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "intro"
       138: .line 1884
            ldc "help.intro"
       139: .line 1885
            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
       140: .line 1883
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       141: .line 1886
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "keys"
       142: .line 1887
            ldc "help.keys"
       143: .line 1888
            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
       144: .line 1886
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       145: .line 1889
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "id"
       146: .line 1890
            ldc "help.id"
       147: .line 1891
            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
       148: .line 1889
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       149: .line 1892
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "shortcuts"
       150: .line 1893
            ldc "help.shortcuts"
       151: .line 1894
            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
       152: .line 1892
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       153: .line 1895
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "context"
       154: .line 1896
            ldc "help.context"
       155: .line 1897
            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
       156: .line 1895
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       157: .line 1898
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "rerun"
       158: .line 1899
            ldc "help.rerun"
       159: .line 1900
            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
       160: .line 1898
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       161: .line 1902
            aload 0 /* this */
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
       162: .line 1903
            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;
       163: .line 1904
            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;
       164: .line 1905
            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
       165: .line 1906
            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
       166: .line 1902
            putfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
       167: .line 182
            aload 0 /* this */
            aload 1 /* cmdin */
            putfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
       168: .line 183
            aload 0 /* this */
            aload 2 /* cmdout */
            putfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
       169: .line 184
            aload 0 /* this */
            aload 3 /* cmderr */
            putfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
       170: .line 185
            aload 0 /* this */
            aload 4 /* console */
            putfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
       171: .line 186
            aload 0 /* this */
            aload 5 /* userin */
            ifnull 172
            aload 5 /* userin */
            goto 173
      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
       172: 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
       173: putfield jdk.internal.jshell.tool.JShellTool.userin:Ljava/io/InputStream;
       174: .line 192
            aload 0 /* this */
            aload 6 /* userout */
            putfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
       175: .line 193
            aload 0 /* this */
            aload 7 /* usererr */
            putfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
       176: .line 194
            aload 0 /* this */
            aload 8 /* prefs */
            putfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
       177: .line 195
            aload 0 /* this */
            aload 9 /* envvars */
            putfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
       178: .line 196
            aload 0 /* this */
            aload 10 /* locale */
            putfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
       179: .line 197
            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  180     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0  180     1    cmdin  Ljava/io/InputStream;
            0  180     2   cmdout  Ljava/io/PrintStream;
            0  180     3   cmderr  Ljava/io/PrintStream;
            0  180     4  console  Ljava/io/PrintStream;
            0  180     5   userin  Ljava/io/InputStream;
            0  180     6  userout  Ljava/io/PrintStream;
            0  180     7  usererr  Ljava/io/PrintStream;
            0  180     8    prefs  Ljdk/internal/jshell/tool/PersistentStorage;
            0  180     9  envvars  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0  180    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 703
            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 707
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 2
         1: .line 708
            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 710
      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 720
            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 721
            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 730
            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 731
            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 739
            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 750
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 751
            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 753
      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 761
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
            ifnonnull 6
         1: .line 763
            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 764
            goto 6
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 765
            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 766
            ldc ""
            areturn
         6: .line 771
      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 772
            goto 11
        end local 2 // java.lang.String s
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         8: pop
         9: .line 773
            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 774
            ldc ""
            areturn
        start local 2 // java.lang.String s
        11: .line 776
      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 787
            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 798
            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 812
            aload 1 /* s */
            ifnonnull 2
         1: .line 813
            ldc ""
            areturn
         2: .line 815
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
            ifne 4
         3: .line 817
            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 819
      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 820
            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 823
            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 825
      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 834
            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 835
            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 844
            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 845
            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 857
            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 858
            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 869
            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 870
            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 881
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 882
            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 884
      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 887
            aload 1 /* stream */
            aload 2 /* a */
            aload 3 /* b */
         1: .line 888
            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 889
            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 887
            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 890
            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 891
            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 892
            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 890
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 894
            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 903
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* last */
        start local 1 // int last
         1: .line 904
            iload 1 /* last */
            istore 2 /* i */
        start local 2 // int i
         2: .line 905
            goto 4
         3: .line 906
      StackMap locals: int int
      StackMap stack:
            iinc 2 /* i */ -1
         4: .line 905
      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 908
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 1 /* last */
            if_icmpeq 7
         6: .line 909
            aload 0 /* s */
            iconst_0
            iload 2 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         7: .line 911
      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     

  private java.lang.String indent();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 916
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "INDENT"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* indentValue */
        start local 1 // java.lang.String indentValue
         1: .line 917
            aload 1 /* indentValue */
            ifnonnull 2
            iconst_4
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            astore 1 /* indentValue */
         2: .line 918
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* indentValue */
            areturn
        end local 1 // java.lang.String indentValue
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ljdk/internal/jshell/tool/JShellTool;
            1    3     1  indentValue  Ljava/lang/String;

  public int start(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String[] args
         0: .line 929
            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 930
            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 931
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            ifnonnull 4
         3: .line 934
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ireturn
         4: .line 936
      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 938
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.configEditor:()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            pop
         6: .line 941
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         7: .line 942
            goto 11
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         8: astore 3 /* ex */
        start local 3 // java.lang.IllegalStateException ex
         9: .line 944
            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 946
            iconst_1
            ireturn
        end local 3 // java.lang.IllegalStateException ex
        11: .line 949
      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 951
            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 952
            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 954
            iconst_1
            ireturn
        end local 3 // java.lang.String loadFile
        16: .line 951
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        17: .line 958
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 19
        18: .line 960
            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 963
      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 56
        20: .line 965
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
        21: .line 966
            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 967
            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 970
      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 976
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        25: .line 978
            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 981
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.indent:()Ljava/lang/String;
            astore 8 /* indentValue */
        start local 8 // java.lang.String indentValue
        28: .line 982
            aload 8 /* indentValue */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 7 /* indent */
        end local 8 // java.lang.String indentValue
        start local 7 // int indent
        29: .line 983
            goto 32
        end local 7 // int indent
      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: java.lang.NumberFormatException
        30: pop
        31: .line 984
            iconst_4
            istore 7 /* indent */
        start local 7 // int indent
        32: .line 986
      StackMap locals: int
      StackMap stack:
            aload 6 /* in */
            iload 7 /* indent */
            invokevirtual jdk.internal.jshell.tool.IOContext.setIndent:(I)V
        33: .line 987
            goto 37
        34: .line 988
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 36
        35: .line 989
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        36: .line 991
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        37: .line 987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifne 34
        end local 7 // int indent
        38: .line 993
            aload 6 /* in */
            ifnull 51
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
            goto 51
      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: java.lang.Throwable
        39: astore 4
            aload 6 /* in */
            ifnull 40
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
        end local 6 // jdk.internal.jshell.tool.IOContext in
      StackMap locals:
      StackMap stack:
        40: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        41: astore 5
            aload 4
            ifnonnull 42
            aload 5
            astore 4
            goto 43
      StackMap locals:
      StackMap stack:
        42: aload 4
            aload 5
            if_acmpeq 43
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        43: 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
        44: astore 9
        45: .line 994
            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 995
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        47: .line 997
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        48: .line 998
            goto 50
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread top top top top top java.lang.Throwable
      StackMap stack: java.lang.Exception
        49: pop
        50: .line 1002
      StackMap locals:
      StackMap stack:
            aload 9
            athrow
        51: .line 994
      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
        52: .line 995
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        53: .line 997
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        54: .line 998
            goto 56
      StackMap locals:
      StackMap stack: java.lang.Exception
        55: pop
        end local 3 // java.lang.Thread shutdownHook
        56: .line 1004
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        57: .line 1005
            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   58     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   58     1             args  [Ljava/lang/String;
            1   58     2  commandLineArgs  Ljdk/internal/jshell/tool/JShellTool$OptionParserCommandLine;
            9   11     3               ex  Ljava/lang/IllegalStateException;
           14   16     3         loadFile  Ljava/lang/String;
           24   56     3     shutdownHook  Ljava/lang/Thread;
           27   40     6               in  Ljdk/internal/jshell/tool/IOContext;
           29   30     7           indent  I
           32   38     7           indent  I
           28   29     8      indentValue  Ljava/lang/String;
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.IllegalStateException
          27    29      30  Class java.lang.NumberFormatException
          27    38      39  any
          26    41      41  any
          25    44      44  any
          47    48      49  Class java.lang.Exception
          53    54      55  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 1010
            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 1011
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            ifnull 3
         2: .line 1012
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
         3: .line 1015
      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 1016
            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 1017
            aload 5 /* v */
            ifnull 8
         7: .line 1018
            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 1015
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 4
        10: .line 1022
            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 1026
            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 1027
            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 1030
            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 1031
            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 1070
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
         1: .line 1073
            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 1074
            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 1075
            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 1076
            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 1077
            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 1080
            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 1081
            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 1083
            invokestatic jdk.jshell.JShell.builder:()Ljdk/jshell/JShell$Builder;
         9: .line 1084
            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 1085
            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 1086
            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 1087
            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 1088
            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 1091
            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 1092
            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 1082
            astore 1 /* builder */
        start local 1 // jdk.jshell.JShell$Builder builder
        17: .line 1093
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
            ifnull 19
        18: .line 1094
            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 1096
      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 1097
            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 1098
            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 1105
            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 1106
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        24: .line 1112
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 32
        25: .line 1114
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        26: .line 1115
            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 1116
            goto 31
      StackMap locals:
      StackMap stack: java.lang.Throwable
        28: astore 2
        29: .line 1117
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        30: .line 1118
            aload 2
            athrow
        31: .line 1117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        32: .line 1121
      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 1122
            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=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String initMode
         0: .line 1127
            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 1129
            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 1131
            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 1133
            iconst_0
            istore 3 /* oldModes */
        start local 3 // boolean oldModes
         4: .line 1134
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE2"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* encoded */
        start local 4 // java.lang.String encoded
         5: .line 1135
            aload 4 /* encoded */
            ifnull 6
            aload 4 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 8
         6: .line 1137
      StackMap locals: jdk.internal.jshell.tool.MessageHandler int java.lang.String
      StackMap stack:
            iconst_1
            istore 3 /* oldModes */
         7: .line 1138
            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 4 /* encoded */
         8: .line 1140
      StackMap locals:
      StackMap stack:
            aload 4 /* encoded */
            ifnull 12
            aload 4 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 12
         9: .line 1141
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 2 /* initmh */
            aload 4 /* encoded */
            invokevirtual jdk.internal.jshell.tool.Feedback.restoreEncodedModes:(Ljdk/internal/jshell/tool/MessageHandler;Ljava/lang/String;)Z
            ifne 12
        10: .line 1144
            iload 3 /* oldModes */
            ifne 12
        11: .line 1145
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE2"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.remove:(Ljava/lang/String;)V
        12: .line 1149
      StackMap locals:
      StackMap stack:
            aload 1 /* initMode */
            ifnull 17
        13: .line 1151
            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 20
        14: .line 1152
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        15: .line 1153
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        16: .line 1155
            goto 20
        17: .line 1156
      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 5 /* fb */
        start local 5 // java.lang.String fb
        18: .line 1157
            aload 5 /* fb */
            ifnull 20
        19: .line 1160
            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 5 /* 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 5 // java.lang.String fb
        20: .line 1163
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String encoded
        end local 3 // boolean oldModes
        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   21     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   21     1  initMode  Ljava/lang/String;
            1   21     2    initmh  Ljdk/internal/jshell/tool/MessageHandler;
            4   21     3  oldModes  Z
            5   21     4   encoded  Ljava/lang/String;
           18   20     5        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 1167
            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 1168
            aload 0 /* this */
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         3: .line 1169
            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 1170
            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 1171
            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 1173
      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 1176
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         1: .line 1177
            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 1178
            aload 1 /* oldState */
            ifnull 7
         3: .line 1179
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         4: .line 1180
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
         5: .line 1181
            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 1182
            aload 1 /* oldState */
            invokevirtual jdk.jshell.JShell.close:()V
         7: .line 1184
      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 1192
            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 1193
            aload 0 /* this */
            aload 1 /* in */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         2: .line 1196
            ldc ""
            astore 3 /* remaining */
        start local 3 // java.lang.String remaining
         3: .line 1197
            goto 6
         4: .line 1199
      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 1201
            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 1197
      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 1203
            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 1208
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        10: .line 1205
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        11: .line 1206
            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 1208
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        13: .line 1207
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 1208
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        15: .line 1209
            aload 5
            athrow
        16: .line 1208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        17: .line 1210
      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 1219
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 1221
            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 1223
            ldc ""
            areturn
         3: .line 1227
      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 1228
            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 1230
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            areturn
         6: .line 1233
      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 1246
            aload 1 /* initial */
            astore 2 /* src */
        start local 2 // java.lang.String src
         1: .line 1247
            goto 27
         2: .line 1248
      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 1249
            aload 2 /* src */
            areturn
         4: .line 1251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 7
         5: .line 1252
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 6
            ldc " \u0005"
            goto 8
         6: .line 1253
      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 1254
      StackMap locals:
      StackMap stack:
            ldc ""
         8: .line 1251
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* firstLinePrompt */
        start local 3 // java.lang.String firstLinePrompt
         9: .line 1256
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 12
        10: .line 1257
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 11
            ldc " \u0006"
            goto 13
        11: .line 1258
      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 1259
      StackMap locals:
      StackMap stack:
            ldc ""
        13: .line 1256
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* continuationPrompt */
        start local 4 // java.lang.String continuationPrompt
        14: .line 1263
            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 1264
            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 1266
            ldc ""
            astore 2 /* src */
        18: .line 1267
            goto 27
        start local 5 // java.lang.String line
        19: .line 1269
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* line */
            ifnonnull 23
        20: .line 1271
            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 1273
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        22: .line 1275
      StackMap locals:
      StackMap stack:
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
        23: .line 1277
      StackMap locals:
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        24: .line 1278
            aload 5 /* line */
            goto 26
        25: .line 1279
      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 1277
      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 1247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 2
        28: .line 1281
            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 1287
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 9
         1: .line 1290
            aload 1 /* src */
            ldc " "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 3 /* sp */
        start local 3 // int sp
         2: .line 1291
            iload 3 /* sp */
            ifge 3
            iconst_1
            ireturn
         3: .line 1292
      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 1293
            aload 2 /* check */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
            iconst_1
            ireturn
         5: .line 1294
      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 1295
            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 1296
            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 1298
      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 1302
      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 1304
      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 1305
            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 1306
      StackMap locals: jdk.jshell.SourceCodeAnalysis$Completeness
      StackMap stack:
            iconst_1
            ireturn
        13: .line 1308
      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 1312
            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 1316
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 2
         1: .line 1317
            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 1319
      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 1329
            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 1330
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSource:(Ljava/lang/String;)Z
            istore 3
         2: .line 1336
            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 1330
            iload 3
            ireturn
         4: .line 1331
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            pop
         5: .line 1332
            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 1333
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 1336
            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 1334
            iconst_0
            ireturn
         9: .line 1335
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        10: .line 1336
            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 1337
            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 1347
            aload 1 /* input */
            ldc "/-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 1350
            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 1351
            return
         3: .line 1352
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         4: .line 1358
      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 1359
            iload 4 /* idx */
            ifle 9
         6: .line 1360
            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 1361
            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 1362
            goto 11
        end local 3 // java.lang.String arg
        end local 2 // java.lang.String cmd
         9: .line 1363
      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 1364
            ldc ""
            astore 3 /* arg */
        start local 3 // java.lang.String arg
        11: .line 1367
      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 1368
            aload 5 /* candidates */
            arraylength
            tableswitch { // 0 - 1
                    0: 13
                    1: 19
              default: 23
          }
        13: .line 1371
      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 1373
            aload 0 /* this */
            aload 1 /* input */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunHistoryEntriesById:(Ljava/lang/String;)V
        15: .line 1374
            goto 27
        16: .line 1375
      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 1376
            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 1378
            goto 27
        19: .line 1380
      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 1382
            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 1383
            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 1385
            goto 27
        end local 6 // jdk.internal.jshell.tool.JShellTool$Command command
        23: .line 1388
      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 1389
            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 1388
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 1390
            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 1393
      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 1396
            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 1397
            aload 3 /* exact */
            ifnull 3
         2: .line 1398
            iconst_1
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            dup
            iconst_0
            aload 3 /* exact */
            aastore
            areturn
         3: .line 1400
      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 1401
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 1402
            aload 2 /* filter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 1403
            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 1404
            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 1400
            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 1408
            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 1409
            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 1411
      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 1525
            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 1526
            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 1529
            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 1544
            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 1570
            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 1577
            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 1601
            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 1615
            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 1642
            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 1656
            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 1710
            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 1715
            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 1720
            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 1725
            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 1751
            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 1755
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1756
            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 1755
            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 1760
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1761
            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 1762
            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 1760
            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 1766
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1767
            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 1768
            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 1766
            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 1772
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1773
            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 1774
            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 1772
            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 1912
            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 1916
            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 1917
            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 1918
            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 1919
            aload 4 /* stripped */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* space */
        start local 6 // int space
         6: .line 1920
            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 1921
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
        10: .line 1925
            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 1926
            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 1928
            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 1929
            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 1930
            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 1931
            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 1927
            astore 9 /* toShow */
        end local 10 // java.lang.String setSubcommand
        start local 9 // java.util.List toShow
        17: .line 1932
            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 1934
            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 1933
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        21: .line 1935
            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 1937
            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 1936
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        25: .line 1938
            goto 34
        end local 9 // java.util.List toShow
        26: .line 1940
      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 1941
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        28: .line 1942
            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 1944
            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 1946
            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 1947
            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 1948
            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 1939
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        34: .line 1951
      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 1952
            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 1953
            goto 45
        39: .line 1954
      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 1955
            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 1954
      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 1959
      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 1964
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.stop:()V
         1: .line 1965
            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=9, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1973
            ldc "/set"
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 1974
            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 1975
            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 1976
            aload 4 /* which */
            ifnonnull 5
         4: .line 1977
            iconst_0
            ireturn
         5: .line 1979
      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 { // 10
          -1693144887: 6
          -1481378731: 7
          -1307827859: 8
          -1268779017: 9
          -1184239444: 10
           -979805852: 11
           -191501435: 12
              3357091: 13
            109757538: 14
           1774054948: 15
              default: 46
          }
      StackMap locals: java.lang.String
      StackMap stack:
         6: aload 5
            ldc "truncation"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
            goto 46
      StackMap locals:
      StackMap stack:
         7: aload 5
            ldc "_blank"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 18
            goto 46
      StackMap locals:
      StackMap stack:
         8: aload 5
            ldc "editor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 31
            goto 46
      StackMap locals:
      StackMap stack:
         9: aload 5
            ldc "format"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 24
            goto 46
      StackMap locals:
      StackMap stack:
        10: aload 5
            ldc "indent"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 33
            goto 46
      StackMap locals:
      StackMap stack:
        11: aload 5
            ldc "prompt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 46
      StackMap locals:
      StackMap stack:
        12: aload 5
            ldc "feedback"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 26
            goto 46
      StackMap locals:
      StackMap stack:
        13: aload 5
            ldc "mode"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 27
            goto 46
      StackMap locals:
      StackMap stack:
        14: aload 5
            ldc "start"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 32
            goto 46
      StackMap locals:
      StackMap stack:
        15: aload 5
            ldc "_retain"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
            goto 46
        16: .line 1981
      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
        17: .line 1982
            iconst_0
            ireturn
        18: .line 1986
      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
        19: .line 1987
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showIndent:()V
        20: .line 1988
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        21: .line 1989
            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
        22: .line 1990
            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
        23: .line 1991
            iconst_1
            ireturn
        24: .line 1994
      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
        25: .line 1996
      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
        26: .line 1998
      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
        27: .line 2000
      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 */
        28: .line 2001
            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
        29: .line 2000
            invokevirtual jdk.internal.jshell.tool.Feedback.setMode:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;Ljava/util/function/Consumer;)Z
            ireturn
        30: .line 2003
      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
        31: .line 2005
      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
        32: .line 2007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setStart:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        33: .line 2009
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            astore 6 /* value */
        start local 6 // java.lang.String value
        34: .line 2010
            aload 6 /* value */
            ifnull 44
        35: .line 2012
            aload 6 /* value */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 7 /* indent */
        start local 7 // int indent
        36: .line 2013
            iload 7 /* indent */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            astore 8 /* indentValue */
        start local 8 // java.lang.String indentValue
        37: .line 2014
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "INDENT"
            aload 8 /* indentValue */
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.put:(Ljava/lang/String;Ljava/lang/String;)V
        38: .line 2015
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            iload 7 /* indent */
            invokevirtual jdk.internal.jshell.tool.IOContext.setIndent:(I)V
        39: .line 2016
            aload 0 /* this */
            ldc "jshell.msg.set.indent.set"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* indentValue */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 8 // java.lang.String indentValue
        end local 7 // int indent
        40: .line 2017
            goto 45
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String java.lang.String java.lang.String
      StackMap stack: java.lang.NumberFormatException
        41: pop
        42: .line 2018
            aload 0 /* this */
            ldc "jshell.err.invalid.indent"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* value */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        43: .line 2019
            iconst_0
            ireturn
        44: .line 2022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showIndent:()V
        45: .line 2024
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 6 // java.lang.String value
        46: .line 2026
      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
        47: .line 2027
            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   48     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0   48     1          arg  Ljava/lang/String;
            1   48     2          cmd  Ljava/lang/String;
            2   48     3           at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   48     4        which  Ljava/lang/String;
           34   46     6        value  Ljava/lang/String;
           36   40     7       indent  I
           37   40     8  indentValue  Ljava/lang/String;
      Exception table:
        from    to  target  type
          35    40      41  Class java.lang.NumberFormatException
    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 2032
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 1 /* messageHandler */
            aload 2 /* at */
         1: .line 2033
            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 2032
            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 2039
            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 2040
            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 2041
            aload 4 /* sub */
            ifnonnull 7
         3: .line 2043
            aload 2 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 2044
            ldc "_retain"
            goto 6
         5: .line 2045
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "_blank"
         6: .line 2043
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
         7: .line 2047
      StackMap locals:
      StackMap stack:
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         8: .line 2048
            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 2049
            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 2047
            astore 5 /* matches */
        start local 5 // java.lang.String[] matches
        11: .line 2050
            aload 5 /* matches */
            arraylength
            ifne 17
        12: .line 2052
            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 2053
            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 2054
            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 2053
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 2056
            aconst_null
            areturn
        17: .line 2058
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 5 /* matches */
            arraylength
            iconst_1
            if_icmple 23
        18: .line 2060
            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 2061
            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 2062
            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 2061
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2064
            aconst_null
            areturn
        23: .line 2066
      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 2236
            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 2237
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fns */
        start local 2 // java.util.List fns
         2: .line 2238
            goto 4
         3: .line 2239
      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 2238
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            ifnonnull 3
         5: .line 2241
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2242
            iconst_0
            ireturn
         7: .line 2244
      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 2245
            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 2246
            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 2247
            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 2249
            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 2250
            iload 7 /* argCount */
            iconst_1
            if_icmple 23
        21: .line 2251
            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 2252
            iconst_0
            ireturn
        23: .line 2254
      StackMap locals: int
      StackMap stack:
            iload 7 /* argCount */
            ifne 26
            iload 5 /* retainOption */
            ifne 26
        24: .line 2256
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        25: .line 2257
            iconst_1
            ireturn
        26: .line 2259
      StackMap locals:
      StackMap stack:
            iload 6 /* hasFile */
            ifeq 30
        27: .line 2260
            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 2261
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            ifnonnull 35
        29: .line 2262
            iconst_0
            ireturn
        30: .line 2264
      StackMap locals:
      StackMap stack:
            iload 3 /* defaultOption */
            ifeq 33
        31: .line 2265
            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 2266
            goto 35
      StackMap locals:
      StackMap stack:
        33: iload 4 /* noneOption */
            ifeq 35
        34: .line 2267
            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 2269
      StackMap locals:
      StackMap stack:
            iload 5 /* retainOption */
            ifeq 37
        36: .line 2271
            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 2273
      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 2279
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2280
            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 2281
            aload 2 /* retained */
            ifnull 14
         3: .line 2282
            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 2283
            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 2284
            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 2285
            iload 4 /* currentDifferent */
            ifeq 10
         9: .line 2286
            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 2288
      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 2289
            iload 4 /* currentDifferent */
            ifeq 16
        12: .line 2290
            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 2292
            goto 16
        14: .line 2293
      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 2294
            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 2296
      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 2297
            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

  private void showIndent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2300
            aload 0 /* this */
            ldc "/set indent %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.indent:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 2301
            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;

  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 2304
            aload 1 /* arg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
         1: .line 2305
            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 2306
            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 2307
            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 2308
            goto 50
        11: .line 2309
      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 2310
            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 2312
      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 2313
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        16: .line 2314
            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 2315
            goto 47
        18: .line 2317
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        19: .line 2318
            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 2319
            goto 47
        21: .line 2321
      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 2322
            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 2323
            goto 47
        24: .line 2325
      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 2326
            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 2327
            goto 47
        27: .line 2329
      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 2330
            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 2331
            goto 47
        30: .line 2333
      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 2334
            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 2335
            goto 47
        33: .line 2337
      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 2338
            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 2339
            goto 47
        36: .line 2341
      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 2342
            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 2343
            goto 47
        39: .line 2345
      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 2346
            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 2347
            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 2345
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        43: .line 2348
            goto 47
        44: .line 2350
      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 2351
            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 2352
            iconst_0
            ireturn
        end local 2 // char ch
        47: .line 2309
      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 2355
            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 2357
      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 2361
            aload 1 /* arg */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 39
         1: .line 2362
            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 2363
            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 2364
            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 2366
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 38
         6: .line 2367
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 5 /* sn */
        start local 5 // jdk.jshell.Snippet sn
         7: .line 2370
            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 2371
            aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 7 /* source */
        start local 7 // java.lang.String source
         9: .line 2372
            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 2375
            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 2376
            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 2378
            iconst_0
            ireturn
        13: .line 2382
      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 2384
            iconst_0
            ireturn
        15: .line 2387
      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 2388
            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 2389
            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 2390
            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 2391
            goto 23
        end local 8 // java.lang.String typeName
        21: .line 2393
      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 2394
            iconst_0
            ireturn
        start local 8 // java.lang.String typeName
        23: .line 2396
      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 2404
      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 2415
            aload 0 /* this */
            iload 10 /* i */
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        32: .line 2416
            goto 38
        end local 10 // int i
        33: .line 2417
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        34: .line 2419
            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 2420
            iconst_0
            ireturn
        36: .line 2424
      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 2425
            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 2364
      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 2430
      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 2431
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        41: .line 2432
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ifne 44
        42: .line 2433
            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 2434
            goto 45
        44: .line 2435
      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 2437
      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 2441
            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 2442
            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 2443
            aload 3 /* subject */
            ifnull 35
         3: .line 2446
            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 2447
            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 2449
            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 2446
            astore 4 /* matches */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
         7: .line 2450
            aload 4 /* matches */
            arraylength
            iconst_1
            if_icmpne 16
         8: .line 2451
            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 2452
            aload 5 /* cmd */
            ldc "/set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 2454
            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 2455
            aload 6 /* which */
            ifnonnull 13
        12: .line 2456
            iconst_0
            ireturn
        13: .line 2458
      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 2459
            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 2460
            iconst_1
            ireturn
        end local 6 // java.lang.String which
        end local 5 // java.lang.String cmd
        16: .line 2464
      StackMap locals:
      StackMap stack:
            aload 4 /* matches */
            arraylength
            ifle 23
        17: .line 2465
            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 2466
            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 2465
            iinc 6 1
      StackMap locals:
      StackMap stack:
        21: iload 6
            iload 7
            if_icmplt 18
        22: .line 2468
            iconst_1
            ireturn
        23: .line 2472
      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 2473
            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 2474
            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 2472
            astore 5 /* subs */
        start local 5 // java.lang.String[] subs
        27: .line 2475
            aload 5 /* subs */
            arraylength
            ifle 34
        28: .line 2476
            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 2477
            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 2476
            iinc 7 1
      StackMap locals:
      StackMap stack:
        32: iload 7
            iload 8
            if_icmplt 29
        33: .line 2479
            iconst_1
            ireturn
        34: .line 2481
      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 2484
      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 2485
            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 2486
            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 2487
            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 2488
            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 2485
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        41: .line 2490
            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 2491
            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 2492
            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 2493
            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 2494
            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 2491
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        47: .line 2496
            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 2500
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         1: .line 2501
            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 2502
            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 2503
            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 2504
            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 2505
            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 2506
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
         7: .line 2507
            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 2510
            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 2511
            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 2512
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 4
         3: .line 2513
            iconst_0
            ireturn
         4: .line 2515
      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 2516
            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 2518
            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 2516
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 2520
            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 2539
            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 2540
            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 2541
            aload 6 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 5
         4: .line 2542
            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 2539
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 1
         7: .line 2545
            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 2549
            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 2553
            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 2557
            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 2561
            aload 1 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         1: .line 2562
            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 2561
            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 2577
            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 2578
            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 2579
            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 2593
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* args */
        start local 4 // java.util.List args
         1: .line 2595
            goto 3
        start local 5 // java.lang.String s
         2: .line 2596
      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 2595
      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 2598
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2599
            aconst_null
            areturn
         7: .line 2601
      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 2602
            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 2603
            aconst_null
            areturn
        10: .line 2605
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 13
        11: .line 2606
            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 2607
            aconst_null
            areturn
        13: .line 2609
      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 2611
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            areturn
        15: .line 2613
      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 2615
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        17: .line 2616
            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 2615
            areturn
        19: .line 2618
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 23
        20: .line 2620
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        21: .line 2621
            aload 2 /* defFilter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 2620
            areturn
        23: .line 2623
      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 2847
            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 2848
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2849
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* args */
        start local 3 // java.util.List args
         3: .line 2851
            goto 5
        start local 4 // java.lang.String s
         4: .line 2852
      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 2851
      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 2854
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2855
            iconst_0
            ireturn
         9: .line 2857
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 12
        10: .line 2858
            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 2859
            iconst_0
            ireturn
        12: .line 2861
      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 2862
            aload 5 /* stream */
            ifnonnull 16
        14: .line 2864
            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 2865
            iconst_0
            ireturn
        16: .line 2867
      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 2868
            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 2872
            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 2873
            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 2872
            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 2874
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2875
            iconst_0
            ireturn
         5: .line 2877
      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 2878
            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 2907
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2908
            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 2909
            aload 6 /* sb */
            aload 7 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2910
            aload 6 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String s
        12: .line 2908
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 2912
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* src */
        start local 7 // java.lang.String src
        14: .line 2913
            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 2914
            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 2915
            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 2916
            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 2921
      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 2922
            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 2929
            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 2930
            aload 9 /* errorHandler */
            aload 11 /* extSaveHandler */
        22: .line 2931
            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 2932
            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 2933
            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 2934
            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 2929
            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 2935
            aload 10 /* buffer */
            iconst_0
            aaload
            ifnull 29
        28: .line 2936
            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 2939
      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 2947
            ldc Ljdk/internal/editor/spi/BuildInEditorProvider;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         1: .line 2946
            astore 4 /* sl */
        start local 4 // java.util.ServiceLoader sl
         2: .line 2949
            aconst_null
            astore 5 /* provider */
        start local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
         3: .line 2950
            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 2951
            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 2952
      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 2950
      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 2955
            aload 5 /* provider */
            ifnull 13
         9: .line 2956
            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 2957
            aload 1 /* initialText */
            aload 2 /* saveHandler */
            aload 3 /* errorHandler */
        11: .line 2956
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.edit:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V
        12: .line 2958
            iconst_1
            ireturn
        13: .line 2960
      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 2962
            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 2963
            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 2965
      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 2966
            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 3025
            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 3026
            aload 0 /* this */
            ldc ""
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:(Ljava/lang/String;)Z
            ireturn
         2: .line 3028
      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 3029
            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 3028
            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 3030
            aload 2 /* stream */
            ifnonnull 7
         6: .line 3031
            iconst_0
            ireturn
         7: .line 3035
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            iconst_1
            newarray 4
            astore 5 /* hasOutput */
        start local 5 // boolean[] hasOutput
         8: .line 3036
            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 3043
            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 3047
            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 3051
            aload 1 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 45
         1: .line 3054
            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 3056
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         3: .line 3057
            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 3058
            goto 29
        end local 3 // java.util.Scanner scanner
         5: .line 3059
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* path */
        start local 4 // java.nio.file.Path path
         6: .line 3060
            aconst_null
            astore 5 /* url */
        start local 5 // java.net.URL url
         7: .line 3063
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 4 /* path */
         8: .line 3064
            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 3066
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        11: .line 3067
            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 3068
            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 3070
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        14: pop
        15: .line 3071
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 3074
      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 3075
            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 3076
            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 3077
            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 3078
            goto 29
        end local 3 // java.util.Scanner scanner
        23: .line 3079
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* url */
            ifnonnull 28
        24: .line 3081
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        25: .line 3082
            goto 28
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
        26: pop
        27: .line 3083
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 3086
      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 3089
      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 3090
            aload 0 /* this */
            aload 6 /* scannerIOContext */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        32: .line 3091
            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 3092
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.util.Scanner scanner
        39: .line 3093
      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 3094
            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 3095
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        43: .line 3096
            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 3098
            goto 46
        45: .line 3099
      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 3101
      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 3105
            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 3107
            aload 0 /* name */
            invokestatic jdk.internal.jshell.tool.JShellTool.readResource:(Ljava/lang/String;)Ljava/lang/String;
         2: areturn
         3: .line 3108
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 3112
      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 3160
            aload 0 /* name */
            ldc "JAVASE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 3162
            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 3166
      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 3168
            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 3169
            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 3170
            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 3171
            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 3170
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 3171
            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 3175
            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 3176
            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 3177
            iconst_0
            ireturn
         5: .line 3179
      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 3180
            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 3181
            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 3185
            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 3186
            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 3187
            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 3188
            iconst_0
            ireturn
         6: .line 3191
      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 3192
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            ifnonnull 10
         8: .line 3193
            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 3194
            iconst_0
            ireturn
        10: .line 3196
      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 3197
            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 3198
            goto 15
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        13: .line 3199
      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 3200
            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 3202
      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 3203
            iload 5 /* success */
            ifeq 20
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 20
        19: .line 3206
            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 3208
      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 3212
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 17
         1: .line 3214
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 3215
            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 3216
            aload 2 /* sb */
         5: .line 3217
            aload 3 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 3218
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 8
         7: .line 3219
            ldc "\n   "
            goto 10
         8: .line 3220
      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 3221
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
        10: .line 3216
      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 3222
            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 3215
            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 3224
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 16
        15: .line 3225
            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 3227
      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 3229
      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 3230
            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 3231
            iconst_0
            ireturn
        20: .line 3233
      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 3234
            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 3238
            aload 3 /* oldOptions */
            ifnull 9
         1: .line 3240
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         2: .line 3241
            goto 10
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         3: astore 4 /* ex */
        start local 4 // java.lang.IllegalStateException ex
         4: .line 3242
            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 3243
            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 3245
            aload 0 /* this */
            aload 3 /* oldOptions */
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         7: .line 3246
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        end local 4 // java.lang.IllegalStateException ex
         8: .line 3248
            goto 10
         9: .line 3249
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        10: .line 3251
      StackMap locals:
      StackMap stack:
            aload 1 /* history */
            ifnull 17
        11: .line 3252
            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 3253
            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 3252
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        17: .line 3255
      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 3259
            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 3260
            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 3261
            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 3259
            astore 3 /* args */
        start local 3 // java.lang.String[] args
         4: .line 3262
            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 3263
            aload 4 /* opts */
            ifnonnull 7
         6: .line 3264
            iconst_0
            ireturn
         7: .line 3266
      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 3267
            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 3268
            iconst_0
            ireturn
        10: .line 3270
      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 3271
            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 3276
            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 3277
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         2: .line 3278
            aload 3 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
         3: .line 3279
            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 3280
            iconst_0
            ireturn
         5: .line 3283
      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 3284
            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 3283
            astore 4 /* srcSpec */
        start local 4 // java.lang.String srcSpec
         8: .line 3286
            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 3287
            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 3288
            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 3289
            aload 6 /* snippetStream */
            ifnonnull 13
        12: .line 3291
            iconst_0
            ireturn
        13: .line 3293
      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 3294
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
        16: .line 3295
            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 3293
            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 3296
            aload 5 /* at */
            ldc "-history"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 25
        19: .line 3298
            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 3299
            aload 11 /* writer */
            aload 12 /* s */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        22: .line 3300
            aload 11 /* writer */
            ldc "\n"
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 12 // java.lang.String s
        23: .line 3298
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        24: .line 3302
            goto 29
        25: .line 3304
      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 3305
            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 3306
            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 3304
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        29: .line 3308
      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 3309
            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 3310
            iconst_0
            ireturn
        end local 9 // java.io.FileNotFoundException e
        38: .line 3311
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        39: .line 3312
            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 3313
            iconst_0
            ireturn
        end local 9 // java.lang.Exception e
        41: .line 3315
      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 3319
            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 3320
            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 3319
            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 3321
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3322
            iconst_0
            ireturn
         5: .line 3324
      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 3331
            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 3335
            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 3336
            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 3335
            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 3337
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3338
            iconst_0
            ireturn
         5: .line 3340
      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 3350
            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 3354
            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 3355
            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 3354
            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 3356
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3357
            iconst_0
            ireturn
         5: .line 3359
      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 3386
            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 3390
            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 3393
            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 3397
            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 3398
            iload 1 /* index */
            ifge 3
         2: .line 3399
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            iadd
            istore 1 /* index */
            goto 4
         3: .line 3401
      StackMap locals: java.util.List
      StackMap stack:
            iinc 1 /* index */ -1
         4: .line 3402
      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 3403
            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 3404
            goto 9
         7: .line 3405
      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 3406
            iconst_0
            ireturn
         9: .line 3408
      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 3412
            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 3413
            aload 2 /* junk */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
         2: .line 3414
            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 3415
            iconst_0
            ireturn
         4: .line 3417
      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 3418
            aload 3 /* bad */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 8
         6: .line 3419
            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 3420
            iconst_0
            ireturn
        end local 3 // java.lang.String bad
         8: .line 3423
      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 3434
            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 3435
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 3436
            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 3437
            aload 3 /* stream */
            ifnull 5
         4: .line 3439
            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 3441
      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 3444
            aload 1 /* snippet */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 2 /* source */
        start local 2 // java.lang.String source
         1: .line 3445
            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 3446
            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 3447
            aload 0 /* this */
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Z
            pop
         4: .line 3448
            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 3456
            aload 1 /* diagnostics */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 3457
            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 3458
            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 3456
            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 3468
            aload 1 /* exception */
            astore 2 /* rootCause */
        start local 2 // java.lang.Throwable rootCause
         1: .line 3469
            goto 3
         2: .line 3470
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 2 /* rootCause */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 2 /* rootCause */
         3: .line 3469
      StackMap locals:
      StackMap stack:
            aload 2 /* rootCause */
            instanceof jdk.jshell.EvalException
            ifne 2
         4: .line 3472
            aload 2 /* rootCause */
            aload 1 /* exception */
            if_acmpeq 6
            aload 2 /* rootCause */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 6
         5: .line 3474
            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 3476
      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 3481
            aload 1 /* exception */
            instanceof jdk.jshell.EvalException
            ifeq 2
         1: .line 3483
            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 3484
      StackMap locals:
      StackMap stack:
            aload 1 /* exception */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 4
         3: .line 3486
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.UnresolvedReferenceException
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayUnresolvedException:(Ljdk/jshell/UnresolvedReferenceException;)Z
            ireturn
         4: .line 3489
      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 3490
            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 3496
            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 3497
            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 3505
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            astore 3 /* msg */
        start local 3 // java.lang.String msg
         1: .line 3506
            new java.lang.StringBuilder
            dup
            ldc "jshell.err.exception"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 3507
            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 3508
            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 3506
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* key */
        start local 4 // java.lang.String key
         9: .line 3509
            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 3511
            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 3512
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getCause:()Ljdk/jshell/JShellException;
            astore 5 /* cause */
        start local 5 // jdk.jshell.JShellException cause
        12: .line 3513
            aload 5 /* cause */
            ifnull 14
        13: .line 3515
            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 3517
      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 3527
            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 3528
            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 3529
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* disp */
        start local 5 // java.util.List disp
         6: .line 3530
            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 3531
            aload 5 /* disp */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         8: .line 3532
            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 3527
      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 3534
            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 3545
            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 3546
            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 3547
            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 3545
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         5: iload 5
            iload 6
            if_icmplt 1
         6: .line 3551
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            l2i
            istore 4 /* pstart */
        start local 4 // int pstart
         7: .line 3552
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            l2i
            istore 5 /* pend */
        start local 5 // int pend
         8: .line 3553
            iload 4 /* pstart */
            iflt 9
            iload 5 /* pend */
            ifge 11
         9: .line 3554
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.jshell.Diag java.util.List int int
      StackMap stack:
            iconst_0
            istore 4 /* pstart */
        10: .line 3555
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 5 /* pend */
        11: .line 3557
      StackMap locals:
      StackMap stack:
            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
        12: .line 3558
            iconst_0
            istore 7 /* pstartl */
        start local 7 // int pstartl
        13: .line 3559
            bipush -2
            istore 8 /* pendl */
        start local 8 // int pendl
        14: .line 3560
            goto 19
        15: .line 3561
      StackMap locals: java.util.regex.Matcher int int
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.start:()I
            istore 8 /* pendl */
        16: .line 3562
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmplt 18
        17: .line 3563
            goto 20
        18: .line 3565
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pstartl */
        19: .line 3560
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            iload 7 /* pstartl */
            invokevirtual java.util.regex.Matcher.find:(I)Z
            ifne 15
        20: .line 3568
      StackMap locals:
      StackMap stack:
            iload 8 /* pendl */
            iload 7 /* pstartl */
            if_icmpge 22
        21: .line 3569
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 8 /* pendl */
        22: .line 3571
      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
        23: .line 3573
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        24: .line 3574
            iload 4 /* pstart */
            iload 7 /* pstartl */
            isub
            istore 10 /* start */
        start local 10 // int start
        25: .line 3575
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        26: goto 29
        27: .line 3576
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 9 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        28: .line 3575
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 11 /* i */
            iload 10 /* start */
            if_icmplt 27
        end local 11 // int i
        30: .line 3578
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        31: .line 3579
            iload 5 /* pend */
            iload 8 /* pendl */
            if_icmple 32
            iconst_1
            goto 33
      StackMap locals:
      StackMap stack:
        32: iconst_0
      StackMap locals:
      StackMap stack: int
        33: istore 11 /* multiline */
        start local 11 // boolean multiline
        34: .line 3580
            iload 11 /* multiline */
            ifeq 35
            iload 8 /* pendl */
            goto 36
      StackMap locals: int
      StackMap stack:
        35: iload 5 /* pend */
      StackMap locals:
      StackMap stack: int
        36: iload 7 /* pstartl */
            isub
            iconst_1
            isub
            istore 12 /* end */
        start local 12 // int end
        37: .line 3581
            iload 12 /* end */
            iload 10 /* start */
            if_icmple 47
        38: .line 3582
            iload 10 /* start */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        39: goto 42
        40: .line 3583
      StackMap locals: int int
      StackMap stack:
            aload 9 /* sb */
            bipush 45
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        41: .line 3582
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 13 /* i */
            iload 12 /* end */
            if_icmplt 40
        end local 13 // int i
        43: .line 3585
            iload 11 /* multiline */
            ifeq 46
        44: .line 3586
            aload 9 /* sb */
            ldc "-..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        45: .line 3587
            goto 47
        46: .line 3588
      StackMap locals:
      StackMap stack:
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        47: .line 3591
      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
        48: .line 3593
            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
        49: .line 3594
            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
        50: .line 3595
            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
        51: .line 3596
            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
        52: .line 3595
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        53: .line 3597
            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   54     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   54     1     source  Ljava/lang/String;
            0   54     2       diag  Ljdk/jshell/Diag;
            0   54     3  toDisplay  Ljava/util/List<Ljava/lang/String;>;
            2    4     4       line  Ljava/lang/String;
            7   54     4     pstart  I
            8   54     5       pend  I
           12   54     6          m  Ljava/util/regex/Matcher;
           13   54     7    pstartl  I
           14   54     8      pendl  I
           24   54     9         sb  Ljava/lang/StringBuilder;
           25   54    10      start  I
           26   30    11          i  I
           34   54    11  multiline  Z
           37   54    12        end  I
           39   43    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 3606
            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 3607
            iconst_0
            istore 2 /* failed */
        start local 2 // boolean failed
         2: .line 3608
            iconst_0
            istore 3 /* isActive */
        start local 3 // boolean isActive
         3: .line 3609
            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 3610
            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 3612
            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 3616
            iload 3 /* isActive */
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 10
         8: .line 3617
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 10
         9: .line 3618
            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 3610
      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 3622
            iload 3 /* isActive */
            ifeq 15
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifeq 15
        14: .line 3623
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        15: .line 3626
      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 3631
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 2 /* sn */
        start local 2 // jdk.jshell.Snippet sn
         1: .line 3632
            aload 2 /* sn */
            ifnonnull 4
         2: .line 3633
            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 3634
            iconst_0
            ireturn
         4: .line 3636
      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 3637
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 4 /* source */
        start local 4 // java.lang.String source
         6: .line 3638
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 18
         7: .line 3640
            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 3642
            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 3643
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 12
        10: .line 3644
            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 3645
            iconst_1
            ireturn
        12: .line 3648
      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.Selector$FormatWhen.PRIMARY:Ljdk/internal/jshell/tool/Selector$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/Selector$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        13: .line 3649
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        14: .line 3651
            goto 22
        15: .line 3652
      StackMap locals:
      StackMap stack:
            aload 3 /* diagnostics */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 17
        16: .line 3653
            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 3655
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        18: .line 3659
      StackMap locals:
      StackMap stack:
            aload 2 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 22
        19: .line 3660
            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 3663
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* ste */
            getstatic jdk.internal.jshell.tool.Selector$FormatWhen.UPDATE:Ljdk/internal/jshell/tool/Selector$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/Selector$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        21: .line 3664
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        end local 5 // java.util.List other
        22: .line 3667
      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 3672
            iconst_0
            istore 3 /* overlap */
        start local 3 // int overlap
         1: .line 3673
            aload 2 /* caused */
            ifnull 7
         2: .line 3674
            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 3675
            goto 5
         4: .line 3677
      StackMap locals: int int
      StackMap stack:
            iinc 3 /* overlap */ 1
         5: .line 3675
      StackMap locals:
      StackMap stack:
            iload 3 /* overlap */
            iload 4 /* maxOverlap */
            if_icmpge 7
         6: .line 3676
            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 3680
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 34
         9: .line 3681
      StackMap locals: int
      StackMap stack:
            aload 1 /* stes */
            iload 4 /* i */
            aaload
            astore 5 /* ste */
        start local 5 // java.lang.StackTraceElement ste
        10: .line 3682
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
        11: .line 3683
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
            astore 7 /* cn */
        start local 7 // java.lang.String cn
        12: .line 3684
            aload 7 /* cn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 19
        13: .line 3685
            aload 7 /* cn */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* dot */
        start local 8 // int dot
        14: .line 3686
            iload 8 /* dot */
            ifle 17
        15: .line 3687
            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 3688
            goto 18
        17: .line 3689
      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 3691
      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 3693
      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 3694
            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 3695
            aload 6 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 3697
      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 3698
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getLineNumber:()I
            istore 9 /* lineNumber */
        start local 9 // int lineNumber
        24: .line 3699
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.isNativeMethod:()Z
            ifeq 26
        25: .line 3700
            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 3701
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 8 /* fileName */
            ifnonnull 28
        27: .line 3702
            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 3703
      StackMap locals:
      StackMap stack:
            iload 9 /* lineNumber */
            iflt 30
        29: .line 3704
            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 3705
      StackMap locals:
      StackMap stack:
            aload 8 /* fileName */
        31: .line 3699
      StackMap locals:
      StackMap stack: java.lang.String
            astore 10 /* loc */
        start local 10 // java.lang.String loc
        32: .line 3706
            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 3680
            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 3709
            iload 3 /* overlap */
            ifeq 37
        36: .line 3710
            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 3712
      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.Selector$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/Selector$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 3716
            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 3720
      StackMap locals:
      StackMap stack:
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 7
         2: .line 3721
            iload 3 /* isSignatureChange */
            ifeq 4
         3: .line 3722
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.REPLACED:Ljdk/internal/jshell/tool/Selector$FormatAction;
            goto 5
         4: .line 3723
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.MODIFIED:Ljdk/internal/jshell/tool/Selector$FormatAction;
         5: .line 3721
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.Selector$FormatAction
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
         6: .line 3724
            goto 15
        end local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
         7: .line 3725
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.ADDED:Ljdk/internal/jshell/tool/Selector$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
         8: .line 3727
            goto 15
        end local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
         9: .line 3729
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.OVERWROTE:Ljdk/internal/jshell/tool/Selector$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
        10: .line 3730
            goto 15
        end local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
        11: .line 3732
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Selector$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
        12: .line 3733
            goto 15
        end local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
        13: .line 3738
      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 3739
            getstatic jdk.internal.jshell.tool.Selector$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Selector$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Selector$FormatAction act
        15: .line 3741
      StackMap locals: jdk.internal.jshell.tool.Selector$FormatAction
      StackMap stack:
            aload 4 /* act */
            areturn
        end local 4 // jdk.internal.jshell.tool.Selector$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/Selector$FormatAction;
            8    9     4                act  Ljdk/internal/jshell/tool/Selector$FormatAction;
           10   11     4                act  Ljdk/internal/jshell/tool/Selector$FormatAction;
           12   13     4                act  Ljdk/internal/jshell/tool/Selector$FormatAction;
           15   16     4                act  Ljdk/internal/jshell/tool/Selector$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 3745
            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 3746
            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 3747
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
         3: .line 3748
            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 3923
            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 3929
            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 3933
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            ifnonnull 5
         1: .line 3935
            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 3936
            goto 5
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 3937
            ldc "(version info not available)"
            areturn
         5: .line 3941
      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 3943
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
            pop
         8: .line 3944
            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 2552
            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 2560
            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 140
            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 9
            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 15
            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 10
            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 16
            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.RECORD_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 8
            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_STATIC_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_3
            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.SINGLE_TYPE_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_1
            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.STATEMENT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 17
            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.STATIC_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_4
            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.TEMP_VAR_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 13
            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.TYPE_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_2
            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.UNKNOWN_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 18
            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_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_DECLARATION_WITH_INITIALIZER_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 12
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_VALUE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 14
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: 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
          53    54      55  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 140
            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 1515
            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 1811
            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 1814
            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 1816
            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 1818
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 1821
      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 1822
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            iload 2 /* c */
            iadd
            aload 3 /* a */
         4: .line 1821
            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 1823
            aload 3 /* a */
            iconst_0
            dup2
            iaload
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            isub
            iastore
         6: .line 1824
            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 1828
            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 1831
            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 1868
            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 1875
            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 1880
            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 1904
            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 1905
            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 1905
            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 888
            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 1087
            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 1088
            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 1089
      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 1090
      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 1099
            aload 1 /* deadState */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            if_acmpne 4
         1: .line 1100
            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 1101
            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 1102
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         4: .line 1104
      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 1295
            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 1367
            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 1389
            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 1403
            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 1530
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
         1: .line 1532
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* space */
        start local 5 // int space
         2: .line 1533
            iload 5 /* space */
            iconst_m1
            if_icmpeq 6
         3: .line 1534
            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 1535
            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 1536
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* space */
            iconst_1
            iadd
            iadd
            iastore
        end local 6 // java.lang.String rest
         6: .line 1539
      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 1545
            aload 1 /* code */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastSlash */
        start local 4 // int lastSlash
         1: .line 1546
            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 1547
            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 1548
            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 1549
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
         7: .line 1550
            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 1551
            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 1552
            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 1553
            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 1554
            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 1557
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        20: .line 1558
            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 1559
            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 1560
            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 1561
            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 1562
            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 1564
      StackMap locals:
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            aload 5 /* path */
            invokevirtual java.lang.String.length:()I
            iastore
        26: .line 1565
            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 1570
            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 1571
            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 1572
            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 1578
            aload 3 /* anchor */
            iconst_0
            iconst_0
            iastore
         1: .line 1579
            aload 1 /* prefix */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1580
            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 1581
            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 1582
      StackMap locals: int java.util.Set
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         5: .line 1584
      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 1585
            aload 0
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
         7: .line 1586
            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 1589
            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 1592
            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 1593
            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 1594
            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 1585
            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 1602
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         1: .line 1603
            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 1604
            iload 7 /* pastSpace */
            ifne 4
         3: .line 1605
            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 1607
      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 1608
            aload 5 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
         6: .line 1609
            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 1617
            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 1618
            iload 5 /* pastSpace */
            ifne 13
         2: .line 1622
            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 1623
            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 1624
            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 1625
            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 1628
            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 1623
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        10: .line 1629
            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 1623
            astore 4 /* result */
        end local 6 // boolean noslash
        start local 4 // java.util.List result
        12: .line 1630
            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 1631
      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 1632
            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 1631
            astore 4 /* result */
        start local 4 // java.util.List result
        17: .line 1633
            goto 19
        end local 4 // java.util.List result
        18: .line 1634
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
        19: .line 1636
      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 1637
            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 1643
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.List result
         1: .line 1644
            aload 0 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1645
            iload 4 /* space */
            iconst_m1
            if_icmpne 4
         3: .line 1646
            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 1648
      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 1649
            aload 2 /* anchor */
            iconst_0
            dup2
            iaload
            iload 4 /* space */
            iconst_1
            iadd
            iadd
            iastore
         6: .line 1650
            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 1657
            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 1658
            aload 4 /* ovm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
         2: .line 1659
            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 1660
            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 1661
            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 1662
            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 1663
            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 1660
            astore 6 /* ps */
        start local 6 // java.util.List ps
         8: .line 1664
            aload 6 /* ps */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 15
         9: .line 1665
            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 1666
            aload 6 /* ps */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
        11: .line 1667
            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 1666
            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 1668
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        14: .line 1669
            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 1672
      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 1673
            aload 5 /* om */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 29
        17: .line 1674
            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 1675
            aload 0
        19: .line 1676
            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 1675
            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 1677
            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 1678
            aload 7 /* result */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        23: .line 1679
            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 1690
            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 1678
            astore 7 /* result */
        26: .line 1691
            iinc 6 /* pastSpace */ -1
        27: .line 1693
      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 1694
            aload 7 /* result */
            areturn
        end local 7 // java.util.List result
        end local 6 // int pastSpace
        29: .line 1696
      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 1697
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 37
        31: .line 1698
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        32: .line 1699
            aload 0
        33: .line 1700
            ldc ""
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        34: .line 1699
            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 1701
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        36: .line 1702
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        37: .line 1704
      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 1726
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 5 /* leftAnchor */
        start local 5 // int[] leftAnchor
         1: .line 1727
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 6 /* rightAnchor */
        start local 6 // int[] rightAnchor
         2: .line 1729
            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 1730
            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 1732
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* suggestions */
        start local 9 // java.util.List suggestions
         5: .line 1734
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmplt 8
         6: .line 1735
            aload 4 /* anchor */
            iconst_0
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            iastore
         7: .line 1736
            aload 9 /* suggestions */
            aload 7 /* leftSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 1739
      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 1740
            aload 4 /* anchor */
            iconst_0
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            iastore
        10: .line 1741
            aload 9 /* suggestions */
            aload 8 /* rightSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 1744
      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 1756
            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 1761
            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 1762
            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 1767
            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 1768
            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 1773
            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 1774
            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 1929
            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 1930
            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 1942
            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 1943
            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 1944
            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 1945
            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 1946
            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 1947
            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 2001
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE2"
            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 2033
            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 2048
            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 2447
            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 2448
            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 2473
            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 2486
            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 2487
            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 2488
            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 2492
            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 2493
            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 2494
            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 2504
            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 2867
            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 2879
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 3 /* src */
        start local 3 // java.lang.String src
         1: .line 2880
            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 { // 13 - 18
                   13: 3
                   14: 2
                   15: 3
                   16: 3
                   17: 7
                   18: 3
              default: 14
          }
         2: .line 2882
      StackMap locals: java.lang.String
      StackMap stack:
            goto 15
         3: .line 2887
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 5
         4: .line 2888
            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 2890
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 2891
            goto 15
         7: .line 2893
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc "}"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 10
         8: .line 2896
            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 2897
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2898
            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 2900
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2901
            goto 15
        14: .line 2903
      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 2906
      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 2914
            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 2923
            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 2924
            aload 1
            iconst_0
            aload 3 /* s */
            aastore
         2: .line 2925
            goto 4
         3: .line 2926
      StackMap locals:
      StackMap stack:
            aload 2
            aload 3 /* s */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 2928
      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 2931
            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 2932
            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 2934
            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 3037
            aload 1
            iconst_0
            baload
            ifne 3
         1: .line 3038
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         2: .line 3039
            aload 1
            iconst_0
            iconst_1
            bastore
         3: .line 3041
      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 3042
            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 3260
            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 3326
            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 3327
            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 3328
      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 3326
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* val */
        start local 2 // java.lang.String val
         4: .line 3329
            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 3330
            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 3341
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.signature:()Ljava/lang/String;
            astore 2 /* sig */
        start local 2 // java.lang.String sig
         1: .line 3342
            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 3343
            iload 3 /* i */
            ifgt 5
         3: .line 3344
            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 3345
            goto 6
         5: .line 3346
      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 3348
      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 3349
            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 3362
            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 - 9
                    5: 3
                    6: 1
                    7: 5
                    8: 9
                    9: 7
              default: 11
          }
         1: .line 3364
      StackMap locals:
      StackMap stack:
            ldc "interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         2: .line 3365
            goto 13
        end local 2 // java.lang.String kind
         3: .line 3367
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         4: .line 3368
            goto 13
        end local 2 // java.lang.String kind
         5: .line 3370
      StackMap locals:
      StackMap stack:
            ldc "enum"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         6: .line 3371
            goto 13
        end local 2 // java.lang.String kind
         7: .line 3373
      StackMap locals:
      StackMap stack:
            ldc "@interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         8: .line 3374
            goto 13
        end local 2 // java.lang.String kind
         9: .line 3376
      StackMap locals:
      StackMap stack:
            ldc "record"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        10: .line 3377
            goto 13
        end local 2 // java.lang.String kind
        11: .line 3379
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.$assertionsDisabled:Z
            ifne 12
            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
        12: .line 3380
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        13: .line 3383
      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
        14: .line 3384
            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
        15: .line 3385
            return
        end local 1 // jdk.jshell.TypeDeclSnippet ck
        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    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;
           10   11     2  kind  Ljava/lang/String;
           13   15     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 3391
            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 3392
            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 3436
            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 3439
            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 3532
            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 1551
            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 1552
            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 1559
            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 1560
            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 1561
            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 1586
            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 1587
            aload 1 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         2: .line 1588
            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 1589
            aload 0 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 2
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 1590
            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 1591
      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 1592
            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 1624
            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 1625
            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 1626
            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 1627
      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 1625
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1627
            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 1661
            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 1662
            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 1679
            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 1689
            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
  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 final FormatAction = jdk.internal.jshell.tool.Selector$FormatAction of jdk.internal.jshell.tool.Selector
  public final FormatWhen = jdk.internal.jshell.tool.Selector$FormatWhen of jdk.internal.jshell.tool.Selector
  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