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 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 141
            ldc Ljdk/internal/jshell/tool/JShellTool;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic jdk.internal.jshell.tool.JShellTool.$assertionsDisabled:Z
         3: .line 143
            ldc "\\R"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.LINEBREAK:Ljava/util/regex/Pattern;
         4: .line 144
            ldc "[se]?\\d+([-\\s].*)?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.ID:Ljava/util/regex/Pattern;
         5: .line 145
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic jdk.internal.jshell.tool.JShellTool.ID:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.RERUN_ID:Ljava/util/regex/Pattern;
         6: .line 146
            ldc "/\\-\\d+( .*)?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.RERUN_PREVIOUS:Ljava/util/regex/Pattern;
         7: .line 147
            ldc "/?set .*"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUB:Ljava/util/regex/Pattern;
         8: .line 213
            new jdk.internal.jshell.tool.JShellTool$EditorSetting
            dup
            aconst_null
            iconst_0
            invokespecial jdk.internal.jshell.tool.JShellTool$EditorSetting.<init>:([Ljava/lang/String;Z)V
            putstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
         9: .line 224
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
        10: .line 225
            ldc "JSHELLEDITOR"
            aastore
            dup
            iconst_1
            ldc "VISUAL"
            aastore
            dup
            iconst_2
            ldc "EDITOR"
            aastore
        11: .line 224
            putstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
        12: .line 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 1495
            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 1496
            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 1497
            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 1498
            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 1499
            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 1500
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        25: .line 1501
            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 1500
            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 1502
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
        28: .line 1503
            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 1504
            ldc "-restore "
            aastore
            dup
            iconst_1
            ldc "-quiet "
        30: .line 1502
            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 1505
            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 1506
            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 1507
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
        34: .line 1509
            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 1510
            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 1511
            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 1512
            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 1960
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
        39: .line 1961
            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 1960
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
        41: .line 1961
            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 179
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 164
            aload 0 /* this */
            new jdk.internal.jshell.tool.Feedback
            dup
            invokespecial jdk.internal.jshell.tool.Feedback.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
         2: .line 200
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         3: .line 201
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         4: .line 203
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         5: .line 204
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         6: .line 205
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 206
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
         8: .line 210
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         9: .line 211
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
        10: .line 215
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        11: .line 216
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debugFlags:I
        12: .line 217
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
        13: .line 218
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        14: .line 219
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        15: .line 220
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
        16: .line 221
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.BUILT_IN_EDITOR:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            putfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
        17: .line 222
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        18: .line 1514
            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 1771
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/list"
        20: .line 1772
            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 1773
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        22: .line 1774
            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 1773
            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 1771
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        25: .line 1775
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/edit"
        26: .line 1776
            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 1777
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        28: .line 1778
            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 1777
            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 1775
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        31: .line 1779
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/drop"
        32: .line 1780
            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 1781
            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 1782
            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 1779
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        36: .line 1783
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/save"
        37: .line 1784
            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 1785
            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 1783
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        40: .line 1786
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/open"
        41: .line 1787
            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 1788
            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 1786
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        44: .line 1789
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/vars"
        45: .line 1790
            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 1791
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        47: .line 1792
            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 1791
            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 1789
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        50: .line 1793
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/methods"
        51: .line 1794
            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 1795
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        53: .line 1796
            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 1795
            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 1793
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        56: .line 1797
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/types"
        57: .line 1798
            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 1799
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        59: .line 1800
            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 1799
            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 1797
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        62: .line 1801
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/imports"
        63: .line 1802
            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 1803
            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 1801
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        66: .line 1804
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/exit"
        67: .line 1805
            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 1806
            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 1804
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        70: .line 1818
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/env"
        71: .line 1819
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$19(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        72: .line 1820
            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 1818
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        74: .line 1821
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reset"
        75: .line 1822
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$20(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        76: .line 1823
            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 1821
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        78: .line 1824
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reload"
        79: .line 1825
            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 1826
            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 1824
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        82: .line 1827
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/history"
        83: .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.cmdHistory(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        84: .line 1829
            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 1827
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        86: .line 1830
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/debug"
        87: .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.cmdDebug(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        88: .line 1832
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        89: .line 1833
            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 1830
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        91: .line 1834
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/help"
        92: .line 1835
            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 1836
            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 1834
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        95: .line 1837
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/set"
        96: .line 1838
            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 1839
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
        98: .line 1841
            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 1842
            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 1843
            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 1844
            ldc "mode"
       102: .line 1845
            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 1846
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       104: .line 1844
            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 1847
            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 1848
            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 1849
            ldc "start"
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       108: .line 1850
            ldc "indent"
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       109: .line 1839
            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 1851
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
       111: .line 1839
            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 1837
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       113: .line 1852
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/?"
       114: .line 1853
            ldc "help.quest"
       115: .line 1854
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdHelp(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       116: .line 1855
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       117: .line 1856
            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 1852
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       119: .line 1857
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/!"
       120: .line 1858
            ldc "help.bang"
       121: .line 1859
            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 1860
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       123: .line 1861
            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 1857
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       125: .line 1864
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/<id>"
       126: .line 1865
            ldc "help.slashID"
       127: .line 1866
            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 1867
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       129: .line 1868
            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 1864
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       131: .line 1869
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/-<n>"
       132: .line 1870
            ldc "help.previous"
       133: .line 1871
            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 1872
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       135: .line 1873
            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 1869
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       137: .line 1874
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "intro"
       138: .line 1875
            ldc "help.intro"
       139: .line 1876
            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 1874
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       141: .line 1877
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "keys"
       142: .line 1878
            ldc "help.keys"
       143: .line 1879
            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 1877
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       145: .line 1880
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "id"
       146: .line 1881
            ldc "help.id"
       147: .line 1882
            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 1880
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       149: .line 1883
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "shortcuts"
       150: .line 1884
            ldc "help.shortcuts"
       151: .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
       152: .line 1883
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       153: .line 1886
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "context"
       154: .line 1887
            ldc "help.context"
       155: .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
       156: .line 1886
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       157: .line 1889
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "rerun"
       158: .line 1890
            ldc "help.rerun"
       159: .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
       160: .line 1889
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       161: .line 1893
            aload 0 /* this */
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
       162: .line 1894
            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 1895
            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 1896
            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 1897
            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 1893
            putfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
       167: .line 183
            aload 0 /* this */
            aload 1 /* cmdin */
            putfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
       168: .line 184
            aload 0 /* this */
            aload 2 /* cmdout */
            putfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
       169: .line 185
            aload 0 /* this */
            aload 3 /* cmderr */
            putfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
       170: .line 186
            aload 0 /* this */
            aload 4 /* console */
            putfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
       171: .line 187
            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 193
            aload 0 /* this */
            aload 6 /* userout */
            putfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
       175: .line 194
            aload 0 /* this */
            aload 7 /* usererr */
            putfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
       176: .line 195
            aload 0 /* this */
            aload 8 /* prefs */
            putfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
       177: .line 196
            aload 0 /* this */
            aload 9 /* envvars */
            putfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
       178: .line 197
            aload 0 /* this */
            aload 10 /* locale */
            putfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
       179: .line 198
            return
        end local 10 // java.util.Locale locale
        end local 9 // java.util.Map envvars
        end local 8 // jdk.internal.jshell.tool.PersistentStorage prefs
        end local 7 // java.io.PrintStream usererr
        end local 6 // java.io.PrintStream userout
        end local 5 // java.io.InputStream userin
        end local 4 // java.io.PrintStream console
        end local 3 // java.io.PrintStream cmderr
        end local 2 // java.io.PrintStream cmdout
        end local 1 // java.io.InputStream cmdin
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0  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=5, 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
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* encoded */
        start local 3 // java.lang.String encoded
         4: .line 1134
            aload 3 /* encoded */
            ifnull 7
            aload 3 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 7
         5: .line 1135
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 2 /* initmh */
            aload 3 /* encoded */
            invokevirtual jdk.internal.jshell.tool.Feedback.restoreEncodedModes:(Ljdk/internal/jshell/tool/MessageHandler;Ljava/lang/String;)Z
            ifne 7
         6: .line 1137
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.remove:(Ljava/lang/String;)V
         7: .line 1140
      StackMap locals: jdk.internal.jshell.tool.MessageHandler java.lang.String
      StackMap stack:
            aload 1 /* initMode */
            ifnull 12
         8: .line 1142
            aload 0 /* this */
            aload 2 /* initmh */
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "--feedback"
            aload 1 /* initMode */
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 15
         9: .line 1143
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        10: .line 1144
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        11: .line 1146
            goto 15
        12: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "FEEDBACK"
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* fb */
        start local 4 // java.lang.String fb
        13: .line 1148
            aload 4 /* fb */
            ifnull 15
        14: .line 1151
            aload 0 /* this */
            aload 2 /* initmh */
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "previous retain feedback"
            new java.lang.StringBuilder
            dup
            ldc "-retain "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fb */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial jdk.internal.jshell.tool.ArgTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            pop
        end local 4 // java.lang.String fb
        15: .line 1154
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String encoded
        end local 2 // jdk.internal.jshell.tool.MessageHandler initmh
        end local 1 // java.lang.String initMode
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     1  initMode  Ljava/lang/String;
            1   16     2    initmh  Ljdk/internal/jshell/tool/MessageHandler;
            4   16     3   encoded  Ljava/lang/String;
           13   15     4        fb  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      initMode  

  private void startUpRun(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String start
         0: .line 1158
            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 1159
            aload 0 /* this */
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         3: .line 1160
            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 1161
            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 1162
            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 1164
      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 1167
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         1: .line 1168
            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 1169
            aload 1 /* oldState */
            ifnull 7
         3: .line 1170
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         4: .line 1171
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
         5: .line 1172
            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 1173
            aload 1 /* oldState */
            invokevirtual jdk.jshell.JShell.close:()V
         7: .line 1175
      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 1183
            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 1184
            aload 0 /* this */
            aload 1 /* in */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         2: .line 1187
            ldc ""
            astore 3 /* remaining */
        start local 3 // java.lang.String remaining
         3: .line 1188
            goto 6
         4: .line 1190
      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 1192
            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 1188
      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 1194
            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 1199
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        10: .line 1196
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        11: .line 1197
            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 1199
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        13: .line 1198
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 1199
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        15: .line 1200
            aload 5
            athrow
        16: .line 1199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        17: .line 1201
      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 1210
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 1212
            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 1214
            ldc ""
            areturn
         3: .line 1218
      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 1219
            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 1221
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            areturn
         6: .line 1224
      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 1237
            aload 1 /* initial */
            astore 2 /* src */
        start local 2 // java.lang.String src
         1: .line 1238
            goto 27
         2: .line 1239
      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 1240
            aload 2 /* src */
            areturn
         4: .line 1242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 7
         5: .line 1243
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 6
            ldc " \u0005"
            goto 8
         6: .line 1244
      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 1245
      StackMap locals:
      StackMap stack:
            ldc ""
         8: .line 1242
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* firstLinePrompt */
        start local 3 // java.lang.String firstLinePrompt
         9: .line 1247
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 12
        10: .line 1248
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 11
            ldc " \u0006"
            goto 13
        11: .line 1249
      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 1250
      StackMap locals:
      StackMap stack:
            ldc ""
        13: .line 1247
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* continuationPrompt */
        start local 4 // java.lang.String continuationPrompt
        14: .line 1254
            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 1255
            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 1257
            ldc ""
            astore 2 /* src */
        18: .line 1258
            goto 27
        start local 5 // java.lang.String line
        19: .line 1260
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* line */
            ifnonnull 23
        20: .line 1262
            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 1264
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        22: .line 1266
      StackMap locals:
      StackMap stack:
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
        23: .line 1268
      StackMap locals:
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        24: .line 1269
            aload 5 /* line */
            goto 26
        25: .line 1270
      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 1268
      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 1238
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 2
        28: .line 1272
            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 1278
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 9
         1: .line 1281
            aload 1 /* src */
            ldc " "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 3 /* sp */
        start local 3 // int sp
         2: .line 1282
            iload 3 /* sp */
            ifge 3
            iconst_1
            ireturn
         3: .line 1283
      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 1284
            aload 2 /* check */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
            iconst_1
            ireturn
         5: .line 1285
      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 1286
            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 1287
            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 1289
      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 1293
      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 1295
      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 1296
            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 1297
      StackMap locals: jdk.jshell.SourceCodeAnalysis$Completeness
      StackMap stack:
            iconst_1
            ireturn
        13: .line 1299
      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 1303
            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 1307
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 2
         1: .line 1308
            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 1310
      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 1320
            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 1321
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSource:(Ljava/lang/String;)Z
            istore 3
         2: .line 1327
            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 1321
            iload 3
            ireturn
         4: .line 1322
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            pop
         5: .line 1323
            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 1324
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 1327
            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 1325
            iconst_0
            ireturn
         9: .line 1326
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        10: .line 1327
            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 1328
            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 1338
            aload 1 /* input */
            ldc "/-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 1341
            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 1342
            return
         3: .line 1343
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         4: .line 1349
      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 1350
            iload 4 /* idx */
            ifle 9
         6: .line 1351
            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 1352
            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 1353
            goto 11
        end local 3 // java.lang.String arg
        end local 2 // java.lang.String cmd
         9: .line 1354
      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 1355
            ldc ""
            astore 3 /* arg */
        start local 3 // java.lang.String arg
        11: .line 1358
      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 1359
            aload 5 /* candidates */
            arraylength
            tableswitch { // 0 - 1
                    0: 13
                    1: 19
              default: 23
          }
        13: .line 1362
      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 1364
            aload 0 /* this */
            aload 1 /* input */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunHistoryEntriesById:(Ljava/lang/String;)V
        15: .line 1365
            goto 27
        16: .line 1366
      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 1367
            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 1369
            goto 27
        19: .line 1371
      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 1373
            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 1374
            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 1376
            goto 27
        end local 6 // jdk.internal.jshell.tool.JShellTool$Command command
        23: .line 1379
      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 1380
            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 1379
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 1381
            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 1384
      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 1387
            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 1388
            aload 3 /* exact */
            ifnull 3
         2: .line 1389
            iconst_1
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            dup
            iconst_0
            aload 3 /* exact */
            aastore
            areturn
         3: .line 1391
      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 1392
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 1393
            aload 2 /* filter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 1394
            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 1395
            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 1391
            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 1399
            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 1400
            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 1402
      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 1516
            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 1517
            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 1520
            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 1535
            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 1561
            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 1568
            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 1592
            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 1606
            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 1633
            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 1647
            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 1701
            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 1706
            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 1711
            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 1716
            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 1742
            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 1746
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1747
            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 1746
            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 1751
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1752
            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 1753
            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 1751
            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 1757
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1758
            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 1759
            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 1757
            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 1763
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1764
            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 1765
            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 1763
            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 1903
            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 1907
            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 1908
            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 1909
            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 1910
            aload 4 /* stripped */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* space */
        start local 6 // int space
         6: .line 1911
            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 1912
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
        10: .line 1916
            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 1917
            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 1919
            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 1920
            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 1921
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$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 1922
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        16: .line 1918
            astore 9 /* toShow */
        end local 10 // java.lang.String setSubcommand
        start local 9 // java.util.List toShow
        17: .line 1923
            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 1925
            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 1924
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        21: .line 1926
            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 1928
            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 1927
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        25: .line 1929
            goto 34
        end local 9 // java.util.List toShow
        26: .line 1931
      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 1932
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        28: .line 1933
            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 1935
            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 1937
            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 1938
            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 1939
            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 1930
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        34: .line 1942
      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 1943
            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 1944
            goto 45
        39: .line 1945
      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 1946
            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 1945
      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 1950
      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 1955
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.stop:()V
         1: .line 1956
            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 1964
            ldc "/set"
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 1965
            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 1966
            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 1967
            aload 4 /* which */
            ifnonnull 5
         4: .line 1968
            iconst_0
            ireturn
         5: .line 1970
      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 1972
      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 1973
            iconst_0
            ireturn
        18: .line 1977
      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 1978
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showIndent:()V
        20: .line 1979
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        21: .line 1980
            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 1981
            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 1982
            iconst_1
            ireturn
        24: .line 1985
      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 1987
      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 1989
      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 1991
      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 1992
            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 1991
            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 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.setPrompt:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        31: .line 1996
      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 1998
      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 2000
      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 2001
            aload 6 /* value */
            ifnull 44
        35: .line 2003
            aload 6 /* value */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 7 /* indent */
        start local 7 // int indent
        36: .line 2004
            iload 7 /* indent */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            astore 8 /* indentValue */
        start local 8 // java.lang.String indentValue
        37: .line 2005
            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 2006
            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 2007
            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 2008
            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 2009
            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 2010
            iconst_0
            ireturn
        44: .line 2013
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showIndent:()V
        45: .line 2015
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 6 // java.lang.String value
        46: .line 2017
      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 2018
            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 2023
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 1 /* messageHandler */
            aload 2 /* at */
         1: .line 2024
            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 2023
            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 2030
            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 2031
            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 2032
            aload 4 /* sub */
            ifnonnull 7
         3: .line 2034
            aload 2 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 2035
            ldc "_retain"
            goto 6
         5: .line 2036
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "_blank"
         6: .line 2034
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
         7: .line 2038
      StackMap locals:
      StackMap stack:
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         8: .line 2039
            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 2040
            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 2038
            astore 5 /* matches */
        start local 5 // java.lang.String[] matches
        11: .line 2041
            aload 5 /* matches */
            arraylength
            ifne 17
        12: .line 2043
            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 2044
            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 2045
            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 2044
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 2047
            aconst_null
            areturn
        17: .line 2049
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 5 /* matches */
            arraylength
            iconst_1
            if_icmple 23
        18: .line 2051
            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 2052
            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 2053
            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 2052
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2055
            aconst_null
            areturn
        23: .line 2057
      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 2227
            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 2228
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fns */
        start local 2 // java.util.List fns
         2: .line 2229
            goto 4
         3: .line 2230
      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 2229
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            ifnonnull 3
         5: .line 2232
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2233
            iconst_0
            ireturn
         7: .line 2235
      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 2236
            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 2237
            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 2238
            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 2240
            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 2241
            iload 7 /* argCount */
            iconst_1
            if_icmple 23
        21: .line 2242
            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 2243
            iconst_0
            ireturn
        23: .line 2245
      StackMap locals: int
      StackMap stack:
            iload 7 /* argCount */
            ifne 26
            iload 5 /* retainOption */
            ifne 26
        24: .line 2247
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        25: .line 2248
            iconst_1
            ireturn
        26: .line 2250
      StackMap locals:
      StackMap stack:
            iload 6 /* hasFile */
            ifeq 30
        27: .line 2251
            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 2252
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            ifnonnull 35
        29: .line 2253
            iconst_0
            ireturn
        30: .line 2255
      StackMap locals:
      StackMap stack:
            iload 3 /* defaultOption */
            ifeq 33
        31: .line 2256
            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 2257
            goto 35
      StackMap locals:
      StackMap stack:
        33: iload 4 /* noneOption */
            ifeq 35
        34: .line 2258
            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 2260
      StackMap locals:
      StackMap stack:
            iload 5 /* retainOption */
            ifeq 37
        36: .line 2262
            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 2264
      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 2270
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2271
            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 2272
            aload 2 /* retained */
            ifnull 14
         3: .line 2273
            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 2274
            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 2275
            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 2276
            iload 4 /* currentDifferent */
            ifeq 10
         9: .line 2277
            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 2279
      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 2280
            iload 4 /* currentDifferent */
            ifeq 16
        12: .line 2281
            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 2283
            goto 16
        14: .line 2284
      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 2285
            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 2287
      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 2288
            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 2291
            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 2292
            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 2295
            aload 1 /* arg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
         1: .line 2296
            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 2297
            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 2298
            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 2299
            goto 50
        11: .line 2300
      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 2301
            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 2303
      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 2304
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        16: .line 2305
            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 2306
            goto 47
        18: .line 2308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        19: .line 2309
            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 2310
            goto 47
        21: .line 2312
      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 2313
            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 2314
            goto 47
        24: .line 2316
      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 2317
            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 2318
            goto 47
        27: .line 2320
      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 2321
            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 2322
            goto 47
        30: .line 2324
      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 2325
            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 2326
            goto 47
        33: .line 2328
      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 2329
            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 2330
            goto 47
        36: .line 2332
      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 2333
            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 2334
            goto 47
        39: .line 2336
      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 2337
            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 2338
            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 2336
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        43: .line 2339
            goto 47
        44: .line 2341
      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 2342
            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 2343
            iconst_0
            ireturn
        end local 2 // char ch
        47: .line 2300
      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 2346
            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 2348
      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 2352
            aload 1 /* arg */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 39
         1: .line 2353
            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 2354
            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 2355
            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 2357
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 38
         6: .line 2358
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 5 /* sn */
        start local 5 // jdk.jshell.Snippet sn
         7: .line 2361
            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 2362
            aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 7 /* source */
        start local 7 // java.lang.String source
         9: .line 2363
            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 2366
            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 2367
            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 2369
            iconst_0
            ireturn
        13: .line 2373
      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 2375
            iconst_0
            ireturn
        15: .line 2378
      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 2379
            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 2380
            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 2381
            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 2382
            goto 23
        end local 8 // java.lang.String typeName
        21: .line 2384
      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 2385
            iconst_0
            ireturn
        start local 8 // java.lang.String typeName
        23: .line 2387
      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 2395
      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 2406
            aload 0 /* this */
            iload 10 /* i */
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        32: .line 2407
            goto 38
        end local 10 // int i
        33: .line 2408
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        34: .line 2410
            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 2411
            iconst_0
            ireturn
        36: .line 2415
      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 2416
            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 2355
      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 2421
      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 2422
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        41: .line 2423
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ifne 44
        42: .line 2424
            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 2425
            goto 45
        44: .line 2426
      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 2428
      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 2432
            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 2433
            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 2434
            aload 3 /* subject */
            ifnull 35
         3: .line 2437
            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 2438
            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 2440
            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 2437
            astore 4 /* matches */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
         7: .line 2441
            aload 4 /* matches */
            arraylength
            iconst_1
            if_icmpne 16
         8: .line 2442
            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 2443
            aload 5 /* cmd */
            ldc "/set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 2445
            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 2446
            aload 6 /* which */
            ifnonnull 13
        12: .line 2447
            iconst_0
            ireturn
        13: .line 2449
      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 2450
            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 2451
            iconst_1
            ireturn
        end local 6 // java.lang.String which
        end local 5 // java.lang.String cmd
        16: .line 2455
      StackMap locals:
      StackMap stack:
            aload 4 /* matches */
            arraylength
            ifle 23
        17: .line 2456
            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 2457
            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 2456
            iinc 6 1
      StackMap locals:
      StackMap stack:
        21: iload 6
            iload 7
            if_icmplt 18
        22: .line 2459
            iconst_1
            ireturn
        23: .line 2463
      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 2464
            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 2465
            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 2463
            astore 5 /* subs */
        start local 5 // java.lang.String[] subs
        27: .line 2466
            aload 5 /* subs */
            arraylength
            ifle 34
        28: .line 2467
            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 2468
            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 2467
            iinc 7 1
      StackMap locals:
      StackMap stack:
        32: iload 7
            iload 8
            if_icmplt 29
        33: .line 2470
            iconst_1
            ireturn
        34: .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[] 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 2475
      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 2476
            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 2477
            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 2478
            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 2479
            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 2476
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        41: .line 2481
            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 2482
            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 2483
            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 2484
            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 2485
            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 2482
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        47: .line 2487
            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 2491
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         1: .line 2492
            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 2493
            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 2494
            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 2495
            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 2496
            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 2497
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
         7: .line 2498
            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 2501
            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 2502
            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 2503
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 4
         3: .line 2504
            iconst_0
            ireturn
         4: .line 2506
      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 2507
            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 2509
            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 2507
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 2511
            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 2530
            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 2531
            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 2532
            aload 6 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 5
         4: .line 2533
            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 2530
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 1
         7: .line 2536
            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 2540
            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 2544
            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 2548
            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 2552
            aload 1 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         1: .line 2553
            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 2552
            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 2568
            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 2569
            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 2570
            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 2584
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* args */
        start local 4 // java.util.List args
         1: .line 2586
            goto 3
        start local 5 // java.lang.String s
         2: .line 2587
      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 2586
      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 2589
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2590
            aconst_null
            areturn
         7: .line 2592
      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 2593
            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 2594
            aconst_null
            areturn
        10: .line 2596
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 13
        11: .line 2597
            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 2598
            aconst_null
            areturn
        13: .line 2600
      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 2602
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            areturn
        15: .line 2604
      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 2606
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        17: .line 2607
            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 2606
            areturn
        19: .line 2609
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 23
        20: .line 2611
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        21: .line 2612
            aload 2 /* defFilter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 2611
            areturn
        23: .line 2614
      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 2838
            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 2839
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2840
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* args */
        start local 3 // java.util.List args
         3: .line 2842
            goto 5
        start local 4 // java.lang.String s
         4: .line 2843
      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 2842
      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 2845
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2846
            iconst_0
            ireturn
         9: .line 2848
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 12
        10: .line 2849
            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 2850
            iconst_0
            ireturn
        12: .line 2852
      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 2853
            aload 5 /* stream */
            ifnonnull 16
        14: .line 2855
            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 2856
            iconst_0
            ireturn
        16: .line 2858
      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 2859
            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 2863
            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 2864
            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 2863
            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 2865
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2866
            iconst_0
            ireturn
         5: .line 2868
      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 2869
            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 2898
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2899
            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 2900
            aload 6 /* sb */
            aload 7 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2901
            aload 6 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String s
        12: .line 2899
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 2903
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* src */
        start local 7 // java.lang.String src
        14: .line 2904
            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 2905
            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 2906
            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 2907
            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 2912
      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 2913
            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 2920
            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 2921
            aload 9 /* errorHandler */
            aload 11 /* extSaveHandler */
        22: .line 2922
            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 2923
            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 2924
            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 2925
            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 2920
            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 2926
            aload 10 /* buffer */
            iconst_0
            aaload
            ifnull 29
        28: .line 2927
            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 2930
      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 2938
            ldc Ljdk/internal/editor/spi/BuildInEditorProvider;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         1: .line 2937
            astore 4 /* sl */
        start local 4 // java.util.ServiceLoader sl
         2: .line 2940
            aconst_null
            astore 5 /* provider */
        start local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
         3: .line 2941
            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 2942
            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 2943
      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 2941
      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 2946
            aload 5 /* provider */
            ifnull 13
         9: .line 2947
            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 2948
            aload 1 /* initialText */
            aload 2 /* saveHandler */
            aload 3 /* errorHandler */
        11: .line 2947
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.edit:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V
        12: .line 2949
            iconst_1
            ireturn
        13: .line 2951
      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 2953
            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 2954
            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 2956
      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 2957
            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 3016
            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 3017
            aload 0 /* this */
            ldc ""
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:(Ljava/lang/String;)Z
            ireturn
         2: .line 3019
      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 3020
            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 3019
            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 3021
            aload 2 /* stream */
            ifnonnull 7
         6: .line 3022
            iconst_0
            ireturn
         7: .line 3026
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            iconst_1
            newarray 4
            astore 5 /* hasOutput */
        start local 5 // boolean[] hasOutput
         8: .line 3027
            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 3034
            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 3038
            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 3042
            aload 1 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 45
         1: .line 3045
            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 3047
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         3: .line 3048
            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 3049
            goto 29
        end local 3 // java.util.Scanner scanner
         5: .line 3050
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* path */
        start local 4 // java.nio.file.Path path
         6: .line 3051
            aconst_null
            astore 5 /* url */
        start local 5 // java.net.URL url
         7: .line 3054
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 4 /* path */
         8: .line 3055
            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 3057
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        11: .line 3058
            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 3059
            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 3061
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        14: pop
        15: .line 3062
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 3065
      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 3066
            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 3067
            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 3068
            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 3069
            goto 29
        end local 3 // java.util.Scanner scanner
        23: .line 3070
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* url */
            ifnonnull 28
        24: .line 3072
            new java.net.URL
            dup
            aload 1 /* filename */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 5 /* url */
        25: .line 3073
            goto 28
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
        26: pop
        27: .line 3074
            new java.io.FileNotFoundException
            dup
            aload 1 /* filename */
            invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 3077
      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 3080
      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 3081
            aload 0 /* this */
            aload 6 /* scannerIOContext */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        32: .line 3082
            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 3083
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.util.Scanner scanner
        39: .line 3084
      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 3085
            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 3086
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        43: .line 3087
            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 3089
            goto 46
        45: .line 3090
      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 3092
      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 3096
            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 3098
            aload 0 /* name */
            invokestatic jdk.internal.jshell.tool.JShellTool.readResource:(Ljava/lang/String;)Ljava/lang/String;
         2: areturn
         3: .line 3099
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 3103
      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 3151
            aload 0 /* name */
            ldc "JAVASE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 3153
            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 3157
      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 3159
            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 3160
            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 3161
            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 3162
            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 3161
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 3162
            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 3166
            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 3167
            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 3168
            iconst_0
            ireturn
         5: .line 3170
      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 3171
            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 3172
            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 3176
            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 3177
            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 3178
            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 3179
            iconst_0
            ireturn
         6: .line 3182
      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 3183
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            ifnonnull 10
         8: .line 3184
            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 3185
            iconst_0
            ireturn
        10: .line 3187
      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 3188
            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 3189
            goto 15
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        13: .line 3190
      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 3191
            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 3193
      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 3194
            iload 5 /* success */
            ifeq 20
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 20
        19: .line 3197
            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 3199
      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 3203
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 17
         1: .line 3205
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 3206
            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 3207
            aload 2 /* sb */
         5: .line 3208
            aload 3 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 3209
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 8
         7: .line 3210
            ldc "\n   "
            goto 10
         8: .line 3211
      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 3212
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
        10: .line 3207
      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 3213
            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 3206
            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 3215
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 16
        15: .line 3216
            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 3218
      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 3220
      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 3221
            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 3222
            iconst_0
            ireturn
        20: .line 3224
      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 3225
            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 3229
            aload 3 /* oldOptions */
            ifnull 9
         1: .line 3231
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         2: .line 3232
            goto 10
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         3: astore 4 /* ex */
        start local 4 // java.lang.IllegalStateException ex
         4: .line 3233
            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 3234
            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 3236
            aload 0 /* this */
            aload 3 /* oldOptions */
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         7: .line 3237
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        end local 4 // java.lang.IllegalStateException ex
         8: .line 3239
            goto 10
         9: .line 3240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        10: .line 3242
      StackMap locals:
      StackMap stack:
            aload 1 /* history */
            ifnull 17
        11: .line 3243
            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 3244
            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 3243
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        17: .line 3246
      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 3250
            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 3251
            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 3252
            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 3250
            astore 3 /* args */
        start local 3 // java.lang.String[] args
         4: .line 3253
            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 3254
            aload 4 /* opts */
            ifnonnull 7
         6: .line 3255
            iconst_0
            ireturn
         7: .line 3257
      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 3258
            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 3259
            iconst_0
            ireturn
        10: .line 3261
      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 3262
            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 3267
            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 3268
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         2: .line 3269
            aload 3 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
         3: .line 3270
            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 3271
            iconst_0
            ireturn
         5: .line 3274
      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 3275
            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 3274
            astore 4 /* srcSpec */
        start local 4 // java.lang.String srcSpec
         8: .line 3277
            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 3278
            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 3279
            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 3280
            aload 6 /* snippetStream */
            ifnonnull 13
        12: .line 3282
            iconst_0
            ireturn
        13: .line 3284
      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 3285
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
        16: .line 3286
            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 3284
            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 3287
            aload 5 /* at */
            ldc "-history"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 25
        19: .line 3289
            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 3290
            aload 11 /* writer */
            aload 12 /* s */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        22: .line 3291
            aload 11 /* writer */
            ldc "\n"
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 12 // java.lang.String s
        23: .line 3289
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        24: .line 3293
            goto 29
        25: .line 3295
      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 3296
            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 3297
            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 3295
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        29: .line 3299
      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 3300
            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 3301
            iconst_0
            ireturn
        end local 9 // java.io.FileNotFoundException e
        38: .line 3302
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        39: .line 3303
            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 3304
            iconst_0
            ireturn
        end local 9 // java.lang.Exception e
        41: .line 3306
      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 3310
            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 3311
            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 3310
            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 3312
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3313
            iconst_0
            ireturn
         5: .line 3315
      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 3322
            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 3326
            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 3327
            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 3326
            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 3328
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3329
            iconst_0
            ireturn
         5: .line 3331
      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 3341
            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 3345
            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 3346
            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 3345
            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 3347
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3348
            iconst_0
            ireturn
         5: .line 3350
      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 3377
            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 3381
            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 3384
            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 3388
            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 3389
            iload 1 /* index */
            ifge 3
         2: .line 3390
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            iadd
            istore 1 /* index */
            goto 4
         3: .line 3392
      StackMap locals: java.util.List
      StackMap stack:
            iinc 1 /* index */ -1
         4: .line 3393
      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 3394
            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 3395
            goto 9
         7: .line 3396
      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 3397
            iconst_0
            ireturn
         9: .line 3399
      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 3403
            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 3404
            aload 2 /* junk */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
         2: .line 3405
            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 3406
            iconst_0
            ireturn
         4: .line 3408
      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 3409
            aload 3 /* bad */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 8
         6: .line 3410
            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 3411
            iconst_0
            ireturn
        end local 3 // java.lang.String bad
         8: .line 3414
      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 3425
            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 3426
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 3427
            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 3428
            aload 3 /* stream */
            ifnull 5
         4: .line 3430
            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 3432
      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 3435
            aload 1 /* snippet */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 2 /* source */
        start local 2 // java.lang.String source
         1: .line 3436
            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 3437
            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 3438
            aload 0 /* this */
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Z
            pop
         4: .line 3439
            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 3447
            aload 1 /* diagnostics */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 3448
            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 3449
            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 3447
            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 3459
            aload 1 /* exception */
            astore 2 /* rootCause */
        start local 2 // java.lang.Throwable rootCause
         1: .line 3460
            goto 3
         2: .line 3461
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 2 /* rootCause */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 2 /* rootCause */
         3: .line 3460
      StackMap locals:
      StackMap stack:
            aload 2 /* rootCause */
            instanceof jdk.jshell.EvalException
            ifne 2
         4: .line 3463
            aload 2 /* rootCause */
            aload 1 /* exception */
            if_acmpeq 6
            aload 2 /* rootCause */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 6
         5: .line 3465
            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 3467
      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 3472
            aload 1 /* exception */
            instanceof jdk.jshell.EvalException
            ifeq 2
         1: .line 3474
            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 3475
      StackMap locals:
      StackMap stack:
            aload 1 /* exception */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 4
         3: .line 3477
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.UnresolvedReferenceException
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayUnresolvedException:(Ljdk/jshell/UnresolvedReferenceException;)Z
            ireturn
         4: .line 3480
      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 3481
            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 3487
            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 3488
            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 3496
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            astore 3 /* msg */
        start local 3 // java.lang.String msg
         1: .line 3497
            new java.lang.StringBuilder
            dup
            ldc "jshell.err.exception"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 3498
            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 3499
            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 3497
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* key */
        start local 4 // java.lang.String key
         9: .line 3500
            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 3502
            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 3503
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getCause:()Ljdk/jshell/JShellException;
            astore 5 /* cause */
        start local 5 // jdk.jshell.JShellException cause
        12: .line 3504
            aload 5 /* cause */
            ifnull 14
        13: .line 3506
            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 3508
      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 3518
            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 3519
            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 3520
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* disp */
        start local 5 // java.util.List disp
         6: .line 3521
            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 3522
            aload 5 /* disp */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         8: .line 3523
            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 3518
      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 3525
            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 3536
            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 3537
            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 3538
            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 3536
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         5: iload 5
            iload 6
            if_icmplt 1
         6: .line 3542
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            l2i
            istore 4 /* pstart */
        start local 4 // int pstart
         7: .line 3543
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            l2i
            istore 5 /* pend */
        start local 5 // int pend
         8: .line 3544
            iload 4 /* pstart */
            iflt 9
            iload 5 /* pend */
            ifge 11
         9: .line 3545
      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 3546
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 5 /* pend */
        11: .line 3548
      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 3549
            iconst_0
            istore 7 /* pstartl */
        start local 7 // int pstartl
        13: .line 3550
            bipush -2
            istore 8 /* pendl */
        start local 8 // int pendl
        14: .line 3551
            goto 19
        15: .line 3552
      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 3553
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmplt 18
        17: .line 3554
            goto 20
        18: .line 3556
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pstartl */
        19: .line 3551
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            iload 7 /* pstartl */
            invokevirtual java.util.regex.Matcher.find:(I)Z
            ifne 15
        20: .line 3559
      StackMap locals:
      StackMap stack:
            iload 8 /* pendl */
            iload 7 /* pstartl */
            if_icmpge 22
        21: .line 3560
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 8 /* pendl */
        22: .line 3562
      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 3564
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        24: .line 3565
            iload 4 /* pstart */
            iload 7 /* pstartl */
            isub
            istore 10 /* start */
        start local 10 // int start
        25: .line 3566
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        26: goto 29
        27: .line 3567
      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 3566
            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 3569
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        31: .line 3570
            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 3571
            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 3572
            iload 12 /* end */
            iload 10 /* start */
            if_icmple 47
        38: .line 3573
            iload 10 /* start */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        39: goto 42
        40: .line 3574
      StackMap locals: int int
      StackMap stack:
            aload 9 /* sb */
            bipush 45
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        41: .line 3573
            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 3576
            iload 11 /* multiline */
            ifeq 46
        44: .line 3577
            aload 9 /* sb */
            ldc "-..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        45: .line 3578
            goto 47
        46: .line 3579
      StackMap locals:
      StackMap stack:
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        47: .line 3582
      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 3584
            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 3585
            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 3586
            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 3587
            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 3586
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        53: .line 3588
            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 3597
            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 3598
            iconst_0
            istore 2 /* failed */
        start local 2 // boolean failed
         2: .line 3599
            iconst_0
            istore 3 /* isActive */
        start local 3 // boolean isActive
         3: .line 3600
            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 3601
            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 3603
            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 3607
            iload 3 /* isActive */
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 10
         8: .line 3608
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 10
         9: .line 3609
            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 3601
      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 3613
            iload 3 /* isActive */
            ifeq 15
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifeq 15
        14: .line 3614
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        15: .line 3617
      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 3622
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 2 /* sn */
        start local 2 // jdk.jshell.Snippet sn
         1: .line 3623
            aload 2 /* sn */
            ifnonnull 4
         2: .line 3624
            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 3625
            iconst_0
            ireturn
         4: .line 3627
      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 3628
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 4 /* source */
        start local 4 // java.lang.String source
         6: .line 3629
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 18
         7: .line 3631
            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 3633
            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 3634
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 12
        10: .line 3635
            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 3636
            iconst_1
            ireturn
        12: .line 3639
      StackMap locals: java.util.List java.lang.String
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* ste */
            getstatic jdk.internal.jshell.tool.Feedback$FormatWhen.PRIMARY:Ljdk/internal/jshell/tool/Feedback$FormatWhen;
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            aload 3 /* diagnostics */
            invokespecial jdk.internal.jshell.tool.JShellTool$DisplayEvent.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/SnippetEvent;Ljdk/internal/jshell/tool/Feedback$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        13: .line 3640
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        14: .line 3642
            goto 22
        15: .line 3643
      StackMap locals:
      StackMap stack:
            aload 3 /* diagnostics */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 17
        16: .line 3644
            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 3646
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        18: .line 3650
      StackMap locals:
      StackMap stack:
            aload 2 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 22
        19: .line 3651
            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 3654
            new jdk.internal.jshell.tool.JShellTool$DisplayEvent
            dup
            aload 0 /* this */
            aload 1 /* ste */
            getstatic jdk.internal.jshell.tool.Feedback$FormatWhen.UPDATE:Ljdk/internal/jshell/tool/Feedback$FormatWhen;
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.value:()Ljava/lang/String;
            aload 5 /* other */
            invokespecial jdk.internal.jshell.tool.JShellTool$DisplayEvent.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/jshell/SnippetEvent;Ljdk/internal/jshell/tool/Feedback$FormatWhen;Ljava/lang/String;Ljava/util/List;)V
        21: .line 3655
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        end local 5 // java.util.List other
        22: .line 3658
      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 3663
            iconst_0
            istore 3 /* overlap */
        start local 3 // int overlap
         1: .line 3664
            aload 2 /* caused */
            ifnull 7
         2: .line 3665
            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 3666
            goto 5
         4: .line 3668
      StackMap locals: int int
      StackMap stack:
            iinc 3 /* overlap */ 1
         5: .line 3666
      StackMap locals:
      StackMap stack:
            iload 3 /* overlap */
            iload 4 /* maxOverlap */
            if_icmpge 7
         6: .line 3667
            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 3671
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 34
         9: .line 3672
      StackMap locals: int
      StackMap stack:
            aload 1 /* stes */
            iload 4 /* i */
            aaload
            astore 5 /* ste */
        start local 5 // java.lang.StackTraceElement ste
        10: .line 3673
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
        11: .line 3674
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
            astore 7 /* cn */
        start local 7 // java.lang.String cn
        12: .line 3675
            aload 7 /* cn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 19
        13: .line 3676
            aload 7 /* cn */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* dot */
        start local 8 // int dot
        14: .line 3677
            iload 8 /* dot */
            ifle 17
        15: .line 3678
            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 3679
            goto 18
        17: .line 3680
      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 3682
      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 3684
      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 3685
            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 3686
            aload 6 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 3688
      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 3689
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.getLineNumber:()I
            istore 9 /* lineNumber */
        start local 9 // int lineNumber
        24: .line 3690
            aload 5 /* ste */
            invokevirtual java.lang.StackTraceElement.isNativeMethod:()Z
            ifeq 26
        25: .line 3691
            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 3692
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 8 /* fileName */
            ifnonnull 28
        27: .line 3693
            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 3694
      StackMap locals:
      StackMap stack:
            iload 9 /* lineNumber */
            iflt 30
        29: .line 3695
            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 3696
      StackMap locals:
      StackMap stack:
            aload 8 /* fileName */
        31: .line 3690
      StackMap locals:
      StackMap stack: java.lang.String
            astore 10 /* loc */
        start local 10 // java.lang.String loc
        32: .line 3697
            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 3671
            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 3700
            iload 3 /* overlap */
            ifeq 37
        36: .line 3701
            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 3703
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int overlap
        end local 2 // java.lang.StackTraceElement[] caused
        end local 1 // java.lang.StackTraceElement[] stes
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   38     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   38     1        stes  [Ljava/lang/StackTraceElement;
            0   38     2      caused  [Ljava/lang/StackTraceElement;
            1   38     3     overlap  I
            3    7     4  maxOverlap  I
            8   35     4           i  I
           10   33     5         ste  Ljava/lang/StackTraceElement;
           11   33     6          sb  Ljava/lang/StringBuilder;
           12   33     7          cn  Ljava/lang/String;
           14   19     8         dot  I
           23   33     8    fileName  Ljava/lang/String;
           24   33     9  lineNumber  I
           32   33    10         loc  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      stes    
      caused  

  private jdk.internal.jshell.tool.Feedback$FormatAction toAction(jdk.jshell.Snippet$Status, jdk.jshell.Snippet$Status, boolean);
    descriptor: (Ljdk/jshell/Snippet$Status;Ljdk/jshell/Snippet$Status;Z)Ljdk/internal/jshell/tool/Feedback$FormatAction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.Snippet$Status status
        start local 2 // jdk.jshell.Snippet$Status previousStatus
        start local 3 // boolean isSignatureChange
         0: .line 3707
            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 3711
      StackMap locals:
      StackMap stack:
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 7
         2: .line 3712
            iload 3 /* isSignatureChange */
            ifeq 4
         3: .line 3713
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.REPLACED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            goto 5
         4: .line 3714
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.MODIFIED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
         5: .line 3712
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.Feedback$FormatAction
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         6: .line 3715
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         7: .line 3716
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.ADDED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         8: .line 3718
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         9: .line 3720
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.OVERWROTE:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        10: .line 3721
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        11: .line 3723
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        12: .line 3724
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        13: .line 3729
      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 3730
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.DROPPED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            astore 4 /* act */
        start local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        15: .line 3732
      StackMap locals: jdk.internal.jshell.tool.Feedback$FormatAction
      StackMap stack:
            aload 4 /* act */
            areturn
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        end local 3 // boolean isSignatureChange
        end local 2 // jdk.jshell.Snippet$Status previousStatus
        end local 1 // jdk.jshell.Snippet$Status status
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     1             status  Ljdk/jshell/Snippet$Status;
            0   16     2     previousStatus  Ljdk/jshell/Snippet$Status;
            0   16     3  isSignatureChange  Z
            6    7     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
            8    9     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           10   11     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           12   13     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
           15   16     4                act  Ljdk/internal/jshell/tool/Feedback$FormatAction;
    MethodParameters:
                   Name  Flags
      status             
      previousStatus     
      isSignatureChange  

  void printSnippetStatus(jdk.jshell.DeclarationSnippet, boolean);
    descriptor: (Ljdk/jshell/DeclarationSnippet;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.DeclarationSnippet sn
        start local 2 // boolean resolve
         0: .line 3736
            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 3737
            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 3738
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
         3: .line 3739
            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 3914
            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 3920
            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 3924
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            ifnonnull 5
         1: .line 3926
            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 3927
            goto 5
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 3928
            ldc "(version info not available)"
            areturn
         5: .line 3932
      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 3934
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
            pop
         8: .line 3935
            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 2543
            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 2551
            aload 0
            aload 1
            aload 2
            invokespecial jdk.internal.jshell.tool.JShellTool.matchingDeclaration:(Ljdk/jshell/Snippet;Ljava/lang/String;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

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

  private static boolean lambda$0(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.nio.file.Path p
         0: .line 1506
            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 1802
            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 1805
            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 1807
            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 1809
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 1812
      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 1813
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            iload 2 /* c */
            iadd
            aload 3 /* a */
         4: .line 1812
            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 1814
            aload 3 /* a */
            iconst_0
            dup2
            iaload
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            isub
            iastore
         6: .line 1815
            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 1819
            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 1822
            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 1859
            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 1866
            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 1871
            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 1895
            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 1896
            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 1896
            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 1286
            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 1358
            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 1380
            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 1394
            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 1521
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
         1: .line 1523
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* space */
        start local 5 // int space
         2: .line 1524
            iload 5 /* space */
            iconst_m1
            if_icmpeq 6
         3: .line 1525
            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 1526
            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 1527
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* space */
            iconst_1
            iadd
            iadd
            iastore
        end local 6 // java.lang.String rest
         6: .line 1530
      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 1536
            aload 1 /* code */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastSlash */
        start local 4 // int lastSlash
         1: .line 1537
            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 1538
            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 1539
            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 1540
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
         7: .line 1541
            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 1542
            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 1543
            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 1544
            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 1545
            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 1548
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        20: .line 1549
            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 1550
            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 1551
            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 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$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 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
        25: .line 1555
      StackMap locals:
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            aload 5 /* path */
            invokevirtual java.lang.String.length:()I
            iastore
        26: .line 1556
            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 1561
            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 1562
            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 1563
            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 1569
            aload 3 /* anchor */
            iconst_0
            iconst_0
            iastore
         1: .line 1570
            aload 1 /* prefix */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1571
            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 1572
            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 1573
      StackMap locals: int java.util.Set
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         5: .line 1575
      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 1576
            aload 0
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
         7: .line 1577
            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 1580
            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 1583
            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 1584
            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 1585
            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 1576
            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 1593
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         1: .line 1594
            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 1595
            iload 7 /* pastSpace */
            ifne 4
         3: .line 1596
            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 1598
      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 1599
            aload 5 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
         6: .line 1600
            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 1608
            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 1609
            iload 5 /* pastSpace */
            ifne 13
         2: .line 1613
            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 1614
            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 1615
            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 1616
            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 1619
            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 1614
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        10: .line 1620
            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 1614
            astore 4 /* result */
        end local 6 // boolean noslash
        start local 4 // java.util.List result
        12: .line 1621
            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 1622
      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 1623
            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 1622
            astore 4 /* result */
        start local 4 // java.util.List result
        17: .line 1624
            goto 19
        end local 4 // java.util.List result
        18: .line 1625
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
        19: .line 1627
      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 1628
            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 1634
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.List result
         1: .line 1635
            aload 0 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1636
            iload 4 /* space */
            iconst_m1
            if_icmpne 4
         3: .line 1637
            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 1639
      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 1640
            aload 2 /* anchor */
            iconst_0
            dup2
            iaload
            iload 4 /* space */
            iconst_1
            iadd
            iadd
            iastore
         6: .line 1641
            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 1648
            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 1649
            aload 4 /* ovm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
         2: .line 1650
            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 1651
            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 1652
            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 1653
            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 1654
            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 1651
            astore 6 /* ps */
        start local 6 // java.util.List ps
         8: .line 1655
            aload 6 /* ps */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 15
         9: .line 1656
            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 1657
            aload 6 /* ps */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
        11: .line 1658
            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 1657
            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 1659
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        14: .line 1660
            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 1663
      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 1664
            aload 5 /* om */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 29
        17: .line 1665
            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 1666
            aload 0
        19: .line 1667
            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 1666
            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 1668
            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 1669
            aload 7 /* result */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        23: .line 1670
            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 1681
            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 1669
            astore 7 /* result */
        26: .line 1682
            iinc 6 /* pastSpace */ -1
        27: .line 1684
      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 1685
            aload 7 /* result */
            areturn
        end local 7 // java.util.List result
        end local 6 // int pastSpace
        29: .line 1687
      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 1688
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 37
        31: .line 1689
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        32: .line 1690
            aload 0
        33: .line 1691
            ldc ""
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        34: .line 1690
            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 1692
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        36: .line 1693
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        37: .line 1695
      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 1717
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 5 /* leftAnchor */
        start local 5 // int[] leftAnchor
         1: .line 1718
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 6 /* rightAnchor */
        start local 6 // int[] rightAnchor
         2: .line 1720
            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 1721
            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 1723
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* suggestions */
        start local 9 // java.util.List suggestions
         5: .line 1725
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmplt 8
         6: .line 1726
            aload 4 /* anchor */
            iconst_0
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            iastore
         7: .line 1727
            aload 9 /* suggestions */
            aload 7 /* leftSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 1730
      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 1731
            aload 4 /* anchor */
            iconst_0
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            iastore
        10: .line 1732
            aload 9 /* suggestions */
            aload 8 /* rightSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 1735
      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 1747
            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 1752
            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 1753
            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 1758
            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 1759
            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 1764
            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 1765
            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 1920
            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 1921
            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 1933
            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 1934
            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 1935
            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 1936
            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 1937
            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 1938
            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 1992
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            ldc "MODE"
            aload 1 /* retained */
            invokeinterface jdk.internal.jshell.tool.PersistentStorage.put:(Ljava/lang/String;Ljava/lang/String;)V
            return
        end local 1 // java.lang.String retained
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0    1     1  retained  Ljava/lang/String;

  private void lambda$84(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String fb
         0: .line 2024
            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 2039
            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 2438
            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 2439
            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 2464
            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 2477
            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 2478
            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 2479
            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 2483
            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 2484
            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 2485
            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 2495
            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 2858
            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 2870
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 3 /* src */
        start local 3 // java.lang.String src
         1: .line 2871
            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 2873
      StackMap locals: java.lang.String
      StackMap stack:
            goto 15
         3: .line 2878
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 5
         4: .line 2879
            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 2881
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 2882
            goto 15
         7: .line 2884
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc "}"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 10
         8: .line 2887
            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 2888
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2889
            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 2891
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2892
            goto 15
        14: .line 2894
      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 2897
      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 2905
            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 2914
            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 2915
            aload 1
            iconst_0
            aload 3 /* s */
            aastore
         2: .line 2916
            goto 4
         3: .line 2917
      StackMap locals:
      StackMap stack:
            aload 2
            aload 3 /* s */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 2919
      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 2922
            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 2923
            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 2925
            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 3028
            aload 1
            iconst_0
            baload
            ifne 3
         1: .line 3029
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         2: .line 3030
            aload 1
            iconst_0
            iconst_1
            bastore
         3: .line 3032
      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 3033
            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 3251
            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 3317
            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 3318
            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 3319
      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 3317
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* val */
        start local 2 // java.lang.String val
         4: .line 3320
            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 3321
            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 3332
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.signature:()Ljava/lang/String;
            astore 2 /* sig */
        start local 2 // java.lang.String sig
         1: .line 3333
            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 3334
            iload 3 /* i */
            ifgt 5
         3: .line 3335
            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 3336
            goto 6
         5: .line 3337
      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 3339
      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 3340
            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 3353
            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 3355
      StackMap locals:
      StackMap stack:
            ldc "interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         2: .line 3356
            goto 13
        end local 2 // java.lang.String kind
         3: .line 3358
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         4: .line 3359
            goto 13
        end local 2 // java.lang.String kind
         5: .line 3361
      StackMap locals:
      StackMap stack:
            ldc "enum"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         6: .line 3362
            goto 13
        end local 2 // java.lang.String kind
         7: .line 3364
      StackMap locals:
      StackMap stack:
            ldc "@interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         8: .line 3365
            goto 13
        end local 2 // java.lang.String kind
         9: .line 3367
      StackMap locals:
      StackMap stack:
            ldc "record"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        10: .line 3368
            goto 13
        end local 2 // java.lang.String kind
        11: .line 3370
      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 3371
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        13: .line 3374
      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 3375
            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 3376
            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 3382
            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 3383
            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 3427
            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 3430
            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 3523
            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 1542
            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 1543
            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 1550
            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 1551
            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 1552
            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 1577
            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 1578
            aload 1 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         2: .line 1579
            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 1580
            aload 0 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 2
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 1581
            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 1582
      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 1583
            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 1615
            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 1616
            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 1617
            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 1618
      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 1616
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1618
            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 1652
            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 1653
            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 1670
            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 1680
            areturn
        end local 0 // jdk.jshell.SourceCodeAnalysis$Suggestion sug
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   sug  Ljdk/jshell/SourceCodeAnalysis$Suggestion;
}
SourceFile: "JShellTool.java"
NestMembers:
  jdk.internal.jshell.tool.JShellTool$1  jdk.internal.jshell.tool.JShellTool$1  jdk.internal.jshell.tool.JShellTool$1ComputeImports  jdk.internal.jshell.tool.JShellTool$2  jdk.internal.jshell.tool.JShellTool$3  jdk.internal.jshell.tool.JShellTool$ArgSuggestion  jdk.internal.jshell.tool.JShellTool$ArgToSnippets  jdk.internal.jshell.tool.JShellTool$Command  jdk.internal.jshell.tool.JShellTool$CommandKind  jdk.internal.jshell.tool.JShellTool$CompletionProvider  jdk.internal.jshell.tool.JShellTool$DisplayEvent  jdk.internal.jshell.tool.JShellTool$EditorSetting  jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider  jdk.internal.jshell.tool.JShellTool$InitMessageHandler  jdk.internal.jshell.tool.JShellTool$NameSpace  jdk.internal.jshell.tool.JShellTool$OptionKind  jdk.internal.jshell.tool.JShellTool$OptionParserBase  jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine  jdk.internal.jshell.tool.JShellTool$OptionParserReload  jdk.internal.jshell.tool.JShellTool$Options  jdk.internal.jshell.tool.JShellTool$ReplayableHistory  jdk.internal.jshell.tool.JShellTool$SaveHandler  jdk.internal.jshell.tool.JShellTool$SetEditor  jdk.internal.jshell.tool.JShellTool$SnippetInfo  jdk.internal.jshell.tool.JShellTool$SnippetPredicate
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public SimpleEntry = java.util.AbstractMap$SimpleEntry of java.util.AbstractMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public final FormatAction = jdk.internal.jshell.tool.Feedback$FormatAction of jdk.internal.jshell.tool.Feedback
  public final FormatWhen = jdk.internal.jshell.tool.Feedback$FormatWhen of jdk.internal.jshell.tool.Feedback
  InputInterruptedException = jdk.internal.jshell.tool.IOContext$InputInterruptedException of jdk.internal.jshell.tool.IOContext
  jdk.internal.jshell.tool.JShellTool$1
  ComputeImports = jdk.internal.jshell.tool.JShellTool$1ComputeImports
  jdk.internal.jshell.tool.JShellTool$2
  jdk.internal.jshell.tool.JShellTool$3
  ArgSuggestion = jdk.internal.jshell.tool.JShellTool$ArgSuggestion of jdk.internal.jshell.tool.JShellTool
  private ArgToSnippets = jdk.internal.jshell.tool.JShellTool$ArgToSnippets of jdk.internal.jshell.tool.JShellTool
  final Command = jdk.internal.jshell.tool.JShellTool$Command of jdk.internal.jshell.tool.JShellTool
  final CommandKind = jdk.internal.jshell.tool.JShellTool$CommandKind of jdk.internal.jshell.tool.JShellTool
  abstract CompletionProvider = jdk.internal.jshell.tool.JShellTool$CompletionProvider of jdk.internal.jshell.tool.JShellTool
  DisplayEvent = jdk.internal.jshell.tool.JShellTool$DisplayEvent of jdk.internal.jshell.tool.JShellTool
  EditorSetting = jdk.internal.jshell.tool.JShellTool$EditorSetting of jdk.internal.jshell.tool.JShellTool
  final FixedCompletionProvider = jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider of jdk.internal.jshell.tool.JShellTool
  private InitMessageHandler = jdk.internal.jshell.tool.JShellTool$InitMessageHandler of jdk.internal.jshell.tool.JShellTool
  NameSpace = jdk.internal.jshell.tool.JShellTool$NameSpace of jdk.internal.jshell.tool.JShellTool
  private final OptionKind = jdk.internal.jshell.tool.JShellTool$OptionKind of jdk.internal.jshell.tool.JShellTool
  private OptionParserBase = jdk.internal.jshell.tool.JShellTool$OptionParserBase of jdk.internal.jshell.tool.JShellTool
  private OptionParserCommandLine = jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine of jdk.internal.jshell.tool.JShellTool
  private OptionParserReload = jdk.internal.jshell.tool.JShellTool$OptionParserReload of jdk.internal.jshell.tool.JShellTool
  private Options = jdk.internal.jshell.tool.JShellTool$Options of jdk.internal.jshell.tool.JShellTool
  private ReplayableHistory = jdk.internal.jshell.tool.JShellTool$ReplayableHistory of jdk.internal.jshell.tool.JShellTool
  private SaveHandler = jdk.internal.jshell.tool.JShellTool$SaveHandler of jdk.internal.jshell.tool.JShellTool
  SetEditor = jdk.internal.jshell.tool.JShellTool$SetEditor of jdk.internal.jshell.tool.JShellTool
  SnippetInfo = jdk.internal.jshell.tool.JShellTool$SnippetInfo of jdk.internal.jshell.tool.JShellTool
  private abstract SnippetPredicate = jdk.internal.jshell.tool.JShellTool$SnippetPredicate of jdk.internal.jshell.tool.JShellTool
  public Builder = jdk.jshell.JShell$Builder of jdk.jshell.JShell
  public Subscription = jdk.jshell.JShell$Subscription of jdk.jshell.JShell
  public final Kind = jdk.jshell.Snippet$Kind of jdk.jshell.Snippet
  public final Status = jdk.jshell.Snippet$Status of jdk.jshell.Snippet
  public final SubKind = jdk.jshell.Snippet$SubKind of jdk.jshell.Snippet
  public final Completeness = jdk.jshell.SourceCodeAnalysis$Completeness of jdk.jshell.SourceCodeAnalysis
  public abstract CompletionInfo = jdk.jshell.SourceCodeAnalysis$CompletionInfo of jdk.jshell.SourceCodeAnalysis
  public abstract Suggestion = jdk.jshell.SourceCodeAnalysis$Suggestion of jdk.jshell.SourceCodeAnalysis