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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private static final jdk.internal.jshell.tool.JShellTool$CompletionProvider 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 136
            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 138
            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 139
            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 140
            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 141
            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 142
            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 208
            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 218
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
        10: .line 219
            ldc "JSHELLEDITOR"
            aastore
            dup
            iconst_1
            ldc "VISUAL"
            aastore
            dup
            iconst_2
            ldc "EDITOR"
            aastore
        11: .line 218
            putstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
        12: .line 231
            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 239
            ldc "\\s*(\\S+\\s+)*?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        14: .line 238
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
        15: .line 242
            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 241
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
        17: .line 245
            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 244
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_VALUE_PATTERN:Ljava/util/regex/Pattern;
        19: .line 1457
            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 1458
            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 1459
            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 1460
            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;
        23: .line 1461
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        24: .line 1462
            ldc "-class-path "
            aastore
            dup
            iconst_1
            ldc "-module-path "
            aastore
            dup
            iconst_2
            ldc "-add-modules "
            aastore
            dup
            iconst_3
            ldc "-add-exports "
        25: .line 1461
            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;
        26: .line 1463
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
        27: .line 1464
            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
        28: .line 1465
            ldc "-restore "
            aastore
            dup
            iconst_1
            ldc "-quiet "
        29: .line 1463
            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;
        30: .line 1466
            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;
        31: .line 1467
            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;
        32: .line 1468
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
        33: .line 1470
            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
        34: .line 1471
            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
        35: .line 1472
            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
        36: .line 1473
            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
        37: .line 1912
            bipush 7
            anewarray java.lang.String
            dup
            iconst_0
        38: .line 1913
            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
        39: .line 1912
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
        40: .line 1913
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.io.InputStream, java.io.PrintStream, java.io.PrintStream, java.io.PrintStream, java.io.InputStream, java.io.PrintStream, java.io.PrintStream, jdk.internal.jshell.tool.PersistentStorage, java.util.Map<java.lang.String, java.lang.String>, java.util.Locale);
    descriptor: (Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/io/InputStream;Ljava/io/PrintStream;Ljava/io/PrintStream;Ljdk/internal/jshell/tool/PersistentStorage;Ljava/util/Map;Ljava/util/Locale;)V
    flags: (0x0000) 
    Code:
      stack=21, locals=11, args_size=11
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.io.InputStream cmdin
        start local 2 // java.io.PrintStream cmdout
        start local 3 // java.io.PrintStream cmderr
        start local 4 // java.io.PrintStream console
        start local 5 // java.io.InputStream userin
        start local 6 // java.io.PrintStream userout
        start local 7 // java.io.PrintStream usererr
        start local 8 // jdk.internal.jshell.tool.PersistentStorage prefs
        start local 9 // java.util.Map envvars
        start local 10 // java.util.Locale locale
         0: .line 174
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 159
            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 195
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         3: .line 196
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         4: .line 198
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         5: .line 199
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         6: .line 200
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 201
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
         8: .line 205
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         9: .line 206
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
        10: .line 210
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        11: .line 211
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
        12: .line 212
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        13: .line 213
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        14: .line 214
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
        15: .line 215
            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;
        16: .line 216
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        17: .line 1475
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
        18: .line 1727
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/list"
        19: .line 1728
            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;
        20: .line 1729
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        21: .line 1730
            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;
        22: .line 1729
            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
        23: .line 1727
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        24: .line 1731
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/edit"
        25: .line 1732
            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;
        26: .line 1733
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        27: .line 1734
            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;
        28: .line 1733
            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
        29: .line 1731
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        30: .line 1735
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/drop"
        31: .line 1736
            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;
        32: .line 1737
            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;
        33: .line 1738
            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
        34: .line 1735
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        35: .line 1739
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/save"
        36: .line 1740
            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;
        37: .line 1741
            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
        38: .line 1739
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        39: .line 1742
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/open"
        40: .line 1743
            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;
        41: .line 1744
            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
        42: .line 1742
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        43: .line 1745
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/vars"
        44: .line 1746
            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;
        45: .line 1747
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        46: .line 1748
            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;
        47: .line 1747
            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
        48: .line 1745
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        49: .line 1749
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/methods"
        50: .line 1750
            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;
        51: .line 1751
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        52: .line 1752
            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;
        53: .line 1751
            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
        54: .line 1749
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        55: .line 1753
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/types"
        56: .line 1754
            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;
        57: .line 1755
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        58: .line 1756
            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;
        59: .line 1755
            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
        60: .line 1753
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        61: .line 1757
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/imports"
        62: .line 1758
            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;
        63: .line 1759
            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
        64: .line 1757
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        65: .line 1760
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/exit"
        66: .line 1761
            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;
        67: .line 1762
            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
        68: .line 1760
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        69: .line 1774
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/env"
        70: .line 1775
            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;
        71: .line 1776
            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
        72: .line 1774
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        73: .line 1777
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reset"
        74: .line 1778
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$20(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        75: .line 1779
            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
        76: .line 1777
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        77: .line 1780
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reload"
        78: .line 1781
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdReload(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        79: .line 1782
            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
        80: .line 1780
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        81: .line 1783
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/history"
        82: .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.lambda$22(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        83: .line 1785
            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
        84: .line 1783
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        85: .line 1786
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/debug"
        86: .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.cmdDebug(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        87: .line 1788
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        88: .line 1789
            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
        89: .line 1786
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        90: .line 1790
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/help"
        91: .line 1791
            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;
        92: .line 1792
            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
        93: .line 1790
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        94: .line 1793
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/set"
        95: .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.cmdSet(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        96: .line 1795
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
        97: .line 1797
            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;
        98: .line 1798
            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;
        99: .line 1799
            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;
       100: .line 1800
            ldc "mode"
       101: .line 1801
            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;
       102: .line 1802
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       103: .line 1800
            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;
       104: .line 1803
            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;
       105: .line 1804
            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;
       106: .line 1805
            ldc "start"
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       107: .line 1795
            invokestatic java.util.Map.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
       108: .line 1806
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
       109: .line 1795
            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
       110: .line 1793
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       111: .line 1807
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/?"
       112: .line 1808
            ldc "help.quest"
       113: .line 1809
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.cmdHelp(Ljava/lang/String;)Z (5)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       114: .line 1810
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       115: .line 1811
            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
       116: .line 1807
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       117: .line 1812
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/!"
       118: .line 1813
            ldc "help.bang"
       119: .line 1814
            aload 0 /* this */
            invokedynamic apply(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  jdk/internal/jshell/tool/JShellTool.lambda$28(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       120: .line 1815
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       121: .line 1816
            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
       122: .line 1812
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       123: .line 1819
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/<id>"
       124: .line 1820
            ldc "help.slashID"
       125: .line 1821
            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;
       126: .line 1822
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       127: .line 1823
            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
       128: .line 1819
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       129: .line 1824
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/-<n>"
       130: .line 1825
            ldc "help.previous"
       131: .line 1826
            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;
       132: .line 1827
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       133: .line 1828
            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
       134: .line 1824
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       135: .line 1829
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "intro"
       136: .line 1830
            ldc "help.intro"
       137: .line 1831
            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
       138: .line 1829
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       139: .line 1832
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "id"
       140: .line 1833
            ldc "help.id"
       141: .line 1834
            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
       142: .line 1832
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       143: .line 1835
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "shortcuts"
       144: .line 1836
            ldc "help.shortcuts"
       145: .line 1837
            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
       146: .line 1835
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       147: .line 1838
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "context"
       148: .line 1839
            ldc "help.context"
       149: .line 1840
            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
       150: .line 1838
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       151: .line 1841
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "rerun"
       152: .line 1842
            ldc "help.rerun"
       153: .line 1843
            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
       154: .line 1841
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       155: .line 1845
            aload 0 /* this */
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
       156: .line 1846
            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;
       157: .line 1847
            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;
       158: .line 1848
            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
       159: .line 1849
            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
       160: .line 1845
            putfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
       161: .line 178
            aload 0 /* this */
            aload 1 /* cmdin */
            putfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
       162: .line 179
            aload 0 /* this */
            aload 2 /* cmdout */
            putfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
       163: .line 180
            aload 0 /* this */
            aload 3 /* cmderr */
            putfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
       164: .line 181
            aload 0 /* this */
            aload 4 /* console */
            putfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
       165: .line 182
            aload 0 /* this */
            aload 5 /* userin */
            ifnull 166
            aload 5 /* userin */
            goto 167
      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
       166: 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
       167: putfield jdk.internal.jshell.tool.JShellTool.userin:Ljava/io/InputStream;
       168: .line 188
            aload 0 /* this */
            aload 6 /* userout */
            putfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
       169: .line 189
            aload 0 /* this */
            aload 7 /* usererr */
            putfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
       170: .line 190
            aload 0 /* this */
            aload 8 /* prefs */
            putfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
       171: .line 191
            aload 0 /* this */
            aload 9 /* envvars */
            putfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
       172: .line 192
            aload 0 /* this */
            aload 10 /* locale */
            putfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
       173: .line 193
            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  174     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0  174     1    cmdin  Ljava/io/InputStream;
            0  174     2   cmdout  Ljava/io/PrintStream;
            0  174     3   cmderr  Ljava/io/PrintStream;
            0  174     4  console  Ljava/io/PrintStream;
            0  174     5   userin  Ljava/io/InputStream;
            0  174     6  userout  Ljava/io/PrintStream;
            0  174     7  usererr  Ljava/io/PrintStream;
            0  174     8    prefs  Ljdk/internal/jshell/tool/PersistentStorage;
            0  174     9  envvars  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0  174    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 684
            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 688
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 2
         1: .line 689
            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 691
      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 701
            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 702
            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 711
            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 712
            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 720
            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 731
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 732
            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 734
      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 742
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
            ifnonnull 6
         1: .line 744
            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 745
            goto 6
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 746
            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 747
            ldc ""
            areturn
         6: .line 752
      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 753
            goto 11
        end local 2 // java.lang.String s
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         8: pop
         9: .line 754
            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 755
            ldc ""
            areturn
        start local 2 // java.lang.String s
        11: .line 757
      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 768
            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 779
            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 793
            aload 1 /* s */
            ifnonnull 2
         1: .line 794
            ldc ""
            areturn
         2: .line 796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
            ifne 4
         3: .line 798
            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 800
      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 801
            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 804
            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 806
      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 815
            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 816
            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 825
            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 826
            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 838
            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 839
            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=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 850
            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.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 851
            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 862
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 863
            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 865
      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 868
            aload 1 /* stream */
            aload 2 /* a */
            aload 3 /* b */
         1: .line 869
            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 870
            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 868
            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 871
            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 872
            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 873
            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 871
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 875
            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 884
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* last */
        start local 1 // int last
         1: .line 885
            iload 1 /* last */
            istore 2 /* i */
        start local 2 // int i
         2: .line 886
            goto 4
         3: .line 887
      StackMap locals: int int
      StackMap stack:
            iinc 2 /* i */ -1
         4: .line 886
      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 889
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 1 /* last */
            if_icmpeq 7
         6: .line 890
            aload 0 /* s */
            iconst_0
            iload 2 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         7: .line 892
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            areturn
        end local 2 // int i
        end local 1 // int last
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     s  Ljava/lang/String;
            1    8     1  last  I
            2    8     2     i  I
    MethodParameters:
      Name  Flags
      s     

  public int start(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String[] args
         0: .line 904
            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 905
            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 906
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            ifnonnull 4
         3: .line 909
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ireturn
         4: .line 911
      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 913
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.configEditor:()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            pop
         6: .line 916
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         7: .line 917
            goto 11
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         8: astore 3 /* ex */
        start local 3 // java.lang.IllegalStateException ex
         9: .line 919
            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 921
            iconst_1
            ireturn
        end local 3 // java.lang.IllegalStateException ex
        11: .line 924
      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 926
            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 927
            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 929
            iconst_1
            ireturn
        end local 3 // java.lang.String loadFile
        16: .line 926
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        17: .line 933
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 19
        18: .line 935
            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 938
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 50
        20: .line 940
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.interactiveModeBegun:Z
        21: .line 941
            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 942
            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 945
      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 951
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        25: .line 953
            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 954
            goto 31
        28: .line 955
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread java.lang.Throwable java.lang.Throwable jdk.internal.jshell.tool.IOContext
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 30
        29: .line 956
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        30: .line 958
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        31: .line 954
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifne 28
        32: .line 960
            aload 6 /* in */
            ifnull 45
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
            goto 45
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 4
            aload 6 /* in */
            ifnull 34
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
        end local 6 // jdk.internal.jshell.tool.IOContext in
      StackMap locals:
      StackMap stack:
        34: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 5
            aload 4
            ifnonnull 36
            aload 5
            astore 4
            goto 37
      StackMap locals:
      StackMap stack:
        36: aload 4
            aload 5
            if_acmpeq 37
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        37: aload 4
            athrow
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread
      StackMap stack: java.lang.Throwable
        38: astore 7
        39: .line 961
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.storeHistory:(Ljdk/internal/jshell/tool/PersistentStorage;)V
        40: .line 962
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        41: .line 964
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        42: .line 965
            goto 44
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread top top top java.lang.Throwable
      StackMap stack: java.lang.Exception
        43: pop
        44: .line 969
      StackMap locals:
      StackMap stack:
            aload 7
            athrow
        45: .line 961
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String[] jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine java.lang.Thread
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistory:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
            invokevirtual jdk.internal.jshell.tool.JShellTool$ReplayableHistory.storeHistory:(Ljdk/internal/jshell/tool/PersistentStorage;)V
        46: .line 962
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        47: .line 964
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        48: .line 965
            goto 50
      StackMap locals:
      StackMap stack: java.lang.Exception
        49: pop
        end local 3 // java.lang.Thread shutdownHook
        50: .line 971
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        51: .line 972
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ireturn
        end local 2 // jdk.internal.jshell.tool.JShellTool$OptionParserCommandLine commandLineArgs
        end local 1 // java.lang.String[] args
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   52     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   52     1             args  [Ljava/lang/String;
            1   52     2  commandLineArgs  Ljdk/internal/jshell/tool/JShellTool$OptionParserCommandLine;
            9   11     3               ex  Ljava/lang/IllegalStateException;
           14   16     3         loadFile  Ljava/lang/String;
           24   50     3     shutdownHook  Ljava/lang/Thread;
           27   34     6               in  Ljdk/internal/jshell/tool/IOContext;
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.IllegalStateException
          27    32      33  any
          26    35      35  any
          25    38      38  any
          41    42      43  Class java.lang.Exception
          47    48      49  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      args  

  private jdk.internal.jshell.tool.JShellTool$EditorSetting configEditor();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 977
            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 978
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            ifnull 3
         2: .line 979
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
         3: .line 982
      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 983
            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 984
            aload 5 /* v */
            ifnull 8
         7: .line 985
            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 982
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 4
        10: .line 989
            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 993
            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 994
            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 997
            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 998
            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 1037
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
         1: .line 1040
            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 1041
            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 1042
            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 1043
            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 1044
            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 1047
            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 1048
            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 1050
            invokestatic jdk.jshell.JShell.builder:()Ljdk/jshell/JShell$Builder;
         9: .line 1051
            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 1052
            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 1053
            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 1054
            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 1055
            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 1058
            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 1059
            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 1049
            astore 1 /* builder */
        start local 1 // jdk.jshell.JShell$Builder builder
        17: .line 1060
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
            ifnull 19
        18: .line 1061
            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 1063
      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 1064
            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;
        21: .line 1071
            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;
        22: .line 1072
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        23: .line 1078
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 31
        24: .line 1080
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        25: .line 1081
            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
        26: .line 1082
            goto 30
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 2
        28: .line 1083
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        29: .line 1084
            aload 2
            athrow
        30: .line 1083
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        31: .line 1087
      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;
        32: .line 1088
            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   33     0     this  Ljdk/internal/jshell/tool/JShellTool;
           17   33     1  builder  Ljdk/jshell/JShell$Builder;
      Exception table:
        from    to  target  type
          24    27      27  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 1093
            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 1095
            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 1097
            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 1099
            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 1100
            aload 3 /* encoded */
            ifnull 7
            aload 3 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 7
         5: .line 1101
            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 1103
            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 1106
      StackMap locals: jdk.internal.jshell.tool.MessageHandler java.lang.String
      StackMap stack:
            aload 1 /* initMode */
            ifnull 12
         8: .line 1108
            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 1109
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        10: .line 1110
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        11: .line 1112
            goto 15
        12: .line 1113
      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 1114
            aload 4 /* fb */
            ifnull 15
        14: .line 1117
            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 1120
      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 1124
            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 1125
            aload 0 /* this */
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         3: .line 1126
            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 1127
            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 1128
            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 1130
      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 1133
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         1: .line 1134
            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 1135
            aload 1 /* oldState */
            ifnull 7
         3: .line 1136
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         4: .line 1137
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
         5: .line 1138
            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 1139
            aload 1 /* oldState */
            invokevirtual jdk.jshell.JShell.close:()V
         7: .line 1141
      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 1149
            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 1150
            aload 0 /* this */
            aload 1 /* in */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         2: .line 1153
            ldc ""
            astore 3 /* remaining */
        start local 3 // java.lang.String remaining
         3: .line 1154
            goto 6
         4: .line 1156
      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 1158
            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 1154
      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 1160
            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 1165
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        10: .line 1162
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        11: .line 1163
            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 1165
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 17
        13: .line 1164
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 1165
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        15: .line 1166
            aload 5
            athrow
        16: .line 1165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        17: .line 1167
      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 1176
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 1178
            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 1180
            ldc ""
            areturn
         3: .line 1184
      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 1185
            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 1187
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            areturn
         6: .line 1190
      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=3, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String initial
         0: .line 1203
            aload 1 /* initial */
            astore 2 /* src */
        start local 2 // java.lang.String src
         1: .line 1204
            goto 39
         2: .line 1205
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 16
         3: .line 1209
            aload 0 /* this */
            aload 2 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isCommand:(Ljava/lang/String;)Z
            ifeq 12
         4: .line 1212
            aload 2 /* src */
            ldc " "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 4 /* sp */
        start local 4 // int sp
         5: .line 1213
            iload 4 /* sp */
            ifge 6
            aload 2 /* src */
            areturn
         6: .line 1214
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String top int
      StackMap stack:
            aload 2 /* src */
            iload 4 /* sp */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 3 /* check */
        start local 3 // java.lang.String check
         7: .line 1215
            aload 3 /* check */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 8
            aload 2 /* src */
            areturn
         8: .line 1216
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* src */
            iconst_0
            iload 4 /* sp */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* cmd */
        start local 5 // java.lang.String cmd
         9: .line 1217
            aload 0 /* this */
            aload 5 /* 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 6 /* match */
        start local 6 // jdk.internal.jshell.tool.JShellTool$Command[] match
        10: .line 1218
            aload 6 /* match */
            arraylength
            iconst_1
            if_icmpne 11
            aload 6 /* 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 13
        11: .line 1220
      StackMap locals: java.lang.String jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
            aload 2 /* src */
            areturn
        end local 6 // jdk.internal.jshell.tool.JShellTool$Command[] match
        end local 5 // java.lang.String cmd
        end local 4 // int sp
        end local 3 // java.lang.String check
        12: .line 1224
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* src */
            astore 3 /* check */
        start local 3 // java.lang.String check
        13: .line 1226
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            aload 3 /* check */
            invokevirtual jdk.jshell.SourceCodeAnalysis.analyzeCompletion:(Ljava/lang/String;)Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.completeness:()Ljdk/jshell/SourceCodeAnalysis$Completeness;
            astore 4 /* comp */
        start local 4 // jdk.jshell.SourceCodeAnalysis$Completeness comp
        14: .line 1227
            aload 4 /* comp */
            invokevirtual jdk.jshell.SourceCodeAnalysis$Completeness.isComplete:()Z
            ifne 15
            aload 4 /* comp */
            getstatic jdk.jshell.SourceCodeAnalysis$Completeness.EMPTY:Ljdk/jshell/SourceCodeAnalysis$Completeness;
            if_acmpne 16
        15: .line 1228
      StackMap locals: jdk.jshell.SourceCodeAnalysis$Completeness
      StackMap stack:
            aload 2 /* src */
            areturn
        end local 4 // jdk.jshell.SourceCodeAnalysis$Completeness comp
        end local 3 // java.lang.String check
        16: .line 1231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.interactive:()Z
            ifeq 24
        17: .line 1232
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 21
        18: .line 1233
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 20
        19: .line 1234
            ldc "\u0005"
            goto 25
        20: .line 1235
      StackMap locals:
      StackMap stack:
            ldc "\u0006"
            goto 25
        21: .line 1236
      StackMap locals:
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 23
        22: .line 1237
            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 25
        23: .line 1238
      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.getContinuationPrompt:(Ljava/lang/String;)Ljava/lang/String;
            goto 25
        24: .line 1239
      StackMap locals:
      StackMap stack:
            ldc ""
        25: .line 1231
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* prompt */
        start local 3 // java.lang.String prompt
        26: .line 1243
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            aload 3 /* prompt */
            aload 2 /* src */
            invokevirtual jdk.internal.jshell.tool.IOContext.readLine:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* line */
        start local 4 // java.lang.String line
        27: .line 1244
            goto 31
        end local 4 // java.lang.String line
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.lang.String
      StackMap stack: jdk.internal.jshell.tool.IOContext$InputInterruptedException
        28: pop
        29: .line 1246
            ldc ""
            astore 2 /* src */
        30: .line 1247
            goto 39
        start local 4 // java.lang.String line
        31: .line 1249
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* line */
            ifnonnull 35
        32: .line 1251
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.interactiveOutput:()Z
            ifeq 34
        33: .line 1253
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        34: .line 1255
      StackMap locals:
      StackMap stack:
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
        35: .line 1257
      StackMap locals:
      StackMap stack:
            aload 2 /* src */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 37
        36: .line 1258
            aload 4 /* line */
            goto 38
        37: .line 1259
      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 4 /* line */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        38: .line 1257
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* src */
        end local 4 // java.lang.String line
        end local 3 // java.lang.String prompt
        39: .line 1204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 2
        40: .line 1261
            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   41     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   41     1  initial  Ljava/lang/String;
            1   41     2      src  Ljava/lang/String;
            7   12     3    check  Ljava/lang/String;
           13   16     3    check  Ljava/lang/String;
            5   12     4       sp  I
            9   12     5      cmd  Ljava/lang/String;
           10   12     6    match  [Ljdk/internal/jshell/tool/JShellTool$Command;
           14   16     4     comp  Ljdk/jshell/SourceCodeAnalysis$Completeness;
           26   39     3   prompt  Ljava/lang/String;
           27   28     4     line  Ljava/lang/String;
           31   39     4     line  Ljava/lang/String;
      Exception table:
        from    to  target  type
          26    27      28  Class jdk.internal.jshell.tool.IOContext$InputInterruptedException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      initial  

  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 1265
            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 1269
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 2
         1: .line 1270
            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 1272
      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 1282
            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 1283
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSource:(Ljava/lang/String;)Z
            istore 3
         2: .line 1289
            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 1283
            iload 3
            ireturn
         4: .line 1284
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            pop
         5: .line 1285
            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 1286
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 1289
            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 1287
            iconst_0
            ireturn
         9: .line 1288
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        10: .line 1289
            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 1290
            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 1300
            aload 1 /* input */
            ldc "/-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 1303
            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 1304
            return
         3: .line 1305
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         4: .line 1311
      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 1312
            iload 4 /* idx */
            ifle 9
         6: .line 1313
            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 1314
            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 1315
            goto 11
        end local 3 // java.lang.String arg
        end local 2 // java.lang.String cmd
         9: .line 1316
      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 1317
            ldc ""
            astore 3 /* arg */
        start local 3 // java.lang.String arg
        11: .line 1320
      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 1321
            aload 5 /* candidates */
            arraylength
            tableswitch { // 0 - 1
                    0: 13
                    1: 19
              default: 23
          }
        13: .line 1324
      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 1326
            aload 0 /* this */
            aload 1 /* input */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunHistoryEntriesById:(Ljava/lang/String;)V
        15: .line 1327
            goto 27
        16: .line 1328
      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 1329
            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 1331
            goto 27
        19: .line 1333
      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 1335
            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 1336
            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 1338
            goto 27
        end local 6 // jdk.internal.jshell.tool.JShellTool$Command command
        23: .line 1341
      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 1342
            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 1341
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 1343
            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 1346
      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 1349
            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 1350
            aload 3 /* exact */
            ifnull 3
         2: .line 1351
            iconst_1
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            dup
            iconst_0
            aload 3 /* exact */
            aastore
            areturn
         3: .line 1353
      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 1354
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 1355
            aload 2 /* filter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 1356
            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 1357
            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 1353
            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 1361
            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 1362
            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 1364
      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 1477
            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 1478
            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 1481
            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 1496
            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 1522
            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 1529
            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 1553
            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 1567
            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 1594
            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 1608
            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 reloadCompletion();
    descriptor: ()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1662
            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 1667
            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 1672
            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 1698
            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 1702
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1703
            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 1702
            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 1707
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1708
            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 1709
            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 1707
            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 1713
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1714
            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 1715
            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 1713
            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 1719
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1720
            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 1721
            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 1719
            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 1855
            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 1859
            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 1860
            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 1861
            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 1862
            aload 4 /* stripped */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* space */
        start local 6 // int space
         6: .line 1863
            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 1864
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
        10: .line 1868
            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 1869
            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 1871
            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 1872
            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 1873
            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 1874
            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 1870
            astore 9 /* toShow */
        end local 10 // java.lang.String setSubcommand
        start local 9 // java.util.List toShow
        17: .line 1875
            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 1877
            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 1876
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        21: .line 1878
            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 1880
            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 1879
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        25: .line 1881
            goto 34
        end local 9 // java.util.List toShow
        26: .line 1883
      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 1884
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        28: .line 1885
            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 1887
            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 1889
            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 1890
            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 1891
            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 1882
            astore 9 /* toShow */
        start local 9 // java.util.List toShow
        34: .line 1894
      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 1895
            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 1896
            goto 45
        39: .line 1897
      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 1898
            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 1897
      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 1902
      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 1907
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.stop:()V
         1: .line 1908
            return
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/jshell/tool/JShellTool;

  final boolean cmdSet(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1916
            ldc "/set"
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 1917
            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 1918
            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 1919
            aload 4 /* which */
            ifnonnull 5
         4: .line 1920
            iconst_0
            ireturn
         5: .line 1922
      StackMap locals: java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String
      StackMap stack:
            aload 4 /* which */
            dup
            astore 5
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 9
          -1693144887: 6
          -1481378731: 7
          -1307827859: 8
          -1268779017: 9
           -979805852: 10
           -191501435: 11
              3357091: 12
            109757538: 13
           1774054948: 14
              default: 31
          }
      StackMap locals: java.lang.String
      StackMap stack:
         6: aload 5
            ldc "truncation"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 23
            goto 31
      StackMap locals:
      StackMap stack:
         7: aload 5
            ldc "_blank"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 31
      StackMap locals:
      StackMap stack:
         8: aload 5
            ldc "editor"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 31
      StackMap locals:
      StackMap stack:
         9: aload 5
            ldc "format"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 22
            goto 31
      StackMap locals:
      StackMap stack:
        10: aload 5
            ldc "prompt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 28
            goto 31
      StackMap locals:
      StackMap stack:
        11: aload 5
            ldc "feedback"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 24
            goto 31
      StackMap locals:
      StackMap stack:
        12: aload 5
            ldc "mode"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
            goto 31
      StackMap locals:
      StackMap stack:
        13: aload 5
            ldc "start"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 30
            goto 31
      StackMap locals:
      StackMap stack:
        14: aload 5
            ldc "_retain"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            goto 31
        15: .line 1924
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.setting.to.retain.must.be.specified"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.whole:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 1925
            iconst_0
            ireturn
        17: .line 1929
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$SetEditor
            dup
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.JShellTool$SetEditor.<init>:(Ljdk/internal/jshell/tool/JShellTool;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool$SetEditor.set:()Z
            pop
        18: .line 1930
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        19: .line 1931
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            pop
        20: .line 1932
            aload 0 /* this */
            ldc "jshell.msg.set.show.mode.settings"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 1933
            iconst_1
            ireturn
        22: .line 1936
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setFormat:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        23: .line 1938
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setTruncation:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        24: .line 1940
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setFeedback:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        25: .line 1942
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
        26: .line 1943
            aload 0 /* this */
            invokedynamic accept(Ljdk/internal/jshell/tool/JShellTool;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/jshell/tool/JShellTool.lambda$83(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
        27: .line 1942
            invokevirtual jdk.internal.jshell.tool.Feedback.setMode:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;Ljava/util/function/Consumer;)Z
            ireturn
        28: .line 1945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.Feedback.setPrompt:(Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        29: .line 1947
      StackMap locals:
      StackMap stack:
            new jdk.internal.jshell.tool.JShellTool$SetEditor
            dup
            aload 0 /* this */
            aload 3 /* at */
            invokespecial jdk.internal.jshell.tool.JShellTool$SetEditor.<init>:(Ljdk/internal/jshell/tool/JShellTool;Ljdk/internal/jshell/tool/ArgTokenizer;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool$SetEditor.set:()Z
            ireturn
        30: .line 1949
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.setStart:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ireturn
        31: .line 1951
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.arg"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* cmd */
            aastore
            dup
            iconst_1
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.val:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        32: .line 1952
            iconst_0
            ireturn
        end local 4 // java.lang.String which
        end local 3 // jdk.internal.jshell.tool.ArgTokenizer at
        end local 2 // java.lang.String cmd
        end local 1 // java.lang.String arg
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   33     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   33     1    arg  Ljava/lang/String;
            1   33     2    cmd  Ljava/lang/String;
            2   33     3     at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   33     4  which  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   

  boolean setFeedback(jdk.internal.jshell.tool.MessageHandler, jdk.internal.jshell.tool.ArgTokenizer);
    descriptor: (Ljdk/internal/jshell/tool/MessageHandler;Ljdk/internal/jshell/tool/ArgTokenizer;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.MessageHandler messageHandler
        start local 2 // jdk.internal.jshell.tool.ArgTokenizer at
         0: .line 1957
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 1 /* messageHandler */
            aload 2 /* at */
         1: .line 1958
            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 1957
            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 1964
            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 1965
            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 1966
            aload 4 /* sub */
            ifnonnull 7
         3: .line 1968
            aload 2 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 1969
            ldc "_retain"
            goto 6
         5: .line 1970
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "_blank"
         6: .line 1968
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
         7: .line 1972
      StackMap locals:
      StackMap stack:
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         8: .line 1973
            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 1974
            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 1972
            astore 5 /* matches */
        start local 5 // java.lang.String[] matches
        11: .line 1975
            aload 5 /* matches */
            arraylength
            ifne 17
        12: .line 1977
            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 1978
            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 1979
            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 1978
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 1981
            aconst_null
            areturn
        17: .line 1983
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 5 /* matches */
            arraylength
            iconst_1
            if_icmple 23
        18: .line 1985
            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 1986
            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 1987
            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 1986
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 1989
            aconst_null
            areturn
        23: .line 1991
      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 2161
            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 2162
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fns */
        start local 2 // java.util.List fns
         2: .line 2163
            goto 4
         3: .line 2164
      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 2163
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            ifnonnull 3
         5: .line 2166
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2167
            iconst_0
            ireturn
         7: .line 2169
      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 2170
            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 2171
            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 2172
            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 2174
            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 2175
            iload 7 /* argCount */
            iconst_1
            if_icmple 23
        21: .line 2176
            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 2177
            iconst_0
            ireturn
        23: .line 2179
      StackMap locals: int
      StackMap stack:
            iload 7 /* argCount */
            ifne 26
            iload 5 /* retainOption */
            ifne 26
        24: .line 2181
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        25: .line 2182
            iconst_1
            ireturn
        26: .line 2184
      StackMap locals:
      StackMap stack:
            iload 6 /* hasFile */
            ifeq 30
        27: .line 2185
            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 2186
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            ifnonnull 35
        29: .line 2187
            iconst_0
            ireturn
        30: .line 2189
      StackMap locals:
      StackMap stack:
            iload 3 /* defaultOption */
            ifeq 33
        31: .line 2190
            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 2191
            goto 35
      StackMap locals:
      StackMap stack:
        33: iload 4 /* noneOption */
            ifeq 35
        34: .line 2192
            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 2194
      StackMap locals:
      StackMap stack:
            iload 5 /* retainOption */
            ifeq 37
        36: .line 2196
            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 2198
      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 2204
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2205
            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 2206
            aload 2 /* retained */
            ifnull 14
         3: .line 2207
            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 2208
            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 2209
            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 2210
            iload 4 /* currentDifferent */
            ifeq 10
         9: .line 2211
            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 2213
      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 2214
            iload 4 /* currentDifferent */
            ifeq 16
        12: .line 2215
            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 2217
            goto 16
        14: .line 2218
      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 2219
            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 2221
      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 2222
            return
        end local 2 // java.lang.String retained
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              this  Ljdk/internal/jshell/tool/JShellTool;
            1   18     1                sb  Ljava/lang/StringBuilder;
            2   18     2          retained  Ljava/lang/String;
            4   13     3     retainedStart  Ljdk/internal/jshell/tool/Startup;
            7   13     4  currentDifferent  Z

  boolean cmdDebug(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 2225
            aload 1 /* arg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
         1: .line 2226
            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 2227
            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 2228
            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 2229
            goto 46
        11: .line 2230
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* flags */
        start local 2 // int flags
        12: .line 2231
            aload 1 /* arg */
            invokevirtual java.lang.String.toCharArray:()[C
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 44
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int top int int char[]
      StackMap stack:
        13: aload 6
            iload 4
            caload
            istore 3 /* ch */
        start local 3 // char ch
        14: .line 2232
            iload 3 /* ch */
            lookupswitch { // 8
                   48: 15
                   99: 28
                  100: 31
                  101: 34
                  102: 25
                  103: 22
                  114: 19
                  119: 37
              default: 40
          }
        15: .line 2234
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int int char[]
      StackMap stack:
            iconst_0
            istore 2 /* flags */
        16: .line 2235
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        17: .line 2236
            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
        18: .line 2237
            goto 43
        19: .line 2239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        20: .line 2240
            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
        21: .line 2241
            goto 43
        22: .line 2243
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_1
            ior
            istore 2 /* flags */
        23: .line 2244
            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
        24: .line 2245
            goto 43
        25: .line 2247
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_2
            ior
            istore 2 /* flags */
        26: .line 2248
            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
        27: .line 2249
            goto 43
        28: .line 2251
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_4
            ior
            istore 2 /* flags */
        29: .line 2252
            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
        30: .line 2253
            goto 43
        31: .line 2255
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 8
            ior
            istore 2 /* flags */
        32: .line 2256
            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
        33: .line 2257
            goto 43
        34: .line 2259
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 16
            ior
            istore 2 /* flags */
        35: .line 2260
            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
        36: .line 2261
            goto 43
        37: .line 2263
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 32
            ior
            istore 2 /* flags */
        38: .line 2264
            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
        39: .line 2265
            goto 43
        40: .line 2267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Unknown debugging option: %c"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* 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
        41: .line 2268
            aload 0 /* this */
            ldc "Use: 0 r g f c d e w"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluff:(Ljava/lang/String;[Ljava/lang/Object;)V
        42: .line 2269
            iconst_0
            ireturn
        end local 3 // char ch
        43: .line 2231
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int top int int char[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        44: iload 4
            iload 5
            if_icmplt 13
        45: .line 2272
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            iload 2 /* flags */
            invokestatic jdk.internal.jshell.debug.InternalDebugControl.setDebugFlags:(Ljdk/jshell/JShell;I)V
        end local 2 // int flags
        46: .line 2274
      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   47     0   this  Ljdk/internal/jshell/tool/JShellTool;
            0   47     1    arg  Ljava/lang/String;
           12   46     2  flags  I
           14   43     3     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 2278
            aload 1 /* arg */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 39
         1: .line 2279
            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 2280
            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 2281
            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 2283
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 38
         6: .line 2284
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 5 /* sn */
        start local 5 // jdk.jshell.Snippet sn
         7: .line 2287
            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 2288
            aload 5 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 7 /* source */
        start local 7 // java.lang.String source
         9: .line 2289
            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 2292
            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 2293
            aload 0 /* this */
            aload 3 /* e */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Exception;)Z
            ifeq 13
        12: .line 2295
            iconst_0
            ireturn
        13: .line 2299
      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 2301
            iconst_0
            ireturn
        15: .line 2304
      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 2305
            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 2306
            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 2307
            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 2308
            goto 23
        end local 8 // java.lang.String typeName
        21: .line 2310
      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 2311
            iconst_0
            ireturn
        start local 8 // java.lang.String typeName
        23: .line 2313
      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 2321
      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 2332
            aload 0 /* this */
            iload 10 /* i */
            putfield jdk.internal.jshell.tool.JShellTool.exitCode:I
        32: .line 2333
            goto 38
        end local 10 // int i
        33: .line 2334
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        34: .line 2336
            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 2337
            iconst_0
            ireturn
        36: .line 2341
      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 2342
            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 2281
      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 2347
      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 2348
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        41: .line 2349
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.exitCode:I
            ifne 44
        42: .line 2350
            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 2351
            goto 45
        44: .line 2352
      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 2354
      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 2358
            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 2359
            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 2360
            aload 3 /* subject */
            ifnull 35
         3: .line 2363
            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 2364
            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 2366
            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 2363
            astore 4 /* matches */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
         7: .line 2367
            aload 4 /* matches */
            arraylength
            iconst_1
            if_icmpne 16
         8: .line 2368
            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 2369
            aload 5 /* cmd */
            ldc "/set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 2371
            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 2372
            aload 6 /* which */
            ifnonnull 13
        12: .line 2373
            iconst_0
            ireturn
        13: .line 2375
      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 2376
            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 2377
            iconst_1
            ireturn
        end local 6 // java.lang.String which
        end local 5 // java.lang.String cmd
        16: .line 2381
      StackMap locals:
      StackMap stack:
            aload 4 /* matches */
            arraylength
            ifle 23
        17: .line 2382
            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 2383
            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 2382
            iinc 6 1
      StackMap locals:
      StackMap stack:
        21: iload 6
            iload 7
            if_icmplt 18
        22: .line 2385
            iconst_1
            ireturn
        23: .line 2389
      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 2390
            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 2391
            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 2389
            astore 5 /* subs */
        start local 5 // java.lang.String[] subs
        27: .line 2392
            aload 5 /* subs */
            arraylength
            ifle 34
        28: .line 2393
            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 2394
            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 2393
            iinc 7 1
      StackMap locals:
      StackMap stack:
        32: iload 7
            iload 8
            if_icmplt 29
        33: .line 2396
            iconst_1
            ireturn
        34: .line 2398
      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 2401
      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 2402
            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 2403
            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 2404
            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 2405
            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 2402
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        41: .line 2407
            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 2408
            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 2409
            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 2410
            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 2411
            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 2408
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        47: .line 2413
            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 2417
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         1: .line 2418
            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 2419
            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 2420
            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 2421
            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 2422
            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 2423
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
         7: .line 2424
            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();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2427
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         1: .line 2428
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.currentSessionHistory:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: jdk.internal.jshell.tool.JShellTool top java.util.Iterator
      StackMap stack:
         2: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* s */
        start local 1 // java.lang.String s
         3: .line 2430
            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 1 /* s */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 1 // java.lang.String s
         4: .line 2428
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 2432
            iconst_1
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/internal/jshell/tool/JShellTool;
            3    4     1     s  Ljava/lang/String;

  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 2451
            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 2452
            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 2453
            aload 6 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 5
         4: .line 2454
            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 2451
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 1
         7: .line 2457
            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 2461
            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 2465
            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 2469
            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 2473
            aload 1 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         1: .line 2474
            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 2473
            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 2489
            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 2490
            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 2491
            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 2505
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* args */
        start local 4 // java.util.List args
         1: .line 2507
            goto 3
        start local 5 // java.lang.String s
         2: .line 2508
      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 2507
      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 2510
            aload 0 /* this */
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2511
            aconst_null
            areturn
         7: .line 2513
      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 2514
            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 2515
            aconst_null
            areturn
        10: .line 2517
      StackMap locals:
      StackMap stack:
            aload 3 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 13
        11: .line 2518
            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 2519
            aconst_null
            areturn
        13: .line 2521
      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 2523
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            areturn
        15: .line 2525
      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 2527
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        17: .line 2528
            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 2527
            areturn
        19: .line 2530
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 23
        20: .line 2532
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        21: .line 2533
            aload 2 /* defFilter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 2532
            areturn
        23: .line 2535
      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 2759
            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 2760
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2761
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* args */
        start local 3 // java.util.List args
         3: .line 2763
            goto 5
        start local 4 // java.lang.String s
         4: .line 2764
      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 2763
      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 2766
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2767
            iconst_0
            ireturn
         9: .line 2769
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 12
        10: .line 2770
            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 2771
            iconst_0
            ireturn
        12: .line 2773
      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 2774
            aload 5 /* stream */
            ifnonnull 16
        14: .line 2776
            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 2777
            iconst_0
            ireturn
        16: .line 2779
      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 2780
            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 2784
            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 2785
            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 2784
            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 2786
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2787
            iconst_0
            ireturn
         5: .line 2789
      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 2790
            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 2819
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2820
            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 2821
            aload 6 /* sb */
            aload 7 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2822
            aload 6 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String s
        12: .line 2820
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 2824
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* src */
        start local 7 // java.lang.String src
        14: .line 2825
            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 2826
            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 2827
            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 2828
            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 2833
      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 2834
            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 2841
            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 2842
            aload 9 /* errorHandler */
            aload 11 /* extSaveHandler */
        22: .line 2843
            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 2844
            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 2845
            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 2846
            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 2841
            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 2847
            aload 10 /* buffer */
            iconst_0
            aaload
            ifnull 29
        28: .line 2848
            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 2851
      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 2859
            ldc Ljdk/internal/editor/spi/BuildInEditorProvider;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         1: .line 2858
            astore 4 /* sl */
        start local 4 // java.util.ServiceLoader sl
         2: .line 2861
            aconst_null
            astore 5 /* provider */
        start local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
         3: .line 2862
            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 2863
            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 2864
      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 2862
      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 2867
            aload 5 /* provider */
            ifnull 13
         9: .line 2868
            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 2869
            aload 1 /* initialText */
            aload 2 /* saveHandler */
            aload 3 /* errorHandler */
        11: .line 2868
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.edit:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V
        12: .line 2870
            iconst_1
            ireturn
        13: .line 2872
      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 2874
            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 2875
            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 2877
      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 2878
            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 2937
            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 2938
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:()Z
            ireturn
         2: .line 2940
      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 2941
            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 2940
            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 2942
            aload 2 /* stream */
            ifnonnull 7
         6: .line 2943
            iconst_0
            ireturn
         7: .line 2947
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            iconst_1
            newarray 4
            astore 5 /* hasOutput */
        start local 5 // boolean[] hasOutput
         8: .line 2948
            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 2955
            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 2959
            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=6, 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 2963
            aload 1 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 20
         1: .line 2966
            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 2968
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         3: .line 2969
            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 2970
            goto 12
        end local 3 // java.util.Scanner scanner
         5: .line 2971
      StackMap locals:
      StackMap stack:
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 4 /* path */
        start local 4 // java.nio.file.Path path
         6: .line 2973
            new java.util.Scanner
            dup
         7: .line 2974
            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
            ifne 10
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.getResource:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 5 /* resource */
        start local 5 // java.lang.String resource
         8: ifnull 10
         9: .line 2975
            new java.io.StringReader
            dup
            aload 5 /* resource */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            goto 11
        end local 5 // java.lang.String resource
        10: .line 2976
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String top java.nio.file.Path
      StackMap stack: new 6 new 6
            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
        11: .line 2973
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String top java.nio.file.Path
      StackMap stack: new 6 new 6 java.io.Reader
            invokespecial java.util.Scanner.<init>:(Ljava/lang/Readable;)V
            astore 3 /* scanner */
        end local 4 // java.nio.file.Path path
        start local 3 // java.util.Scanner scanner
        12: .line 2979
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String java.lang.String java.util.Scanner
      StackMap stack:
            aload 0 /* this */
            new jdk.internal.jshell.tool.ScannerIOContext
            dup
            aload 3 /* scanner */
            invokespecial jdk.internal.jshell.tool.ScannerIOContext.<init>:(Ljava/util/Scanner;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        13: .line 2980
            iconst_1
            ireturn
        end local 3 // java.util.Scanner scanner
        14: .line 2981
      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
        15: .line 2982
            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
        16: goto 21
        17: .line 2983
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        18: .line 2984
            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
        19: .line 2986
            goto 21
        20: .line 2987
      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
        21: .line 2989
      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   22     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   22     1  filename  Ljava/lang/String;
            0   22     2   context  Ljava/lang/String;
            4    5     3   scanner  Ljava/util/Scanner;
           12   14     3   scanner  Ljava/util/Scanner;
            6   12     4      path  Ljava/nio/file/Path;
            8   10     5  resource  Ljava/lang/String;
           15   16     3         e  Ljava/io/FileNotFoundException;
           18   19     3         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1    13      14  Class java.io.FileNotFoundException
           1    13      17  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 2993
            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 2995
            aload 0 /* name */
            invokestatic jdk.internal.jshell.tool.JShellTool.readResource:(Ljava/lang/String;)Ljava/lang/String;
         2: areturn
         3: .line 2996
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 3000
      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 3048
            aload 0 /* name */
            ldc "JAVASE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 3050
            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 3054
      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 3056
            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 3057
            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 3058
            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 3059
            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 3058
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 3059
            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 3063
            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 3064
            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 3065
            iconst_0
            ireturn
         5: .line 3067
      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 3068
            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 3069
            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 3073
            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 3074
            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 3075
            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 3076
            iconst_0
            ireturn
         6: .line 3079
      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 3080
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            ifnonnull 10
         8: .line 3081
            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 3082
            iconst_0
            ireturn
        10: .line 3084
      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 3085
            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 3086
            goto 15
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        13: .line 3087
      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 3088
            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 3090
      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 3091
            iload 5 /* success */
            ifeq 20
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 20
        19: .line 3094
            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 3096
      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 3100
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 17
         1: .line 3102
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 3103
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            invokevirtual jdk.internal.jshell.tool.JShellTool$Options.commonOptions:()[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 3104
            aload 2 /* sb */
         5: .line 3105
            aload 3 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 3106
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 8
         7: .line 3107
            ldc "\n   "
            goto 10
         8: .line 3108
      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 3109
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
        10: .line 3104
      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 3110
            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 3103
            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 3112
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 16
        15: .line 3113
            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 3115
      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 3117
      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 3118
            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 3119
            iconst_0
            ireturn
        20: .line 3121
      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 3122
            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 3126
            aload 3 /* oldOptions */
            ifnull 9
         1: .line 3128
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         2: .line 3129
            goto 10
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         3: astore 4 /* ex */
        start local 4 // java.lang.IllegalStateException ex
         4: .line 3130
            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 3131
            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 3133
            aload 0 /* this */
            aload 3 /* oldOptions */
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         7: .line 3134
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        end local 4 // java.lang.IllegalStateException ex
         8: .line 3136
            goto 10
         9: .line 3137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        10: .line 3139
      StackMap locals:
      StackMap stack:
            aload 1 /* history */
            ifnull 17
        11: .line 3140
            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 3141
            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 3140
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        17: .line 3143
      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 3147
            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 3148
            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 3149
            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 3147
            astore 3 /* args */
        start local 3 // java.lang.String[] args
         4: .line 3150
            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 3151
            aload 4 /* opts */
            ifnonnull 7
         6: .line 3152
            iconst_0
            ireturn
         7: .line 3154
      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 3155
            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 3156
            iconst_0
            ireturn
        10: .line 3158
      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 3159
            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 3164
            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 3165
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         2: .line 3166
            aload 3 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
         3: .line 3167
            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 3168
            iconst_0
            ireturn
         5: .line 3171
      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 3172
            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 3171
            astore 4 /* srcSpec */
        start local 4 // java.lang.String srcSpec
         8: .line 3174
            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 3175
            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 3176
            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 3177
            aload 6 /* snippetStream */
            ifnonnull 13
        12: .line 3179
            iconst_0
            ireturn
        13: .line 3181
      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 3182
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
        16: .line 3183
            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 3181
            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 3184
            aload 5 /* at */
            ldc "-history"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 25
        19: .line 3186
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            invokevirtual jdk.internal.jshell.tool.IOContext.currentSessionHistory:()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 3187
            aload 11 /* writer */
            aload 12 /* s */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        22: .line 3188
            aload 11 /* writer */
            ldc "\n"
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 12 // java.lang.String s
        23: .line 3186
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        24: .line 3190
            goto 29
        25: .line 3192
      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 3193
            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 3194
            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 3192
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        29: .line 3196
      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 3197
            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 3198
            iconst_0
            ireturn
        end local 9 // java.io.FileNotFoundException e
        38: .line 3199
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        39: .line 3200
            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 3201
            iconst_0
            ireturn
        end local 9 // java.lang.Exception e
        41: .line 3203
      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 3207
            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 3208
            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 3207
            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 3209
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3210
            iconst_0
            ireturn
         5: .line 3212
      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 3219
            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 3223
            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 3224
            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 3223
            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 3225
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3226
            iconst_0
            ireturn
         5: .line 3228
      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 3238
            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 3242
            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 3243
            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 3242
            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 3244
            aload 2 /* stream */
            ifnonnull 5
         4: .line 3245
            iconst_0
            ireturn
         5: .line 3247
      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 3271
            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 3275
            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 3278
            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 3282
            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 3283
            iload 1 /* index */
            ifge 3
         2: .line 3284
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            iadd
            istore 1 /* index */
            goto 4
         3: .line 3286
      StackMap locals: java.util.List
      StackMap stack:
            iinc 1 /* index */ -1
         4: .line 3287
      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 3288
            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 3289
            goto 9
         7: .line 3290
      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 3291
            iconst_0
            ireturn
         9: .line 3293
      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 3297
            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 3298
            aload 2 /* junk */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
         2: .line 3299
            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 3300
            iconst_0
            ireturn
         4: .line 3302
      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 3303
            aload 3 /* bad */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 8
         6: .line 3304
            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 3305
            iconst_0
            ireturn
        end local 3 // java.lang.String bad
         8: .line 3308
      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 3319
            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 3320
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 3321
            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 3322
            aload 3 /* stream */
            ifnull 5
         4: .line 3324
            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 3326
      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 3329
            aload 1 /* snippet */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 2 /* source */
        start local 2 // java.lang.String source
         1: .line 3330
            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 3331
            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 3332
            aload 0 /* this */
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Z
            pop
         4: .line 3333
            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 3341
            aload 1 /* diagnostics */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 3342
            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 3343
            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 3341
            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.Exception);
    descriptor: (Ljava/lang/Exception;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.Exception exception
         0: .line 3353
            aload 1 /* exception */
            instanceof jdk.jshell.EvalException
            ifeq 3
         1: .line 3354
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.EvalException
            invokevirtual jdk.internal.jshell.tool.JShellTool.printEvalException:(Ljdk/jshell/EvalException;)V
         2: .line 3355
            iconst_1
            ireturn
         3: .line 3356
      StackMap locals:
      StackMap stack:
            aload 1 /* exception */
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 6
         4: .line 3357
            aload 0 /* this */
            aload 1 /* exception */
            checkcast jdk.jshell.UnresolvedReferenceException
            invokevirtual jdk.internal.jshell.tool.JShellTool.printUnresolvedException:(Ljdk/jshell/UnresolvedReferenceException;)V
         5: .line 3358
            iconst_0
            ireturn
         6: .line 3360
      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
         7: .line 3361
            iconst_1
            ireturn
        end local 1 // java.lang.Exception exception
        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  exception  Ljava/lang/Exception;
    MethodParameters:
           Name  Flags
      exception  

  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 3372
            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 3373
            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 3374
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* disp */
        start local 5 // java.util.List disp
         6: .line 3375
            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 3376
            aload 5 /* disp */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         8: .line 3377
            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 3372
      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 3379
            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 3390
            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 3391
            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 3392
            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 3390
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         5: iload 5
            iload 6
            if_icmplt 1
         6: .line 3396
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            l2i
            istore 4 /* pstart */
        start local 4 // int pstart
         7: .line 3397
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            l2i
            istore 5 /* pend */
        start local 5 // int pend
         8: .line 3398
            getstatic jdk.internal.jshell.tool.JShellTool.LINEBREAK:Ljava/util/regex/Pattern;
            aload 1 /* source */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 6 /* m */
        start local 6 // java.util.regex.Matcher m
         9: .line 3399
            iconst_0
            istore 7 /* pstartl */
        start local 7 // int pstartl
        10: .line 3400
            bipush -2
            istore 8 /* pendl */
        start local 8 // int pendl
        11: .line 3401
            goto 16
        12: .line 3402
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.jshell.Diag java.util.List int int java.util.regex.Matcher int int
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.start:()I
            istore 8 /* pendl */
        13: .line 3403
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmplt 15
        14: .line 3404
            goto 17
        15: .line 3406
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pstartl */
        16: .line 3401
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            iload 7 /* pstartl */
            invokevirtual java.util.regex.Matcher.find:(I)Z
            ifne 12
        17: .line 3409
      StackMap locals:
      StackMap stack:
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmpge 19
        18: .line 3410
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 8 /* pendl */
        19: .line 3412
      StackMap locals:
      StackMap stack:
            aload 3 /* toDisplay */
            aload 1 /* source */
            iload 7 /* pstartl */
            iload 8 /* pendl */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 3414
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        21: .line 3415
            iload 4 /* pstart */
            iload 7 /* pstartl */
            isub
            istore 10 /* start */
        start local 10 // int start
        22: .line 3416
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        23: goto 26
        24: .line 3417
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 9 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 3416
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 11 /* i */
            iload 10 /* start */
            if_icmplt 24
        end local 11 // int i
        27: .line 3419
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        28: .line 3420
            iload 5 /* pend */
            iload 8 /* pendl */
            if_icmple 29
            iconst_1
            goto 30
      StackMap locals:
      StackMap stack:
        29: iconst_0
      StackMap locals:
      StackMap stack: int
        30: istore 11 /* multiline */
        start local 11 // boolean multiline
        31: .line 3421
            iload 11 /* multiline */
            ifeq 32
            iload 8 /* pendl */
            goto 33
      StackMap locals: int
      StackMap stack:
        32: iload 5 /* pend */
      StackMap locals:
      StackMap stack: int
        33: iload 7 /* pstartl */
            isub
            iconst_1
            isub
            istore 12 /* end */
        start local 12 // int end
        34: .line 3422
            iload 12 /* end */
            iload 10 /* start */
            if_icmple 44
        35: .line 3423
            iload 10 /* start */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        36: goto 39
        37: .line 3424
      StackMap locals: int int
      StackMap stack:
            aload 9 /* sb */
            bipush 45
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 3423
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 13 /* i */
            iload 12 /* end */
            if_icmplt 37
        end local 13 // int i
        40: .line 3426
            iload 11 /* multiline */
            ifeq 43
        41: .line 3427
            aload 9 /* sb */
            ldc "-..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        42: .line 3428
            goto 44
        43: .line 3429
      StackMap locals:
      StackMap stack:
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        44: .line 3432
      StackMap locals:
      StackMap stack:
            aload 3 /* toDisplay */
            aload 9 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 3434
            aload 0 /* this */
            ldc "printDiagnostics start-pos = %d ==> %d -- wrap = %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            iload 10 /* start */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        46: .line 3435
            aload 0 /* this */
            ldc "Code: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getCode:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        47: .line 3436
            aload 0 /* this */
            ldc "Pos: %d (%d - %d)"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
        48: .line 3437
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
        49: .line 3436
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        50: .line 3438
            return
        end local 12 // int end
        end local 11 // boolean multiline
        end local 10 // int start
        end local 9 // java.lang.StringBuilder sb
        end local 8 // int pendl
        end local 7 // int pstartl
        end local 6 // java.util.regex.Matcher m
        end local 5 // int pend
        end local 4 // int pstart
        end local 3 // java.util.List toDisplay
        end local 2 // jdk.jshell.Diag diag
        end local 1 // java.lang.String source
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   51     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0   51     1     source  Ljava/lang/String;
            0   51     2       diag  Ljdk/jshell/Diag;
            0   51     3  toDisplay  Ljava/util/List<Ljava/lang/String;>;
            2    4     4       line  Ljava/lang/String;
            7   51     4     pstart  I
            8   51     5       pend  I
            9   51     6          m  Ljava/util/regex/Matcher;
           10   51     7    pstartl  I
           11   51     8      pendl  I
           21   51     9         sb  Ljava/lang/StringBuilder;
           22   51    10      start  I
           23   27    11          i  I
           31   51    11  multiline  Z
           34   51    12        end  I
           36   40    13          i  I
    Signature: (Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
           Name  Flags
      source     
      diag       
      toDisplay  

  boolean processSource(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String source
         0: .line 3447
            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 3448
            iconst_0
            istore 2 /* failed */
        start local 2 // boolean failed
         2: .line 3449
            iconst_0
            istore 3 /* isActive */
        start local 3 // boolean isActive
         3: .line 3450
            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 3451
            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 3453
            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 3457
            iload 3 /* isActive */
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 10
         8: .line 3458
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 10
         9: .line 3459
            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 3451
      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 3463
            iload 3 /* isActive */
            ifeq 15
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifeq 15
        14: .line 3464
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        15: .line 3467
      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 3472
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 2 /* sn */
        start local 2 // jdk.jshell.Snippet sn
         1: .line 3473
            aload 2 /* sn */
            ifnonnull 4
         2: .line 3474
            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 3475
            iconst_0
            ireturn
         4: .line 3477
      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 3478
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 4 /* source */
        start local 4 // java.lang.String source
         6: .line 3479
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 18
         7: .line 3481
            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 3483
            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 3484
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 12
        10: .line 3485
            aload 0 /* this */
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayException:(Ljava/lang/Exception;)Z
            ifeq 22
        11: .line 3486
            iconst_1
            ireturn
        12: .line 3489
      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 3490
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        14: .line 3492
            goto 22
        15: .line 3493
      StackMap locals:
      StackMap stack:
            aload 3 /* diagnostics */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 17
        16: .line 3494
            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 3496
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        18: .line 3500
      StackMap locals:
      StackMap stack:
            aload 2 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 22
        19: .line 3501
            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 3504
            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 3505
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        end local 5 // java.util.List other
        22: .line 3508
      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[]);
    descriptor: ([Ljava/lang/StackTraceElement;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=11, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.StackTraceElement[] stes
         0: .line 3512
            aload 1 /* stes */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 26
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.StackTraceElement[] top int int java.lang.StackTraceElement[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* ste */
        start local 2 // java.lang.StackTraceElement ste
         2: .line 3513
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         3: .line 3514
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
            astore 7 /* cn */
        start local 7 // java.lang.String cn
         4: .line 3515
            aload 7 /* cn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 11
         5: .line 3516
            aload 7 /* cn */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* dot */
        start local 8 // int dot
         6: .line 3517
            iload 8 /* dot */
            ifle 9
         7: .line 3518
            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
         8: .line 3519
            goto 10
         9: .line 3520
      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
        10: .line 3522
      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
        11: .line 3524
      StackMap locals:
      StackMap stack:
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 14
        12: .line 3525
            aload 6 /* sb */
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 3526
            aload 6 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 3528
      StackMap locals:
      StackMap stack:
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getFileName:()Ljava/lang/String;
            astore 8 /* fileName */
        start local 8 // java.lang.String fileName
        15: .line 3529
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getLineNumber:()I
            istore 9 /* lineNumber */
        start local 9 // int lineNumber
        16: .line 3530
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.isNativeMethod:()Z
            ifeq 18
        17: .line 3531
            aload 0 /* this */
            ldc "jshell.msg.native.method"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            goto 23
        18: .line 3532
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 8 /* fileName */
            ifnonnull 20
        19: .line 3533
            aload 0 /* this */
            ldc "jshell.msg.unknown.source"
            invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
            goto 23
        20: .line 3534
      StackMap locals:
      StackMap stack:
            iload 9 /* lineNumber */
            iflt 22
        21: .line 3535
            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 23
        22: .line 3536
      StackMap locals:
      StackMap stack:
            aload 8 /* fileName */
        23: .line 3530
      StackMap locals:
      StackMap stack: java.lang.String
            astore 10 /* loc */
        start local 10 // java.lang.String loc
        24: .line 3537
            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 2 // java.lang.StackTraceElement ste
        25: .line 3512
            iinc 3 1
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.StackTraceElement[] top int int java.lang.StackTraceElement[]
      StackMap stack:
        26: iload 3
            iload 4
            if_icmplt 1
        27: .line 3540
            return
        end local 1 // java.lang.StackTraceElement[] stes
        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        stes  [Ljava/lang/StackTraceElement;
            2   25     2         ste  Ljava/lang/StackTraceElement;
            3   25     6          sb  Ljava/lang/StringBuilder;
            4   25     7          cn  Ljava/lang/String;
            6   11     8         dot  I
           15   25     8    fileName  Ljava/lang/String;
           16   25     9  lineNumber  I
           24   25    10         loc  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      stes  

  void printUnresolvedException(jdk.jshell.UnresolvedReferenceException);
    descriptor: (Ljdk/jshell/UnresolvedReferenceException;)V
    flags: (0x0000) 
    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 3543
            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 3544
            return
        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    

  void printEvalException(jdk.jshell.EvalException);
    descriptor: (Ljdk/jshell/EvalException;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.EvalException ex
         0: .line 3547
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            ifnonnull 3
         1: .line 3548
            aload 0 /* this */
            ldc "%s thrown"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getExceptionClassName:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 3549
            goto 4
         3: .line 3550
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "%s thrown: %s"
            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 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.error:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 3552
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getStackTrace:()[Ljava/lang/StackTraceElement;
            invokevirtual jdk.internal.jshell.tool.JShellTool.printStackTrace:([Ljava/lang/StackTraceElement;)V
         5: .line 3553
            return
        end local 1 // jdk.jshell.EvalException ex
        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    ex  Ljdk/jshell/EvalException;
    MethodParameters:
      Name  Flags
      ex    

  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 3557
            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 3561
      StackMap locals:
      StackMap stack:
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 7
         2: .line 3562
            iload 3 /* isSignatureChange */
            ifeq 4
         3: .line 3563
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.REPLACED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            goto 5
         4: .line 3564
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.MODIFIED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
         5: .line 3562
      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 3565
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         7: .line 3566
      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 3568
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         9: .line 3570
      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 3571
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        11: .line 3573
      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 3574
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        13: .line 3579
      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 3580
            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 3582
      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 3586
            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 3587
            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 3588
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
         3: .line 3589
            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 3761
            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 3767
            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 3771
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            ifnonnull 5
         1: .line 3773
            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 3774
            goto 5
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 3775
            ldc "(version info not available)"
            areturn
         5: .line 3779
      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 3781
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
            pop
         8: .line 3782
            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 2464
            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 2472
            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 136
            getstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.jshell.Snippet$SubKind.values:()[Ljdk/jshell/Snippet$SubKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ANNOTATION_TYPE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 8
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ASSIGNMENT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 14
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.jshell.Snippet$SubKind.CLASS_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.jshell.Snippet$SubKind.ENUM_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.jshell.Snippet$SubKind.INTERFACE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.jshell.Snippet$SubKind.METHOD_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 9
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.jshell.Snippet$SubKind.OTHER_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 15
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.jshell.Snippet$SubKind.SINGLE_STATIC_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_3
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.jshell.Snippet$SubKind.SINGLE_TYPE_IMPORT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_1
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.jshell.Snippet$SubKind.STATEMENT_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 16
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.jshell.Snippet$SubKind.STATIC_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_4
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic jdk.jshell.Snippet$SubKind.TEMP_VAR_EXPRESSION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 12
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic jdk.jshell.Snippet$SubKind.TYPE_IMPORT_ON_DEMAND_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iconst_2
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic jdk.jshell.Snippet$SubKind.UNKNOWN_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 17
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_DECLARATION_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 10
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_DECLARATION_WITH_INITIALIZER_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 11
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic jdk.jshell.Snippet$SubKind.VAR_VALUE_SUBKIND:Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            bipush 13
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            dup
            putstatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$jdk$jshell$Snippet$Status();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 136
            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 1467
            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 1758
            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 1761
            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 1763
            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 1765
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 1768
      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 1769
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            iload 2 /* c */
            iadd
            aload 3 /* a */
         4: .line 1768
            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 1770
            aload 3 /* a */
            iconst_0
            dup2
            iaload
            ldc "int $$exit$$ = "
            invokevirtual java.lang.String.length:()I
            isub
            iastore
         6: .line 1771
            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 1775
            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 1778
            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$22(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 1784
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:()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 1814
            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 1821
            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 1826
            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 1847
            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 1848
            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 1848
            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 869
            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 1054
            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 1055
            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 1056
      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 1057
      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 1065
            aload 1 /* deadState */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            if_acmpne 4
         1: .line 1066
            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 1067
            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 1068
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         4: .line 1070
      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 1217
            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 1320
            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 1342
            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 1356
            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 1482
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
         1: .line 1484
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* space */
        start local 5 // int space
         2: .line 1485
            iload 5 /* space */
            iconst_m1
            if_icmpeq 6
         3: .line 1486
            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 1487
            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 1488
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* space */
            iconst_1
            iadd
            iadd
            iastore
        end local 6 // java.lang.String rest
         6: .line 1491
      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 1497
            aload 1 /* code */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastSlash */
        start local 4 // int lastSlash
         1: .line 1498
            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 1499
            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 1500
            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 1501
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
         7: .line 1502
            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 1503
            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 1504
            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 1505
            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 1506
            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 1509
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        20: .line 1510
            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 1511
            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 1512
            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 1513
            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 1514
            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 1516
      StackMap locals:
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            aload 5 /* path */
            invokevirtual java.lang.String.length:()I
            iastore
        26: .line 1517
            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 1522
            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 1523
            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 1524
            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 1530
            aload 3 /* anchor */
            iconst_0
            iconst_0
            iastore
         1: .line 1531
            aload 1 /* prefix */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1532
            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 1533
            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 1534
      StackMap locals: int java.util.Set
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         5: .line 1536
      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 1537
            aload 0
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
         7: .line 1538
            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 1541
            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 1544
            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 1545
            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 1546
            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 1537
            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 1554
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         1: .line 1555
            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 1556
            iload 7 /* pastSpace */
            ifne 4
         3: .line 1557
            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 1559
      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 1560
            aload 5 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
         6: .line 1561
            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 1569
            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 1570
            iload 5 /* pastSpace */
            ifne 13
         2: .line 1574
            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 1575
            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 1576
            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 1577
            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 1580
            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 1575
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        10: .line 1581
            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 1575
            astore 4 /* result */
        end local 6 // boolean noslash
        start local 4 // java.util.List result
        12: .line 1582
            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 1583
      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 1584
            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 1583
            astore 4 /* result */
        start local 4 // java.util.List result
        17: .line 1585
            goto 19
        end local 4 // java.util.List result
        18: .line 1586
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
        19: .line 1588
      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 1589
            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 1595
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.List result
         1: .line 1596
            aload 0 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1597
            iload 4 /* space */
            iconst_m1
            if_icmpne 4
         3: .line 1598
            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 1600
      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 1601
            aload 2 /* anchor */
            iconst_0
            dup2
            iaload
            iload 4 /* space */
            iconst_1
            iadd
            iadd
            iastore
         6: .line 1602
            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 1609
            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 1610
            aload 4 /* ovm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
         2: .line 1611
            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 1612
            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 1613
            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 1614
            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 1615
            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 1612
            astore 6 /* ps */
        start local 6 // java.util.List ps
         8: .line 1616
            aload 6 /* ps */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 15
         9: .line 1617
            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 1618
            aload 6 /* ps */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
        11: .line 1619
            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 1618
            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 1620
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        14: .line 1621
            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 1624
      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 1625
            aload 5 /* om */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 29
        17: .line 1626
            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 1627
            aload 0
        19: .line 1628
            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 1627
            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 1629
            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 1630
            aload 7 /* result */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        23: .line 1631
            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 1642
            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 1630
            astore 7 /* result */
        26: .line 1643
            iinc 6 /* pastSpace */ -1
        27: .line 1645
      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 1646
            aload 7 /* result */
            areturn
        end local 7 // java.util.List result
        end local 6 // int pastSpace
        29: .line 1648
      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 1649
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 37
        31: .line 1650
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        32: .line 1651
            aload 0
        33: .line 1652
            ldc ""
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        34: .line 1651
            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 1653
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        36: .line 1654
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        37: .line 1656
      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 1673
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 5 /* leftAnchor */
        start local 5 // int[] leftAnchor
         1: .line 1674
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 6 /* rightAnchor */
        start local 6 // int[] rightAnchor
         2: .line 1676
            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 1677
            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 1679
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* suggestions */
        start local 9 // java.util.List suggestions
         5: .line 1681
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmplt 8
         6: .line 1682
            aload 4 /* anchor */
            iconst_0
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            iastore
         7: .line 1683
            aload 9 /* suggestions */
            aload 7 /* leftSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 1686
      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 1687
            aload 4 /* anchor */
            iconst_0
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            iastore
        10: .line 1688
            aload 9 /* suggestions */
            aload 8 /* rightSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 1691
      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 1703
            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 1708
            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 1709
            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 1714
            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 1715
            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 1720
            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 1721
            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 1872
            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 1873
            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 1885
            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 1886
            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 1887
            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 1888
            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 1889
            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 1890
            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 1943
            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 1958
            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 1973
            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 2364
            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 2365
            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 2390
            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 2403
            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 2404
            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 2405
            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 2409
            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 2410
            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 2411
            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 2421
            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 2779
            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 2791
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 3 /* src */
        start local 3 // java.lang.String src
         1: .line 2792
            invokestatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:()[I
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iaload
            tableswitch { // 12 - 17
                   12: 3
                   13: 2
                   14: 3
                   15: 3
                   16: 7
                   17: 3
              default: 14
          }
         2: .line 2794
      StackMap locals: java.lang.String
      StackMap stack:
            goto 15
         3: .line 2799
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 5
         4: .line 2800
            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 2802
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 2803
            goto 15
         7: .line 2805
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc "}"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 10
         8: .line 2808
            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 2809
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2810
            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 2812
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2813
            goto 15
        14: .line 2815
      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 2818
      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 2826
            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 2835
            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 2836
            aload 1
            iconst_0
            aload 3 /* s */
            aastore
         2: .line 2837
            goto 4
         3: .line 2838
      StackMap locals:
      StackMap stack:
            aload 2
            aload 3 /* s */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 2840
      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 2843
            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 2844
            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 2846
            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 2949
            aload 1
            iconst_0
            baload
            ifne 3
         1: .line 2950
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         2: .line 2951
            aload 1
            iconst_0
            iconst_1
            bastore
         3: .line 2953
      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 2954
            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 3148
            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 3214
            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 3215
            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 3216
      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 3214
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* val */
        start local 2 // java.lang.String val
         4: .line 3217
            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 3218
            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 3229
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.signature:()Ljava/lang/String;
            astore 2 /* sig */
        start local 2 // java.lang.String sig
         1: .line 3230
            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 3231
            iload 3 /* i */
            ifgt 5
         3: .line 3232
            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 3233
            goto 6
         5: .line 3234
      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 3236
      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 3237
            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 3250
            invokestatic jdk.internal.jshell.tool.JShellTool.$SWITCH_TABLE$jdk$jshell$Snippet$SubKind:()[I
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual jdk.jshell.Snippet$SubKind.ordinal:()I
            iaload
            tableswitch { // 5 - 8
                    5: 3
                    6: 1
                    7: 5
                    8: 7
              default: 9
          }
         1: .line 3252
      StackMap locals:
      StackMap stack:
            ldc "interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         2: .line 3253
            goto 11
        end local 2 // java.lang.String kind
         3: .line 3255
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         4: .line 3256
            goto 11
        end local 2 // java.lang.String kind
         5: .line 3258
      StackMap locals:
      StackMap stack:
            ldc "enum"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         6: .line 3259
            goto 11
        end local 2 // java.lang.String kind
         7: .line 3261
      StackMap locals:
      StackMap stack:
            ldc "@interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         8: .line 3262
            goto 11
        end local 2 // java.lang.String kind
         9: .line 3264
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.JShellTool.$assertionsDisabled:Z
            ifne 10
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Wrong kind"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.subKind:()Ljdk/jshell/Snippet$SubKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        10: .line 3265
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        11: .line 3268
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "  %s %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* kind */
            aastore
            dup
            iconst_1
            aload 1 /* ck */
            invokevirtual jdk.jshell.TypeDeclSnippet.name:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 3269
            aload 0 /* this */
            aload 1 /* ck */
            iconst_1
            invokevirtual jdk.internal.jshell.tool.JShellTool.printSnippetStatus:(Ljdk/jshell/DeclarationSnippet;Z)V
        end local 2 // java.lang.String kind
        13: .line 3270
            return
        end local 1 // jdk.jshell.TypeDeclSnippet ck
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0   14     1    ck  Ljdk/jshell/TypeDeclSnippet;
            2    3     2  kind  Ljava/lang/String;
            4    5     2  kind  Ljava/lang/String;
            6    7     2  kind  Ljava/lang/String;
            8    9     2  kind  Ljava/lang/String;
           11   13     2  kind  Ljava/lang/String;

  private void lambda$127(jdk.jshell.ImportSnippet);
    descriptor: (Ljdk/jshell/ImportSnippet;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.ImportSnippet ik
         0: .line 3276
            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 3277
            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 3321
            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 3324
            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 3377
            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 1503
            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 1504
            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 1511
            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 1512
            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 1513
            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 1538
            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 1539
            aload 1 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         2: .line 1540
            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 1541
            aload 0 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 2
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 1542
            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 1543
      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 1544
            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 1576
            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 1577
            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 1578
            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 1579
      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 1577
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1579
            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 1613
            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 1614
            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 1631
            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 1641
            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