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

  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 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 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"

  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 126
            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 128
            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 193
            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;
         5: .line 202
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
         6: .line 203
            ldc "JSHELLEDITOR"
            aastore
            dup
            iconst_1
            ldc "VISUAL"
            aastore
            dup
            iconst_2
            ldc "EDITOR"
            aastore
         7: .line 202
            putstatic jdk.internal.jshell.tool.JShellTool.EDITOR_ENV_VARS:[Ljava/lang/String;
         8: .line 215
            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;
         9: .line 220
            ldc "\\s*(\\S+\\s+)*?"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
        10: .line 219
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PRE_PATTERN:Ljava/util/regex/Pattern;
        11: .line 223
            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;
        12: .line 222
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_PATTERN:Ljava/util/regex/Pattern;
        13: .line 226
            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;
        14: .line 225
            putstatic jdk.internal.jshell.tool.JShellTool.OPTION_VALUE_PATTERN:Ljava/util/regex/Pattern;
        15: .line 1338
            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;
        16: .line 1339
            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;
        17: .line 1340
            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;
        18: .line 1341
            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;
        19: .line 1342
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        20: .line 1343
            ldc "-class-path "
            aastore
            dup
            iconst_1
            ldc "-module-path "
            aastore
            dup
            iconst_2
            ldc "-add-modules "
            aastore
            dup
            iconst_3
            ldc "-add-exports "
        21: .line 1342
            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;
        22: .line 1344
            new jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider
            dup
        23: .line 1345
            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
        24: .line 1346
            ldc "-restore "
            aastore
            dup
            iconst_1
            ldc "-quiet "
        25: .line 1344
            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;
        26: .line 1347
            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;
        27: .line 1348
            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;
        28: .line 1349
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic jdk.internal.jshell.tool.JShellTool.ARG_OPTIONS:Ljava/util/Map;
        29: .line 1351
            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
        30: .line 1352
            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$128(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
        31: .line 1353
            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
        32: .line 1354
            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
        33: .line 1750
            bipush 7
            anewarray java.lang.String
            dup
            iconst_0
        34: .line 1751
            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
        35: .line 1750
            putstatic jdk.internal.jshell.tool.JShellTool.SET_SUBCOMMANDS:[Ljava/lang/String;
        36: .line 1751
            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 160
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 145
            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 181
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
         3: .line 182
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
         4: .line 184
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         5: .line 185
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         6: .line 186
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 190
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         8: .line 191
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.shutdownSubscription:Ljdk/jshell/JShell$Subscription;
         9: .line 195
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        10: .line 196
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
        11: .line 197
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
        12: .line 198
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        13: .line 199
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
        14: .line 200
            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;
        15: .line 1356
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
        16: .line 1608
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/list"
        17: .line 1609
            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;
        18: .line 1610
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_HISTORY_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        19: .line 1611
            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;
        20: .line 1610
            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
        21: .line 1608
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        22: .line 1612
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/edit"
        23: .line 1613
            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;
        24: .line 1614
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        25: .line 1615
            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;
        26: .line 1614
            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
        27: .line 1612
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        28: .line 1616
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/drop"
        29: .line 1617
            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;
        30: .line 1618
            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;
        31: .line 1619
            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
        32: .line 1616
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        33: .line 1620
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/save"
        34: .line 1621
            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;
        35: .line 1622
            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
        36: .line 1620
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        37: .line 1623
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/open"
        38: .line 1624
            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;
        39: .line 1625
            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
        40: .line 1623
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        41: .line 1626
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/vars"
        42: .line 1627
            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;
        43: .line 1628
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        44: .line 1629
            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;
        45: .line 1628
            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
        46: .line 1626
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        47: .line 1630
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/methods"
        48: .line 1631
            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;
        49: .line 1632
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        50: .line 1633
            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;
        51: .line 1632
            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
        52: .line 1630
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        53: .line 1634
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/types"
        54: .line 1635
            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;
        55: .line 1636
            aload 0 /* this */
            getstatic jdk.internal.jshell.tool.JShellTool.SNIPPET_OPTION_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        56: .line 1637
            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;
        57: .line 1636
            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
        58: .line 1634
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        59: .line 1638
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/imports"
        60: .line 1639
            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;
        61: .line 1640
            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
        62: .line 1638
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        63: .line 1641
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/exit"
        64: .line 1642
            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;
        65: .line 1643
            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
        66: .line 1641
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        67: .line 1644
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/env"
        68: .line 1645
            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$18(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        69: .line 1646
            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
        70: .line 1644
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        71: .line 1647
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reset"
        72: .line 1648
            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;
        73: .line 1649
            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
        74: .line 1647
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        75: .line 1650
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/reload"
        76: .line 1651
            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;
        77: .line 1652
            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
        78: .line 1650
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        79: .line 1653
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/history"
        80: .line 1654
            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$21(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
        81: .line 1655
            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
        82: .line 1653
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        83: .line 1656
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/debug"
        84: .line 1657
            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;
        85: .line 1658
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
        86: .line 1659
            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
        87: .line 1656
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        88: .line 1660
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/help"
        89: .line 1661
            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;
        90: .line 1662
            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
        91: .line 1660
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
        92: .line 1663
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/set"
        93: .line 1664
            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;
        94: .line 1665
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
        95: .line 1667
            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;
        96: .line 1668
            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;
        97: .line 1669
            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;
        98: .line 1670
            ldc "mode"
        99: .line 1671
            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;
       100: .line 1672
            getstatic jdk.internal.jshell.tool.JShellTool.SET_MODE_OPTIONS_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       101: .line 1670
            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;
       102: .line 1673
            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;
       103: .line 1674
            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;
       104: .line 1675
            ldc "start"
            getstatic jdk.internal.jshell.tool.JShellTool.FILE_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       105: .line 1665
            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;
       106: .line 1676
            getstatic jdk.internal.jshell.tool.ContinuousCompletionProvider.STARTSWITH_MATCHER:Ljava/util/function/BiPredicate;
       107: .line 1665
            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
       108: .line 1663
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       109: .line 1677
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/?"
       110: .line 1678
            ldc "help.quest"
       111: .line 1679
            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;
       112: .line 1680
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.helpCompletion:()Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       113: .line 1681
            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
       114: .line 1677
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       115: .line 1682
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/!"
       116: .line 1683
            ldc "help.bang"
       117: .line 1684
            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$27(Ljava/lang/String;)Ljava/lang/Boolean; (7)
                  (Ljava/lang/String;)Ljava/lang/Boolean;
       118: .line 1685
            getstatic jdk.internal.jshell.tool.JShellTool.EMPTY_COMPLETION_PROVIDER:Ljdk/internal/jshell/tool/JShellTool$CompletionProvider;
       119: .line 1686
            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
       120: .line 1682
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       121: .line 1689
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/<id>"
       122: .line 1690
            ldc "help.id"
       123: .line 1691
            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;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       124: .line 1689
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       125: .line 1692
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "/-<n>"
       126: .line 1693
            ldc "help.previous"
       127: .line 1694
            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;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       128: .line 1692
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       129: .line 1695
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "intro"
       130: .line 1696
            ldc "help.intro"
       131: .line 1697
            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
       132: .line 1695
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       133: .line 1698
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "shortcuts"
       134: .line 1699
            ldc "help.shortcuts"
       135: .line 1700
            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
       136: .line 1698
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       137: .line 1701
            aload 0 /* this */
            new jdk.internal.jshell.tool.JShellTool$Command
            dup
            ldc "context"
       138: .line 1702
            ldc "help.context"
       139: .line 1703
            getstatic jdk.internal.jshell.tool.JShellTool$CommandKind.HELP_SUBJECT:Ljdk/internal/jshell/tool/JShellTool$CommandKind;
            invokespecial jdk.internal.jshell.tool.JShellTool$Command.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$CommandKind;)V
       140: .line 1701
            invokevirtual jdk.internal.jshell.tool.JShellTool.registerCommand:(Ljdk/internal/jshell/tool/JShellTool$Command;)V
       141: .line 1705
            aload 0 /* this */
            new jdk.internal.jshell.tool.ContinuousCompletionProvider
            dup
       142: .line 1706
            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;
       143: .line 1707
            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$28(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;
       144: .line 1708
            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$29(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$30(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
       145: .line 1709
            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
       146: .line 1705
            putfield jdk.internal.jshell.tool.JShellTool.commandCompletions:Ljdk/internal/jshell/tool/ContinuousCompletionProvider;
       147: .line 164
            aload 0 /* this */
            aload 1 /* cmdin */
            putfield jdk.internal.jshell.tool.JShellTool.cmdin:Ljava/io/InputStream;
       148: .line 165
            aload 0 /* this */
            aload 2 /* cmdout */
            putfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
       149: .line 166
            aload 0 /* this */
            aload 3 /* cmderr */
            putfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
       150: .line 167
            aload 0 /* this */
            aload 4 /* console */
            putfield jdk.internal.jshell.tool.JShellTool.console:Ljava/io/PrintStream;
       151: .line 168
            aload 0 /* this */
            aload 5 /* userin */
            ifnull 152
            aload 5 /* userin */
            goto 153
      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
       152: 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
       153: putfield jdk.internal.jshell.tool.JShellTool.userin:Ljava/io/InputStream;
       154: .line 174
            aload 0 /* this */
            aload 6 /* userout */
            putfield jdk.internal.jshell.tool.JShellTool.userout:Ljava/io/PrintStream;
       155: .line 175
            aload 0 /* this */
            aload 7 /* usererr */
            putfield jdk.internal.jshell.tool.JShellTool.usererr:Ljava/io/PrintStream;
       156: .line 176
            aload 0 /* this */
            aload 8 /* prefs */
            putfield jdk.internal.jshell.tool.JShellTool.prefs:Ljdk/internal/jshell/tool/PersistentStorage;
       157: .line 177
            aload 0 /* this */
            aload 9 /* envvars */
            putfield jdk.internal.jshell.tool.JShellTool.envvars:Ljava/util/Map;
       158: .line 178
            aload 0 /* this */
            aload 10 /* locale */
            putfield jdk.internal.jshell.tool.JShellTool.locale:Ljava/util/Locale;
       159: .line 179
            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  160     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0  160     1    cmdin  Ljava/io/InputStream;
            0  160     2   cmdout  Ljava/io/PrintStream;
            0  160     3   cmderr  Ljava/io/PrintStream;
            0  160     4  console  Ljava/io/PrintStream;
            0  160     5   userin  Ljava/io/InputStream;
            0  160     6  userout  Ljava/io/PrintStream;
            0  160     7  usererr  Ljava/io/PrintStream;
            0  160     8    prefs  Ljdk/internal/jshell/tool/PersistentStorage;
            0  160     9  envvars  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0  160    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 642
            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 646
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.debug:Z
            ifeq 2
         1: .line 647
            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 649
      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    

  void rawout(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 658
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            aload 1 /* format */
            aload 2 /* args */
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         1: .line 659
            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    

  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 669
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* format */
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rawout:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 670
            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 679
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* format */
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefixError:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rawout:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 680
            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    

  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 688
            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 699
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 700
            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 702
      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 710
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.outputRB:Ljava/util/ResourceBundle;
            ifnonnull 6
         1: .line 712
            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 713
            goto 6
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 714
            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 715
            ldc ""
            areturn
         6: .line 720
      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 721
            goto 11
        end local 2 // java.lang.String s
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         8: pop
         9: .line 722
            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 723
            ldc ""
            areturn
        start local 2 // java.lang.String s
        11: .line 725
      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 736
            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 747
            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 760
            aload 1 /* s */
            ifnonnull 2
         1: .line 761
            ldc ""
            areturn
         2: .line 763
      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
         3: .line 764
            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 5
         4: .line 767
            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 */
         5: .line 769
      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    6     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    6     1     s  Ljava/lang/String;
            0    6     2   pre  Ljava/lang/String;
            0    6     3  post  Ljava/lang/String;
            3    6     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 778
            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 779
            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 788
            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 789
            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 801
            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 802
            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=5, 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 813
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isRunningInteractive:()Z
            ifeq 3
         1: .line 814
            aload 0 /* this */
            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;
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefixError:(Ljava/lang/String;)Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.rawout:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 815
            goto 4
         3: .line 816
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.startmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 818
      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    5     0  this  Ljdk/internal/jshell/tool/JShellTool;
            0    5     1   key  Ljava/lang/String;
            0    5     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  void startmsg(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 key
        start local 2 // java.lang.Object[] args
         0: .line 827
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmderr:Ljava/io/PrintStream;
            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;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 828
            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 839
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showFluff:()Z
            ifeq 2
         1: .line 840
            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 842
      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 845
            aload 1 /* stream */
            aload 2 /* a */
            aload 3 /* b */
         1: .line 846
            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$31(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         2: .line 847
            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 845
            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 848
            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 849
            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 850
            aload 0 /* this */
            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 jdk.internal.jshell.tool.JShellTool.rawout:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 5 // java.util.Map$Entry e
         8: .line 848
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 852
            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 861
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* last */
        start local 1 // int last
         1: .line 862
            iload 1 /* last */
            istore 2 /* i */
        start local 2 // int i
         2: .line 863
            goto 4
         3: .line 864
      StackMap locals: int int
      StackMap stack:
            iinc 2 /* i */ -1
         4: .line 863
      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 866
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 1 /* last */
            if_icmpeq 7
         6: .line 867
            aload 0 /* s */
            iconst_0
            iload 2 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         7: .line 869
      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 void start(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    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 880
            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 881
            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 882
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
            ifnonnull 4
         3: .line 884
            return
         4: .line 886
      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 888
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.configEditor:()Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            pop
         6: .line 891
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         7: .line 892
            goto 11
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         8: astore 3 /* ex */
        start local 3 // java.lang.IllegalStateException ex
         9: .line 894
            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 896
            return
        end local 3 // java.lang.IllegalStateException ex
        11: .line 899
      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 901
            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 15
      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 902
            aload 0 /* this */
            aload 3 /* loadFile */
            ldc "jshell"
            invokevirtual jdk.internal.jshell.tool.JShellTool.runFile:(Ljava/lang/String;Ljava/lang/String;)Z
            pop
        end local 3 // java.lang.String loadFile
        15: .line 901
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        16: .line 905
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifeq 18
        17: .line 907
            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
        18: .line 910
      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 48
        19: .line 912
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            invokevirtual jdk.internal.jshell.tool.Feedback.shouldDisplayCommandFluff:()Z
            ifeq 21
        20: .line 913
            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
        21: .line 916
      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
        22: .line 922
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        23: .line 924
            aconst_null
            astore 4
            aconst_null
            astore 5
        24: 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
        25: .line 925
            goto 29
        26: .line 926
      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 28
        27: .line 927
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        28: .line 929
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        29: .line 925
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
            ifne 26
        30: .line 931
            aload 6 /* in */
            ifnull 43
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
            goto 43
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: astore 4
            aload 6 /* in */
            ifnull 32
            aload 6 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.close:()V
        end local 6 // jdk.internal.jshell.tool.IOContext in
      StackMap locals:
      StackMap stack:
        32: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 5
            aload 4
            ifnonnull 34
            aload 5
            astore 4
            goto 35
      StackMap locals:
      StackMap stack:
        34: aload 4
            aload 5
            if_acmpeq 35
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        35: 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
        36: astore 7
        37: .line 932
            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
        38: .line 933
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        39: .line 935
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        40: .line 936
            goto 42
      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
        41: pop
        42: .line 940
      StackMap locals:
      StackMap stack:
            aload 7
            athrow
        43: .line 932
      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
        44: .line 933
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        45: .line 935
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 3 /* shutdownHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        46: .line 936
            goto 48
      StackMap locals:
      StackMap stack: java.lang.Exception
        47: pop
        end local 3 // java.lang.Thread shutdownHook
        48: .line 942
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
        49: .line 943
            return
        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   50     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   50     1             args  [Ljava/lang/String;
            1   50     2  commandLineArgs  Ljdk/internal/jshell/tool/JShellTool$OptionParserCommandLine;
            9   11     3               ex  Ljava/lang/IllegalStateException;
           14   15     3         loadFile  Ljava/lang/String;
           22   48     3     shutdownHook  Ljava/lang/Thread;
           25   32     6               in  Ljdk/internal/jshell/tool/IOContext;
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.IllegalStateException
          25    30      31  any
          24    33      33  any
          23    36      36  any
          39    40      41  Class java.lang.Exception
          45    46      47  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 947
            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 948
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            ifnull 3
         2: .line 949
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.editor:Ljdk/internal/jshell/tool/JShellTool$EditorSetting;
            areturn
         3: .line 952
      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 953
            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 954
            aload 5 /* v */
            ifnull 8
         7: .line 955
            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 952
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 4
        10: .line 959
            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 963
            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 964
            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 967
            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 968
            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 1007
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.closeState:()V
         1: .line 1010
            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 1011
            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 1012
            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 1013
            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 1014
            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 1017
            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 1018
            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 1020
            invokestatic jdk.jshell.JShell.builder:()Ljdk/jshell/JShell$Builder;
         9: .line 1021
            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 1022
            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 1023
            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 1024
            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$33()Ljava/lang/String; (7)
                  ()Ljava/lang/String;
            invokevirtual jdk.jshell.JShell$Builder.tempVariableNameGenerator:(Ljava/util/function/Supplier;)Ljdk/jshell/JShell$Builder;
        13: .line 1025
            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$34(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 1028
            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 1029
            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 1019
            astore 1 /* builder */
        start local 1 // jdk.jshell.JShell$Builder builder
        17: .line 1030
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.executionControlSpec:Ljava/lang/String;
            ifnull 19
        18: .line 1031
            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 1033
      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 1034
            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$35(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 1040
            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 1041
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
        23: .line 1047
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
            ifne 31
        24: .line 1049
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        25: .line 1050
            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 1051
            goto 30
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 2
        28: .line 1052
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        29: .line 1053
            aload 2
            athrow
        30: .line 1052
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.isCurrentlyRunningStartup:Z
        31: .line 1056
      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 1057
            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 boolean isRunningInteractive();
    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 1060
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.currentNameSpace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            ifnull 1
            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.mainNamespace:Ljdk/internal/jshell/tool/JShellTool$NameSpace;
            if_acmpne 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;

  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 1066
            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 1068
            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 1070
            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 1072
            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 1073
            aload 3 /* encoded */
            ifnull 7
            aload 3 /* encoded */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 7
         5: .line 1074
            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 1076
            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 1079
      StackMap locals: jdk.internal.jshell.tool.MessageHandler java.lang.String
      StackMap stack:
            aload 1 /* initMode */
            ifnull 11
         8: .line 1081
            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 14
         9: .line 1082
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        10: .line 1084
            goto 14
        11: .line 1085
      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
        12: .line 1086
            aload 4 /* fb */
            ifnull 14
        13: .line 1089
            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
        14: .line 1092
      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   15     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   15     1  initMode  Ljava/lang/String;
            1   15     2    initmh  Ljdk/internal/jshell/tool/MessageHandler;
            4   15     3   encoded  Ljava/lang/String;
           12   14     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 1096
            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 1097
            aload 0 /* this */
            aload 4 /* suin */
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         3: .line 1098
            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 1099
            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.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        11: .line 1100
            aload 2 /* ex */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        end local 2 // java.lang.Exception ex
        12: .line 1102
      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 1105
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         1: .line 1106
            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 1107
            aload 1 /* oldState */
            ifnull 7
         3: .line 1108
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
         4: .line 1109
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
         5: .line 1110
            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 1111
            aload 1 /* oldState */
            invokevirtual jdk.jshell.JShell.close:()V
         7: .line 1113
      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=9, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.internal.jshell.tool.IOContext in
         0: .line 1120
            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 1121
            aload 0 /* this */
            aload 1 /* in */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
         2: .line 1123
            ldc ""
            astore 3 /* incomplete */
        start local 3 // java.lang.String incomplete
         3: .line 1124
            goto 31
         4: .line 1126
      StackMap locals: jdk.internal.jshell.tool.IOContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isRunningInteractive:()Z
            ifeq 14
         5: .line 1127
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.testPrompt:Z
            ifeq 9
         6: .line 1128
            aload 3 /* incomplete */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 8
         7: .line 1129
            ldc "\u0005"
            goto 12
         8: .line 1130
      StackMap locals:
      StackMap stack:
            ldc "\u0006"
            goto 12
         9: .line 1131
      StackMap locals:
      StackMap stack:
            aload 3 /* incomplete */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
        10: .line 1132
            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 12
        11: .line 1133
      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;
        12: .line 1127
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* prompt */
        start local 4 // java.lang.String prompt
        13: .line 1135
            goto 15
        end local 4 // java.lang.String prompt
        14: .line 1136
      StackMap locals:
      StackMap stack:
            ldc ""
            astore 4 /* prompt */
        start local 4 // java.lang.String prompt
        15: .line 1140
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* in */
            aload 4 /* prompt */
            aload 3 /* incomplete */
            invokevirtual jdk.internal.jshell.tool.IOContext.readLine:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* raw */
        start local 5 // java.lang.String raw
        16: .line 1141
            goto 20
        end local 5 // java.lang.String raw
      StackMap locals:
      StackMap stack: jdk.internal.jshell.tool.IOContext$InputInterruptedException
        17: pop
        18: .line 1143
            ldc ""
            astore 3 /* incomplete */
        19: .line 1144
            goto 31
        start local 5 // java.lang.String raw
        20: .line 1146
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* raw */
            ifnonnull 24
        21: .line 1148
            aload 1 /* in */
            invokevirtual jdk.internal.jshell.tool.IOContext.interactiveOutput:()Z
            ifeq 39
        22: .line 1150
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
        23: .line 1152
            goto 39
        24: .line 1154
      StackMap locals:
      StackMap stack:
            aload 5 /* raw */
            invokestatic jdk.internal.jshell.tool.JShellTool.trimEnd:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* trimmed */
        start local 6 // java.lang.String trimmed
        25: .line 1155
            aload 6 /* trimmed */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 26
            aload 3 /* incomplete */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 31
        26: .line 1156
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* incomplete */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* trimmed */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* line */
        start local 7 // java.lang.String line
        27: .line 1159
            aload 3 /* incomplete */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 30
            aload 7 /* line */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 30
            aload 7 /* line */
            ldc "//"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 30
            aload 7 /* line */
            ldc "/*"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 30
        28: .line 1160
            aload 0 /* this */
            aload 7 /* line */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.processCommand:(Ljava/lang/String;)V
        29: .line 1161
            goto 31
        30: .line 1162
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 7 /* line */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* incomplete */
        end local 7 // java.lang.String line
        end local 6 // java.lang.String trimmed
        end local 5 // java.lang.String raw
        end local 4 // java.lang.String prompt
        31: .line 1124
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.IOContext jdk.internal.jshell.tool.IOContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifne 4
        end local 3 // java.lang.String incomplete
        32: .line 1166
            goto 39
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.internal.jshell.tool.IOContext jdk.internal.jshell.tool.IOContext
      StackMap stack: java.io.IOException
        33: astore 3 /* ex */
        start local 3 // java.io.IOException ex
        34: .line 1167
            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
        35: .line 1169
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
            goto 40
        36: .line 1168
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        37: .line 1169
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        38: .line 1170
            aload 8
            athrow
        39: .line 1169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oldInput */
            putfield jdk.internal.jshell.tool.JShellTool.input:Ljdk/internal/jshell/tool/IOContext;
        40: .line 1171
      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   41     0        this  Ljdk/internal/jshell/tool/JShellTool;
            0   41     1          in  Ljdk/internal/jshell/tool/IOContext;
            1   41     2    oldInput  Ljdk/internal/jshell/tool/IOContext;
            3   32     3  incomplete  Ljava/lang/String;
           13   14     4      prompt  Ljava/lang/String;
           15   31     4      prompt  Ljava/lang/String;
           16   17     5         raw  Ljava/lang/String;
           20   31     5         raw  Ljava/lang/String;
           25   31     6     trimmed  Ljava/lang/String;
           27   31     7        line  Ljava/lang/String;
           34   35     3          ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          15    16      17  Class jdk.internal.jshell.tool.IOContext$InputInterruptedException
           2    32      33  Class java.io.IOException
           2    35      36  any
    MethodParameters:
      Name  Flags
      in    

  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 1174
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isRunningInteractive:()Z
            ifeq 2
         1: .line 1175
            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 1177
      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 java.lang.String processSourceCatchingReset(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    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 1181
            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 1182
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSource:(Ljava/lang/String;)Ljava/lang/String;
            astore 3
         2: .line 1188
            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 1182
            aload 3
            areturn
         4: .line 1183
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            pop
         5: .line 1184
            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 1185
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         7: .line 1188
            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 1186
            ldc ""
            areturn
         9: .line 1187
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        10: .line 1188
            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 1189
            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=6, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String cmd
         0: .line 1193
            aload 1 /* cmd */
            ldc "/-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 1196
            aload 0 /* this */
            aload 1 /* cmd */
            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 1197
            return
         3: .line 1198
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         4: .line 1202
      StackMap locals:
      StackMap stack:
            ldc ""
            astore 2 /* arg */
        start local 2 // java.lang.String arg
         5: .line 1203
            aload 1 /* cmd */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 3 /* idx */
        start local 3 // int idx
         6: .line 1204
            iload 3 /* idx */
            ifle 9
         7: .line 1205
            aload 1 /* cmd */
            iload 3 /* idx */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 2 /* arg */
         8: .line 1206
            aload 1 /* cmd */
            iconst_0
            iload 3 /* idx */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* cmd */
         9: .line 1208
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* 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$36(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 4 /* candidates */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] candidates
        10: .line 1209
            aload 4 /* candidates */
            arraylength
            tableswitch { // 0 - 1
                    0: 11
                    1: 15
              default: 19
          }
        11: .line 1211
      StackMap locals: jdk.internal.jshell.tool.JShellTool$Command[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cmd */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunHistoryEntryById:(Ljava/lang/String;)Z
            ifne 23
        12: .line 1212
            aload 0 /* this */
            ldc "jshell.err.no.such.command.or.snippet.id"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* cmd */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        13: .line 1213
            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
        14: .line 1214
            goto 23
        15: .line 1216
      StackMap locals:
      StackMap stack:
            aload 4 /* candidates */
            iconst_0
            aaload
            astore 5 /* command */
        start local 5 // jdk.internal.jshell.tool.JShellTool$Command command
        16: .line 1218
            aload 5 /* command */
            getfield jdk.internal.jshell.tool.JShellTool$Command.run:Ljava/util/function/Function;
            aload 2 /* arg */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 23
            aload 5 /* 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 23
        17: .line 1219
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 5 /* 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 2 /* 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
        18: .line 1220
            goto 23
        end local 5 // jdk.internal.jshell.tool.JShellTool$Command command
        19: .line 1222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.command.ambiguous"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* cmd */
            aastore
            dup
            iconst_1
        20: .line 1223
            aload 4 /* 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$37(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
        21: .line 1222
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 1224
            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
        23: .line 1227
      StackMap locals:
      StackMap stack:
            return
        end local 4 // jdk.internal.jshell.tool.JShellTool$Command[] candidates
        end local 3 // int idx
        end local 2 // java.lang.String arg
        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;
            5   24     2         arg  Ljava/lang/String;
            6   24     3         idx  I
           10   24     4  candidates  [Ljdk/internal/jshell/tool/JShellTool$Command;
           16   19     5     command  Ljdk/internal/jshell/tool/JShellTool$Command;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      cmd   

  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 1230
            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 1231
            aload 3 /* exact */
            ifnull 3
         2: .line 1232
            iconst_1
            anewarray jdk.internal.jshell.tool.JShellTool$Command
            dup
            iconst_0
            aload 3 /* exact */
            aastore
            areturn
         3: .line 1234
      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 1235
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 1236
            aload 2 /* filter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 1237
            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$38(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 1238
            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$39(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 1234
            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 1242
            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 1243
            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 1245
      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 1358
            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 1359
            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 1362
            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$40(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 1377
            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$41(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 1403
            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
            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 1410
            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$50(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 1434
            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$55(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 1448
            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$56(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 1475
            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$60(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 1489
            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$61(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 1543
            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 1548
            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 1553
            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$65(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 1579
            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 1583
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1584
            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$66(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 1583
            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 1588
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1589
            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$67(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 1590
            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/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 1588
            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 1594
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1595
            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$69(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 1596
            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$70(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 1594
            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 1600
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 1601
            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 1602
            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/TypeDeclSnippet; (6)
                  (Ljdk/jshell/Snippet;)Ljdk/jshell/TypeDeclSnippet;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 1600
            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 1715
            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=10, 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 1719
            aload 1 /* code */
            iconst_0
            iload 2 /* cursor */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* code */
         1: .line 1720
            aload 1 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1721
            iload 4 /* space */
            iconst_m1
            if_icmpeq 3
            aload 1 /* code */
            iconst_0
            iload 4 /* space */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 4
      StackMap locals: int
      StackMap stack:
         3: aload 1 /* code */
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 5 /* prefix */
        start local 5 // java.lang.String prefix
         5: .line 1722
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         6: .line 1725
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.commands:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
         7: .line 1726
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         8: .line 1727
            aload 5 /* 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$73(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;
         9: .line 1728
            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$74(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;
        10: .line 1729
            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$75(Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I (6)
                  (Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I
            invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
        11: .line 1730
            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 1724
            astore 7 /* toShow */
        start local 7 // java.util.List toShow
        13: .line 1732
            aload 7 /* toShow */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 18
        14: .line 1733
            aload 6 /* result */
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 7 /* 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 jdk.internal.jshell.tool.JShellTool$Command
            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
            iload 3 /* shortDescription */
            ifeq 15
            ldc ".summary"
            goto 16
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int java.lang.String java.util.List java.util.List
      StackMap stack: java.util.List jdk.internal.jshell.tool.JShellTool java.lang.StringBuilder
        15: ldc ""
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int 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
        16: 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
        17: .line 1734
            goto 24
        18: .line 1735
      StackMap locals:
      StackMap stack:
            aload 7 /* toShow */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 23
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int java.lang.String java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        19: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 8 /* e */
        start local 8 // java.util.Map$Entry e
        20: .line 1736
            aload 6 /* result */
            new java.lang.StringBuilder
            dup
            aload 8 /* 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 8 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$Command
            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
            iload 3 /* shortDescription */
            ifeq 21
            ldc ".summary"
            goto 22
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int 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
        21: ldc ""
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int 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
        22: 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 8 // java.util.Map$Entry e
        23: .line 1735
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int java.lang.String java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        24: .line 1740
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int java.lang.String java.util.List java.util.List
      StackMap stack:
            aload 6 /* result */
            areturn
        end local 7 // java.util.List toShow
        end local 6 // java.util.List result
        end local 5 // java.lang.String prefix
        end local 4 // int space
        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   25     0              this  Ljdk/internal/jshell/tool/JShellTool;
            0   25     1              code  Ljava/lang/String;
            0   25     2            cursor  I
            0   25     3  shortDescription  Z
            2   25     4             space  I
            5   25     5            prefix  Ljava/lang/String;
            6   25     6            result  Ljava/util/List<Ljava/lang/String;>;
           13   25     7            toShow  Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;>;
           20   23     8                 e  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;
    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 1745
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.stop:()V
         1: .line 1746
            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 1754
            ldc "/set"
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 1755
            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 1756
            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 1757
            aload 4 /* which */
            ifnonnull 5
         4: .line 1758
            iconst_0
            ireturn
         5: .line 1760
      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 1762
      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 1763
            iconst_0
            ireturn
        17: .line 1767
      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 1768
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        19: .line 1769
            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 1770
            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 1771
            iconst_1
            ireturn
        22: .line 1774
      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 1776
      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 1778
      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 1780
      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 1781
            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$76(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
        27: .line 1780
            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 1783
      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 1785
      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 1787
      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 1789
      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 1790
            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 1795
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.feedback:Ljdk/internal/jshell/tool/Feedback;
            aload 1 /* messageHandler */
            aload 2 /* at */
         1: .line 1796
            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$77(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
         2: .line 1795
            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 1802
            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 1803
            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 1804
            aload 4 /* sub */
            ifnonnull 7
         3: .line 1806
            aload 2 /* at */
            ldc "-retain"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 1807
            ldc "_retain"
            goto 6
         5: .line 1808
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "_blank"
         6: .line 1806
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
         7: .line 1810
      StackMap locals:
      StackMap stack:
            aload 3 /* subs */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         8: .line 1811
            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$78(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 1812
            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$79(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 1810
            astore 5 /* matches */
        start local 5 // java.lang.String[] matches
        11: .line 1813
            aload 5 /* matches */
            arraylength
            ifne 17
        12: .line 1815
            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 1816
            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 1817
            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 1816
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 1819
            aconst_null
            areturn
        17: .line 1821
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 5 /* matches */
            arraylength
            iconst_1
            if_icmple 23
        18: .line 1823
            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 1824
            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 1825
            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 1824
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 1827
            aconst_null
            areturn
        23: .line 1829
      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 1999
            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 2000
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fns */
        start local 2 // java.util.List fns
         2: .line 2001
            goto 4
         3: .line 2002
      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 2001
      StackMap locals:
      StackMap stack:
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            ifnonnull 3
         5: .line 2004
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 7
         6: .line 2005
            iconst_0
            ireturn
         7: .line 2007
      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 2008
            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 2009
            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 2010
            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 2012
            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 2013
            iload 7 /* argCount */
            iconst_1
            if_icmple 23
        21: .line 2014
            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 2015
            iconst_0
            ireturn
        23: .line 2017
      StackMap locals: int
      StackMap stack:
            iload 7 /* argCount */
            ifne 26
            iload 5 /* retainOption */
            ifne 26
        24: .line 2019
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.showSetStart:()V
        25: .line 2020
            iconst_1
            ireturn
        26: .line 2022
      StackMap locals:
      StackMap stack:
            iload 6 /* hasFile */
            ifeq 30
        27: .line 2023
            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 2024
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.startup:Ljdk/internal/jshell/tool/Startup;
            ifnonnull 35
        29: .line 2025
            iconst_0
            ireturn
        30: .line 2027
      StackMap locals:
      StackMap stack:
            iload 3 /* defaultOption */
            ifeq 33
        31: .line 2028
            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 2029
            goto 35
      StackMap locals:
      StackMap stack:
        33: iload 4 /* noneOption */
            ifeq 35
        34: .line 2030
            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 2032
      StackMap locals:
      StackMap stack:
            iload 5 /* retainOption */
            ifeq 37
        36: .line 2034
            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 2036
      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 2042
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2043
            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 2044
            aload 2 /* retained */
            ifnull 14
         3: .line 2045
            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 2046
            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 2047
            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 2048
            iload 4 /* currentDifferent */
            ifeq 10
         9: .line 2049
            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 2051
      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 2052
            iload 4 /* currentDifferent */
            ifeq 16
        12: .line 2053
            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 2055
            goto 16
        14: .line 2056
      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 2057
            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 2059
      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 2060
            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 2063
            aload 1 /* arg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
         1: .line 2064
            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 2065
            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 2066
            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 2067
            goto 46
        11: .line 2068
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* flags */
        start local 2 // int flags
        12: .line 2069
            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 2070
            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 2072
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int int int char[]
      StackMap stack:
            iconst_0
            istore 2 /* flags */
        16: .line 2073
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        17: .line 2074
            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 2075
            goto 43
        19: .line 2077
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.jshell.tool.JShellTool.debug:Z
        20: .line 2078
            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 2079
            goto 43
        22: .line 2081
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_1
            ior
            istore 2 /* flags */
        23: .line 2082
            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 2083
            goto 43
        25: .line 2085
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_2
            ior
            istore 2 /* flags */
        26: .line 2086
            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 2087
            goto 43
        28: .line 2089
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            iconst_4
            ior
            istore 2 /* flags */
        29: .line 2090
            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 2091
            goto 43
        31: .line 2093
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 8
            ior
            istore 2 /* flags */
        32: .line 2094
            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 2095
            goto 43
        34: .line 2097
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 16
            ior
            istore 2 /* flags */
        35: .line 2098
            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 2099
            goto 43
        37: .line 2101
      StackMap locals:
      StackMap stack:
            iload 2 /* flags */
            bipush 32
            ior
            istore 2 /* flags */
        38: .line 2102
            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 2103
            goto 43
        40: .line 2105
      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.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        41: .line 2106
            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 2107
            iconst_0
            ireturn
        end local 3 // char ch
        43: .line 2069
      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 2110
            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 2112
      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();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.JShellTool this
         0: .line 2116
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.regenerateOnDeath:Z
         1: .line 2117
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         2: .line 2118
            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
         3: .line 2119
            iconst_1
            ireturn
        end local 0 // jdk.internal.jshell.tool.JShellTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/internal/jshell/tool/JShellTool;

  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 2123
            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 2124
            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 2125
            aload 3 /* subject */
            ifnull 39
         3: .line 2128
            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 2129
            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$80(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 2131
            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$39(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 2128
            astore 4 /* matches */
        start local 4 // jdk.internal.jshell.tool.JShellTool$Command[] matches
         7: .line 2132
            aload 4 /* matches */
            arraylength
            iconst_1
            if_icmpne 16
         8: .line 2133
            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 2134
            aload 5 /* cmd */
            ldc "/set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 2136
            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 2137
            aload 6 /* which */
            ifnonnull 13
        12: .line 2138
            iconst_0
            ireturn
        13: .line 2140
      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 2141
            aload 0 /* this */
            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.hardrb:(Ljava/lang/String;)V
        15: .line 2142
            iconst_1
            ireturn
        end local 6 // java.lang.String which
        end local 5 // java.lang.String cmd
        16: .line 2146
      StackMap locals:
      StackMap stack:
            aload 4 /* matches */
            arraylength
            ifle 26
        17: .line 2147
            aload 4 /* matches */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 24
      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 2148
            aload 0 /* this */
            ldc ""
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        20: .line 2149
            aload 0 /* this */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.command:Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 2150
            aload 0 /* this */
            ldc ""
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 2151
            aload 0 /* this */
            aload 5 /* c */
            getfield jdk.internal.jshell.tool.JShellTool$Command.helpKey:Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardrb:(Ljava/lang/String;)V
        end local 5 // jdk.internal.jshell.tool.JShellTool$Command c
        23: .line 2147
            iinc 6 1
      StackMap locals:
      StackMap stack:
        24: iload 6
            iload 7
            if_icmplt 18
        25: .line 2153
            iconst_1
            ireturn
        26: .line 2157
      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;
        27: .line 2158
            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$82(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;
        28: .line 2159
            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$79(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[]
        29: .line 2157
            astore 5 /* subs */
        start local 5 // java.lang.String[] subs
        30: .line 2160
            aload 5 /* subs */
            arraylength
            ifle 38
        31: .line 2161
            aload 5 /* subs */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 36
      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:
        32: aload 9
            iload 7
            aaload
            astore 6 /* sub */
        start local 6 // java.lang.String sub
        33: .line 2162
            aload 0 /* this */
            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.hardrb:(Ljava/lang/String;)V
        34: .line 2163
            aload 0 /* this */
            ldc ""
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 6 // java.lang.String sub
        35: .line 2161
            iinc 7 1
      StackMap locals:
      StackMap stack:
        36: iload 7
            iload 8
            if_icmplt 32
        37: .line 2165
            iconst_1
            ireturn
        38: .line 2167
      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
        39: .line 2170
      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
        40: .line 2171
            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;
        41: .line 2172
            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$84(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;
        42: .line 2173
            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$85(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        43: .line 2174
            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$86(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        44: .line 2171
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        45: .line 2176
            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
        46: .line 2177
            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;
        47: .line 2178
            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$87(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;
        48: .line 2179
            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$88(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (6)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        49: .line 2180
            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$89(Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String; (7)
                  (Ljdk/internal/jshell/tool/JShellTool$Command;)Ljava/lang/String;
        50: .line 2177
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardPairs:(Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/util/function/Function;)V
        51: .line 2182
            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   52     0     this  Ljdk/internal/jshell/tool/JShellTool;
            0   52     1      arg  Ljava/lang/String;
            1   52     2       at  Ljdk/internal/jshell/tool/ArgTokenizer;
            2   52     3  subject  Ljava/lang/String;
            7   39     4  matches  [Ljdk/internal/jshell/tool/JShellTool$Command;
            9   16     5      cmd  Ljava/lang/String;
           11   16     6    which  Ljava/lang/String;
           19   23     5        c  Ljdk/internal/jshell/tool/JShellTool$Command;
           30   39     5     subs  [Ljava/lang/String;
           33   35     6      sub  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   

  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 2186
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         1: .line 2187
            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 2189
            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 2187
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 2191
            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 2210
            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 2211
            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 2212
            aload 6 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 5
         4: .line 2213
            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 2210
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 1
         7: .line 2216
            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 2220
            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 2224
            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 2228
            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 2232
            aload 1 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         1: .line 2233
            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 2232
            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=6, locals=8, 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 2248
            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 2249
            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 2250
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* args */
        start local 6 // java.util.List args
         3: .line 2252
            goto 5
        start local 7 // java.lang.String s
         4: .line 2253
      StackMap locals: jdk.internal.jshell.tool.ArgTokenizer java.util.List java.lang.String
      StackMap stack:
            aload 6 /* args */
            aload 7 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String s
         5: .line 2252
      StackMap locals:
      StackMap stack:
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            dup
            astore 7 /* s */
        start local 7 // java.lang.String s
         6: ifnonnull 4
         7: .line 2255
            aload 0 /* this */
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2256
            aconst_null
            areturn
         9: .line 2258
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            ifle 12
            aload 6 /* args */
            invokeinterface java.util.List.size:()I
            ifle 12
        10: .line 2259
            aload 0 /* this */
            ldc "jshell.err.may.not.specify.options.and.snippets"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* 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
        11: .line 2260
            aconst_null
            areturn
        12: .line 2262
      StackMap locals:
      StackMap stack:
            aload 5 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 15
        13: .line 2263
            aload 0 /* this */
            ldc "jshell.err.conflicting.options"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* 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
        14: .line 2264
            aconst_null
            areturn
        15: .line 2266
      StackMap locals:
      StackMap stack:
            aload 5 /* at */
            ldc "-all"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 17
        16: .line 2268
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
            areturn
        17: .line 2270
      StackMap locals:
      StackMap stack:
            aload 5 /* at */
            ldc "-start"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 21
        18: .line 2272
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        19: .line 2273
            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;
        20: .line 2272
            areturn
        21: .line 2275
      StackMap locals:
      StackMap stack:
            aload 6 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 25
        22: .line 2277
            aload 1 /* snippetSupplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
        23: .line 2278
            aload 2 /* defFilter */
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        24: .line 2277
            areturn
        25: .line 2280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* snippetSupplier */
            aload 6 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsToSnippets:(Ljava/util/function/Supplier;Ljava/util/List;)Ljava/util/stream/Stream;
            areturn
        end local 7 // java.lang.String s
        end local 6 // java.util.List args
        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   26     0             this  Ljdk/internal/jshell/tool/JShellTool;
            0   26     1  snippetSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0   26     2        defFilter  Ljava/util/function/Predicate<Ljdk/jshell/Snippet;>;
            0   26     3          rawargs  Ljava/lang/String;
            0   26     4              cmd  Ljava/lang/String;
            1   26     5               at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   26     6             args  Ljava/util/List<Ljava/lang/String;>;
            4    5     7                s  Ljava/lang/String;
            6   26     7                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;>;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> argsToSnippets(java.util.function.Supplier<java.util.stream.Stream<T>>, java.util.List<java.lang.String>);
    descriptor: (Ljava/util/function/Supplier;Ljava/util/List;)Ljava/util/stream/Stream;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.function.Supplier snippetSupplier
        start local 2 // java.util.List args
         0: .line 2294
            aconst_null
            astore 3 /* result */
        start local 3 // java.util.stream.Stream result
         1: .line 2295
            aload 2 /* args */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 17
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.util.function.Supplier java.util.List java.util.stream.Stream top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* arg */
        start local 4 // java.lang.String arg
         3: .line 2297
            aload 0 /* this */
            aload 1 /* snippetSupplier */
            aload 4 /* arg */
            invokevirtual jdk.internal.jshell.tool.JShellTool.layeredSnippetSearch:(Ljava/util/function/Supplier;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 6 /* st */
        start local 6 // java.util.stream.Stream st
         4: .line 2298
            aload 6 /* st */
            ifnonnull 13
         5: .line 2299
            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 4 /* arg */
            invokevirtual jdk.internal.jshell.tool.JShellTool.layeredSnippetSearch:(Ljava/util/function/Supplier;Ljava/lang/String;)Ljava/util/stream/Stream;
            astore 7 /* est */
        start local 7 // java.util.stream.Stream est
         6: .line 2300
            aload 7 /* est */
            ifnonnull 9
         7: .line 2301
            aload 0 /* this */
            ldc "jshell.err.no.such.snippets"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* arg */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 2302
            goto 12
         9: .line 2303
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.util.function.Supplier java.util.List java.util.stream.Stream java.lang.String java.util.Iterator java.util.stream.Stream java.util.stream.Stream
      StackMap stack:
            aload 0 /* this */
            ldc "jshell.err.the.snippet.cannot.be.used.with.this.command"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        10: .line 2304
            aload 4 /* arg */
            aastore
            dup
            iconst_1
            aload 7 /* est */
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast jdk.jshell.Snippet
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            aastore
        11: .line 2303
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 2306
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 7 // java.util.stream.Stream est
        13: .line 2308
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            ifnonnull 16
        14: .line 2309
            aload 6 /* st */
            astore 3 /* result */
        15: .line 2310
            goto 17
        16: .line 2311
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 6 /* st */
            invokestatic java.util.stream.Stream.concat:(Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
            astore 3 /* result */
        end local 6 // java.util.stream.Stream st
        end local 4 // java.lang.String arg
        17: .line 2295
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.util.function.Supplier java.util.List java.util.stream.Stream top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        18: .line 2314
            aload 3 /* result */
            areturn
        end local 3 // java.util.stream.Stream result
        end local 2 // java.util.List args
        end local 1 // java.util.function.Supplier snippetSupplier
        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  snippetSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0   19     2             args  Ljava/util/List<Ljava/lang/String;>;
            1   19     3           result  Ljava/util/stream/Stream<TT;>;
            3   17     4              arg  Ljava/lang/String;
            4   17     6               st  Ljava/util/stream/Stream<TT;>;
            6   13     7              est  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
    Signature: <T:Ljdk/jshell/Snippet;>(Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;Ljava/util/List<Ljava/lang/String;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
                 Name  Flags
      snippetSupplier  
      args             

  private <T extends jdk.jshell.Snippet> java.util.stream.Stream<T> layeredSnippetSearch(java.util.function.Supplier<java.util.stream.Stream<T>>, java.lang.String);
    descriptor: (Ljava/util/function/Supplier;Ljava/lang/String;)Ljava/util/stream/Stream;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.util.function.Supplier snippetSupplier
        start local 2 // java.lang.String arg
         0: .line 2320
            aload 1 /* snippetSupplier */
            iconst_3
            anewarray jdk.internal.jshell.tool.JShellTool$SnippetPredicate
            dup
            iconst_0
         1: .line 2322
            aload 0 /* this */
            aload 2 /* arg */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/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$92(Ljava/lang/String;Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aastore
            dup
            iconst_1
         2: .line 2324
            aload 0 /* this */
            aload 2 /* arg */
            invokedynamic test(Ljdk/internal/jshell/tool/JShellTool;Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/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$93(Ljava/lang/String;Ljdk/jshell/Snippet;)Z (7)
                  (Ljdk/jshell/Snippet;)Z
            aastore
            dup
            iconst_2
         3: .line 2326
            aload 2 /* arg */
            invokedynamic test(Ljava/lang/String;)Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/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(Ljava/lang/String;Ljdk/jshell/Snippet;)Z (6)
                  (Ljdk/jshell/Snippet;)Z
            aastore
         4: .line 2318
            invokestatic jdk.internal.jshell.tool.JShellTool.nonEmptyStream:(Ljava/util/function/Supplier;[Ljdk/internal/jshell/tool/JShellTool$SnippetPredicate;)Ljava/util/stream/Stream;
            areturn
        end local 2 // java.lang.String arg
        end local 1 // java.util.function.Supplier snippetSupplier
        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  snippetSupplier  Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;
            0    5     2              arg  Ljava/lang/String;
    Signature: <T:Ljdk/jshell/Snippet;>(Ljava/util/function/Supplier<Ljava/util/stream/Stream<TT;>;>;Ljava/lang/String;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
                 Name  Flags
      snippetSupplier  
      arg              

  private boolean cmdDrop(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 2331
            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 2332
            aload 2 /* at */
            iconst_0
            anewarray java.lang.String
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.allowedOptions:([Ljava/lang/String;)V
         2: .line 2333
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* args */
        start local 3 // java.util.List args
         3: .line 2335
            goto 5
        start local 4 // java.lang.String s
         4: .line 2336
      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 2335
      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 2338
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 9
         8: .line 2339
            iconst_0
            ireturn
         9: .line 2341
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* args */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 12
        10: .line 2342
            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 2343
            iconst_0
            ireturn
        12: .line 2345
      StackMap locals:
      StackMap stack:
            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;
            aload 3 /* args */
            invokevirtual jdk.internal.jshell.tool.JShellTool.argsToSnippets:(Ljava/util/function/Supplier;Ljava/util/List;)Ljava/util/stream/Stream;
            astore 5 /* stream */
        start local 5 // java.util.stream.Stream stream
        13: .line 2346
            aload 5 /* stream */
            ifnonnull 16
        14: .line 2348
            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 2349
            iconst_0
            ireturn
        16: .line 2351
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            aload 5 /* 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 7 /* snippets */
        start local 7 // java.util.List snippets
        17: .line 2352
            aload 7 /* snippets */
            invokeinterface java.util.List.size:()I
            aload 3 /* args */
            invokeinterface java.util.List.size:()I
            if_icmple 24
        18: .line 2354
            aload 0 /* this */
            ldc "jshell.err.drop.ambiguous"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        19: .line 2355
            aload 0 /* this */
            ldc "jshell.msg.use.one.of"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 7 /* snippets */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        20: .line 2356
            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$96(Ljdk/jshell/Snippet;)Ljava/lang/String; (6)
                  (Ljdk/jshell/Snippet;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        21: .line 2357
            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
        22: .line 2355
            invokevirtual jdk.internal.jshell.tool.JShellTool.fluffmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        23: .line 2359
            iconst_0
            ireturn
        24: .line 2361
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.util.List java.lang.String java.util.stream.Stream top java.util.List
      StackMap stack:
            aload 7 /* snippets */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        25: .line 2362
            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$97(Ljdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        26: .line 2363
            iconst_1
            ireturn
        end local 7 // java.util.List snippets
        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   27     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   27     1   rawargs  Ljava/lang/String;
            1   27     2        at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   27     3      args  Ljava/util/List<Ljava/lang/String;>;
            4    5     4         s  Ljava/lang/String;
            6   27     4         s  Ljava/lang/String;
           13   27     5    stream  Ljava/util/stream/Stream<Ljdk/jshell/Snippet;>;
           17   27     7  snippets  Ljava/util/List<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 2367
            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 2368
            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 2367
            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 2369
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2370
            iconst_0
            ireturn
         5: .line 2372
      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 2373
            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$101(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 2402
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2403
            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 2404
            aload 6 /* sb */
            aload 7 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2405
            aload 6 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String s
        12: .line 2403
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 2407
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* src */
        start local 7 // java.lang.String src
        14: .line 2408
            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 2409
            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$102(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            astore 9 /* errorHandler */
        start local 9 // java.util.function.Consumer errorHandler
        16: .line 2410
            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 2411
            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 2416
      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 2417
            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$103([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 2424
            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 2425
            aload 9 /* errorHandler */
            aload 11 /* extSaveHandler */
        22: .line 2426
            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$104()V (7)
                  ()V
        23: .line 2427
            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$105()V (7)
                  ()V
        24: .line 2428
            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 2429
            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$106()V (7)
                  ()V
        26: .line 2424
            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 2430
            aload 10 /* buffer */
            iconst_0
            aaload
            ifnull 29
        28: .line 2431
            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 2434
      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 2442
            ldc Ljdk/internal/editor/spi/BuildInEditorProvider;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         1: .line 2441
            astore 4 /* sl */
        start local 4 // java.util.ServiceLoader sl
         2: .line 2444
            aconst_null
            astore 5 /* provider */
        start local 5 // jdk.internal.editor.spi.BuildInEditorProvider provider
         3: .line 2445
            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 2446
            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 2447
      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 2445
      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 2450
            aload 5 /* provider */
            ifnull 13
         9: .line 2451
            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 2452
            aload 1 /* initialText */
            aload 2 /* saveHandler */
            aload 3 /* errorHandler */
        11: .line 2451
            invokeinterface jdk.internal.editor.spi.BuildInEditorProvider.edit:(Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V
        12: .line 2453
            iconst_1
            ireturn
        13: .line 2455
      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 2457
            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 2458
            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 2460
      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 2461
            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 2520
            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 2521
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdHistory:()Z
            ireturn
         2: .line 2523
      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 2524
            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 2523
            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 2525
            aload 2 /* stream */
            ifnonnull 7
         6: .line 2526
            iconst_0
            ireturn
         7: .line 2530
      StackMap locals: java.util.stream.Stream
      StackMap stack:
            iconst_1
            newarray 4
            astore 5 /* hasOutput */
        start local 5 // boolean[] hasOutput
         8: .line 2531
            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$109([ZLjdk/jshell/Snippet;)V (7)
                  (Ljdk/jshell/Snippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         9: .line 2538
            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 2542
            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 2546
            aload 1 /* filename */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 15
         1: .line 2548
            aload 1 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 3 /* path */
        start local 3 // java.nio.file.Path path
         2: .line 2551
            aload 3 /* path */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifne 6
            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
         3: ifnull 6
         4: .line 2553
            new java.io.StringReader
            dup
            aload 5 /* resource */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            astore 4 /* reader */
        start local 4 // java.io.Reader reader
         5: .line 2554
            goto 7
        end local 5 // java.lang.String resource
        end local 4 // java.io.Reader reader
         6: .line 2555
      StackMap locals: java.nio.file.Path
      StackMap stack:
            new java.io.FileReader
            dup
            aload 3 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
            astore 4 /* reader */
        start local 4 // java.io.Reader reader
         7: .line 2557
      StackMap locals: java.io.Reader
      StackMap stack:
            aload 0 /* this */
            new jdk.internal.jshell.tool.ScannerIOContext
            dup
            aload 4 /* reader */
            invokespecial jdk.internal.jshell.tool.ScannerIOContext.<init>:(Ljava/io/Reader;)V
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
         8: .line 2558
            iconst_1
            ireturn
        end local 4 // java.io.Reader reader
        end local 3 // java.nio.file.Path path
         9: .line 2559
      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
        10: .line 2560
            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
        11: goto 16
        12: .line 2561
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        13: .line 2562
            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
        14: .line 2564
            goto 16
        15: .line 2565
      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
        16: .line 2567
      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   17     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   17     1  filename  Ljava/lang/String;
            0   17     2   context  Ljava/lang/String;
            2    9     3      path  Ljava/nio/file/Path;
            5    6     4    reader  Ljava/io/Reader;
            7    9     4    reader  Ljava/io/Reader;
            3    6     5  resource  Ljava/lang/String;
           10   11     3         e  Ljava/io/FileNotFoundException;
           13   14     3         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     8       9  Class java.io.FileNotFoundException
           1     8      12  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 2571
            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 2573
            aload 0 /* name */
            invokestatic jdk.internal.jshell.tool.JShellTool.readResource:(Ljava/lang/String;)Ljava/lang/String;
         2: areturn
         3: .line 2574
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         4: .line 2578
      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 2584
            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
         1: .line 2586
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: 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
         3: .line 2587
            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
         4: .line 2588
            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
         5: .line 2589
            aload 5 /* reader */
            ifnull 6
            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
         6: aload 4 /* in */
            ifnull 7
            aload 4 /* in */
            invokevirtual java.io.InputStream.close:()V
         7: .line 2588
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 2
         9: .line 2589
            aload 5 /* reader */
            ifnull 10
            aload 5 /* reader */
            invokevirtual java.io.BufferedReader.close:()V
        end local 5 // java.io.BufferedReader reader
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 4 /* in */
            ifnull 14
            aload 4 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 4 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
        14: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 3
            aload 2
            ifnonnull 16
            aload 3
            astore 2
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 2
            aload 3
            if_acmpeq 17
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 2
            athrow
        end local 1 // java.lang.String spec
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    name  Ljava/lang/String;
            1   18     1    spec  Ljava/lang/String;
            3   14     4      in  Ljava/io/InputStream;
            4   10     5  reader  Ljava/io/BufferedReader;
      Exception table:
        from    to  target  type
           4     5       8  any
           3     6      11  any
           8    11      11  any
           2     7      15  any
           8    15      15  any
    Exceptions:
      throws java.io.IOException
    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 2593
            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 2594
            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 2595
            iconst_0
            ireturn
         5: .line 2597
      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 2598
            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 2599
            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 2603
            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 2604
            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 2605
            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 2606
            iconst_0
            ireturn
         6: .line 2609
      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 2610
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.replayableHistoryPrevious:Ljdk/internal/jshell/tool/JShellTool$ReplayableHistory;
            ifnonnull 10
         8: .line 2611
            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 2612
            iconst_0
            ireturn
        10: .line 2614
      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 2615
            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 2616
            goto 15
        end local 4 // jdk.internal.jshell.tool.JShellTool$ReplayableHistory history
        13: .line 2617
      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 2618
            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 2620
      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 2621
            iload 5 /* success */
            ifeq 20
            aload 3 /* ap */
            invokevirtual jdk.internal.jshell.tool.JShellTool$OptionParserReload.restore:()Z
            ifeq 20
        19: .line 2624
            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 2626
      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 2630
            aload 1 /* rawargs */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 17
         1: .line 2632
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 2633
            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 2634
            aload 2 /* sb */
         5: .line 2635
            aload 3 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 2636
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 8
         7: .line 2637
            ldc "\n   "
            goto 10
         8: .line 2638
      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 2639
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
        10: .line 2634
      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 2640
            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 2633
            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 2642
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 16
        15: .line 2643
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.prefix:(Ljava/lang/String;)Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.rawout:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 2645
      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 2647
      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 2648
            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 2649
            iconst_0
            ireturn
        20: .line 2651
      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 2652
            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 2656
            aload 3 /* oldOptions */
            ifnull 9
         1: .line 2658
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
         2: .line 2659
            goto 10
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
         3: astore 4 /* ex */
        start local 4 // java.lang.IllegalStateException ex
         4: .line 2660
            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 2661
            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 2663
            aload 0 /* this */
            aload 3 /* oldOptions */
            putfield jdk.internal.jshell.tool.JShellTool.options:Ljdk/internal/jshell/tool/JShellTool$Options;
         7: .line 2664
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        end local 4 // java.lang.IllegalStateException ex
         8: .line 2666
            goto 10
         9: .line 2667
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.resetState:()V
        10: .line 2669
      StackMap locals:
      StackMap stack:
            aload 1 /* history */
            ifnull 17
        11: .line 2670
            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 2671
            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 2670
            invokevirtual jdk.internal.jshell.tool.JShellTool.run:(Ljdk/internal/jshell/tool/IOContext;)V
        17: .line 2673
      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 2677
            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 2678
            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$110(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 2679
            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$79(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 2677
            astore 3 /* args */
        start local 3 // java.lang.String[] args
         4: .line 2680
            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 2681
            aload 4 /* opts */
            ifnonnull 7
         6: .line 2682
            iconst_0
            ireturn
         7: .line 2684
      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 2685
            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 2686
            iconst_0
            ireturn
        10: .line 2688
      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 2689
            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=9, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String rawargs
         0: .line 2693
            new jdk.internal.jshell.tool.ArgTokenizer
            dup
            ldc "/save"
            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 2694
            aload 2 /* 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
         2: .line 2695
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.next:()Ljava/lang/String;
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         3: .line 2696
            aload 3 /* filename */
            ifnonnull 6
         4: .line 2697
            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
         5: .line 2698
            iconst_0
            ireturn
         6: .line 2700
      StackMap locals: jdk.internal.jshell.tool.ArgTokenizer java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.JShellTool.checkOptionsAndRemainingInput:(Ljdk/internal/jshell/tool/ArgTokenizer;)Z
            ifne 8
         7: .line 2701
            iconst_0
            ireturn
         8: .line 2703
      StackMap locals:
      StackMap stack:
            aload 2 /* at */
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.optionCount:()I
            iconst_1
            if_icmple 11
         9: .line 2704
            aload 0 /* this */
            ldc "jshell.err.conflicting.options"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* 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
        10: .line 2705
            iconst_0
            ireturn
        11: .line 2707
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4
            aconst_null
            astore 5
        12: aload 3 /* filename */
            invokestatic jdk.internal.jshell.tool.JShellTool.toPathResolvingUserHome:(Ljava/lang/String;)Ljava/nio/file/Path;
        13: .line 2708
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
        14: .line 2709
            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
        15: .line 2707
            invokestatic java.nio.file.Files.newBufferedWriter:(Ljava/nio/file/Path;Ljava/nio/charset/Charset;[Ljava/nio/file/OpenOption;)Ljava/io/BufferedWriter;
            astore 6 /* writer */
        start local 6 // java.io.BufferedWriter writer
        16: .line 2710
            aload 2 /* at */
            ldc "-history"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 23
        17: .line 2711
            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 8
            goto 21
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String java.lang.Throwable java.lang.Throwable java.io.BufferedWriter top java.util.Iterator
      StackMap stack:
        18: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* s */
        start local 7 // java.lang.String s
        19: .line 2712
            aload 6 /* writer */
            aload 7 /* s */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        20: .line 2713
            aload 6 /* writer */
            ldc "\n"
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 7 // java.lang.String s
        21: .line 2711
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        22: .line 2715
            goto 33
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String java.lang.Throwable java.lang.Throwable java.io.BufferedWriter
      StackMap stack:
        23: aload 2 /* at */
            ldc "-start"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 26
        24: .line 2716
            aload 6 /* writer */
            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 java.io.BufferedWriter.append:(Ljava/lang/CharSequence;)Ljava/io/Writer;
            pop
        25: .line 2717
            goto 33
        26: .line 2718
      StackMap locals:
      StackMap stack:
            aload 2 /* at */
            ldc "-all"
            invokevirtual jdk.internal.jshell.tool.ArgTokenizer.hasOption:(Ljava/lang/String;)Z
            ifeq 28
        27: .line 2719
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
            goto 29
        28: .line 2720
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()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
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        29: .line 2721
      StackMap locals:
      StackMap stack: java.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/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;
        30: .line 2722
            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
        31: .line 2718
            astore 7 /* sources */
        start local 7 // java.lang.String sources
        32: .line 2723
            aload 6 /* writer */
            aload 7 /* sources */
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
        end local 7 // java.lang.String sources
        33: .line 2725
      StackMap locals:
      StackMap stack:
            aload 6 /* writer */
            ifnull 45
            aload 6 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
            goto 45
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 4
            aload 6 /* writer */
            ifnull 35
            aload 6 /* writer */
            invokevirtual java.io.BufferedWriter.close:()V
        end local 6 // java.io.BufferedWriter writer
      StackMap locals:
      StackMap stack:
        35: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        36: astore 5
            aload 4
            ifnonnull 37
            aload 5
            astore 4
            goto 38
      StackMap locals:
      StackMap stack:
        37: aload 4
            aload 5
            if_acmpeq 38
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        38: aload 4
            athrow
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String jdk.internal.jshell.tool.ArgTokenizer java.lang.String
      StackMap stack: java.io.FileNotFoundException
        39: astore 4 /* e */
        start local 4 // java.io.FileNotFoundException e
        40: .line 2726
            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 4 /* e */
            invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        41: .line 2727
            iconst_0
            ireturn
        end local 4 // java.io.FileNotFoundException e
        42: .line 2728
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
        43: .line 2729
            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 4 /* e */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.errormsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        44: .line 2730
            iconst_0
            ireturn
        end local 4 // java.lang.Exception e
        45: .line 2732
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.lang.String filename
        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   46     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   46     1   rawargs  Ljava/lang/String;
            1   46     2        at  Ljdk/internal/jshell/tool/ArgTokenizer;
            3   46     3  filename  Ljava/lang/String;
           16   35     6    writer  Ljava/io/BufferedWriter;
           19   21     7         s  Ljava/lang/String;
           32   33     7   sources  Ljava/lang/String;
           40   42     4         e  Ljava/io/FileNotFoundException;
           43   45     4         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          16    33      34  any
          12    36      36  any
          11    39      39  Class java.io.FileNotFoundException
          11    39      42  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 2736
            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 2737
            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 2736
            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 2738
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2739
            iconst_0
            ireturn
         5: .line 2741
      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$116(Ljdk/jshell/VarSnippet;)V (7)
                  (Ljdk/jshell/VarSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 2748
            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 2752
            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 2753
            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 2752
            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 2754
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2755
            iconst_0
            ireturn
         5: .line 2757
      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$119(Ljdk/jshell/MethodSnippet;)V (7)
                  (Ljdk/jshell/MethodSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 2767
            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 2771
            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 2772
            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 2771
            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 2773
            aload 2 /* stream */
            ifnonnull 5
         4: .line 2774
            iconst_0
            ireturn
         5: .line 2776
      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$122(Ljdk/jshell/TypeDeclSnippet;)V (7)
                  (Ljdk/jshell/TypeDeclSnippet;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
         6: .line 2800
            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 2804
            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$123(Ljdk/jshell/ImportSnippet;)V (7)
                  (Ljdk/jshell/ImportSnippet;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         1: .line 2807
            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 2811
            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 2812
            iload 1 /* index */
            ifge 3
         2: .line 2813
            iload 1 /* index */
            aload 2 /* keys */
            invokeinterface java.util.List.size:()I
            iadd
            istore 1 /* index */
            goto 4
         3: .line 2815
      StackMap locals: java.util.List
      StackMap stack:
            iinc 1 /* index */ -1
         4: .line 2816
      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 2817
            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 2818
            goto 9
         7: .line 2819
      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 2820
            iconst_0
            ireturn
         9: .line 2822
      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 2826
            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 2827
            aload 2 /* junk */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
         2: .line 2828
            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 2829
            iconst_0
            ireturn
         4: .line 2831
      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 2832
            aload 3 /* bad */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 8
         6: .line 2833
            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 2834
            iconst_0
            ireturn
        end local 3 // java.lang.String bad
         8: .line 2837
      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 boolean rerunHistoryEntryById(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    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 id
         0: .line 2841
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            invokevirtual jdk.jshell.JShell.snippets:()Ljava/util/stream/Stream;
         1: .line 2842
            aload 1 /* id */
            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$124(Ljava/lang/String;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 2843
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
         3: .line 2841
            astore 2 /* snippet */
        start local 2 // java.util.Optional snippet
         4: .line 2844
            aload 2 /* snippet */
            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$125(Ljdk/jshell/Snippet;)Ljava/lang/Boolean; (7)
                  (Ljdk/jshell/Snippet;)Ljava/lang/Boolean;
            invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
         5: .line 2847
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         6: .line 2844
            ireturn
        end local 2 // java.util.Optional snippet
        end local 1 // java.lang.String id
        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       id  Ljava/lang/String;
            4    7     2  snippet  Ljava/util/Optional<Ljdk/jshell/Snippet;>;
    MethodParameters:
      Name  Flags
      id    

  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 2851
            aload 1 /* snippet */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 2 /* source */
        start local 2 // java.lang.String source
         1: .line 2852
            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 2853
            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 2854
            aload 0 /* this */
            aload 2 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset:(Ljava/lang/String;)Ljava/lang/String;
            pop
         4: .line 2855
            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 2863
            aload 1 /* diagnostics */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 2864
            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 2865
            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 2863
            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  

  void displayDiagnostics(java.lang.String, jdk.jshell.Diag, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List;)V
    flags: (0x0000) 
    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 2869
            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 2870
            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 2871
            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 2869
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         5: iload 5
            iload 6
            if_icmplt 1
         6: .line 2875
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getStartPosition:()J
            l2i
            istore 4 /* pstart */
        start local 4 // int pstart
         7: .line 2876
            aload 2 /* diag */
            invokevirtual jdk.jshell.Diag.getEndPosition:()J
            l2i
            istore 5 /* pend */
        start local 5 // int pend
         8: .line 2877
            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 2878
            iconst_0
            istore 7 /* pstartl */
        start local 7 // int pstartl
        10: .line 2879
            bipush -2
            istore 8 /* pendl */
        start local 8 // int pendl
        11: .line 2880
            goto 16
        12: .line 2881
      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 2882
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmplt 15
        14: .line 2883
            goto 17
        15: .line 2885
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pstartl */
        16: .line 2880
      StackMap locals:
      StackMap stack:
            aload 6 /* m */
            iload 7 /* pstartl */
            invokevirtual java.util.regex.Matcher.find:(I)Z
            ifne 12
        17: .line 2888
      StackMap locals:
      StackMap stack:
            iload 8 /* pendl */
            iload 4 /* pstart */
            if_icmpge 19
        18: .line 2889
            aload 1 /* source */
            invokevirtual java.lang.String.length:()I
            istore 8 /* pendl */
        19: .line 2891
      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 2893
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        21: .line 2894
            iload 4 /* pstart */
            iload 7 /* pstartl */
            isub
            istore 10 /* start */
        start local 10 // int start
        22: .line 2895
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        23: goto 26
        24: .line 2896
      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 2895
            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 2898
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        28: .line 2899
            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 2900
            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 2901
            iload 12 /* end */
            iload 10 /* start */
            if_icmple 44
        35: .line 2902
            iload 10 /* start */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        36: goto 39
        37: .line 2903
      StackMap locals: int int
      StackMap stack:
            aload 9 /* sb */
            bipush 45
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 2902
            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 2905
            iload 11 /* multiline */
            ifeq 43
        41: .line 2906
            aload 9 /* sb */
            ldc "-..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        42: .line 2907
            goto 44
        43: .line 2908
      StackMap locals:
      StackMap stack:
            aload 9 /* sb */
            bipush 94
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        44: .line 2911
      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 2913
            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 2914
            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 2915
            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 2916
            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 2915
            invokevirtual jdk.internal.jshell.tool.JShellTool.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        50: .line 2917
            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  

  private java.lang.String processSource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String srcInput
         0: .line 2921
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.analysis:Ljdk/jshell/SourceCodeAnalysis;
            aload 1 /* srcInput */
            invokevirtual jdk.jshell.SourceCodeAnalysis.analyzeCompletion:(Ljava/lang/String;)Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            astore 2 /* an */
        start local 2 // jdk.jshell.SourceCodeAnalysis$CompletionInfo an
         1: .line 2922
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.completeness:()Ljdk/jshell/SourceCodeAnalysis$Completeness;
            invokevirtual jdk.jshell.SourceCodeAnalysis$Completeness.isComplete:()Z
            ifne 3
         2: .line 2923
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            areturn
         3: .line 2925
      StackMap locals: jdk.jshell.SourceCodeAnalysis$CompletionInfo
      StackMap stack:
            aload 0 /* this */
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.source:()Ljava/lang/String;
            invokevirtual jdk.internal.jshell.tool.JShellTool.processCompleteSource:(Ljava/lang/String;)Z
            istore 3 /* failed */
        start local 3 // boolean failed
         4: .line 2926
            iload 3 /* failed */
            ifne 5
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 6
         5: .line 2927
      StackMap locals: int
      StackMap stack:
            ldc ""
            areturn
         6: .line 2929
      StackMap locals:
      StackMap stack:
            aload 2 /* an */
            invokeinterface jdk.jshell.SourceCodeAnalysis$CompletionInfo.remaining:()Ljava/lang/String;
            astore 1 /* srcInput */
        end local 3 // boolean failed
        end local 2 // jdk.jshell.SourceCodeAnalysis$CompletionInfo an
         7: .line 2920
            goto 0
        end local 1 // java.lang.String srcInput
        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  srcInput  Ljava/lang/String;
            1    7     2        an  Ljdk/jshell/SourceCodeAnalysis$CompletionInfo;
            4    7     3    failed  Z
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
          Name  Flags
      srcInput  

  boolean processCompleteSource(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 2934
            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 2935
            iconst_0
            istore 2 /* failed */
        start local 2 // boolean failed
         2: .line 2936
            iconst_0
            istore 3 /* isActive */
        start local 3 // boolean isActive
         3: .line 2937
            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 2938
            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 2940
            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 2944
            iload 3 /* isActive */
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 10
         8: .line 2945
            aload 5 /* e */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 10
         9: .line 2946
            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 2938
      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 2950
            iload 3 /* isActive */
            ifeq 15
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.live:Z
            ifeq 15
        14: .line 2951
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual jdk.internal.jshell.tool.JShellTool.addToReplayHistory:(Ljava/lang/String;)V
        15: .line 2954
      StackMap locals: jdk.internal.jshell.tool.JShellTool java.lang.String int int java.util.List
      StackMap stack:
            iload 2 /* failed */
            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   16     0      this  Ljdk/internal/jshell/tool/JShellTool;
            0   16     1    source  Ljava/lang/String;
            2   16     2    failed  Z
            3   16     3  isActive  Z
            4   16     4    events  Ljava/util/List<Ljdk/jshell/SnippetEvent;>;
            6   12     5         e  Ljdk/jshell/SnippetEvent;
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
        Name  Flags
      source  

  private boolean handleEvent(jdk.jshell.SnippetEvent);
    descriptor: (Ljdk/jshell/SnippetEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // jdk.jshell.SnippetEvent ste
         0: .line 2959
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.snippet:()Ljdk/jshell/Snippet;
            astore 2 /* sn */
        start local 2 // jdk.jshell.Snippet sn
         1: .line 2960
            aload 2 /* sn */
            ifnonnull 4
         2: .line 2961
            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 2962
            iconst_0
            ireturn
         4: .line 2964
      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 2965
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 4 /* source */
        start local 4 // java.lang.String source
         6: .line 2966
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.causeSnippet:()Ljdk/jshell/Snippet;
            ifnonnull 33
         7: .line 2968
            aload 3 /* diagnostics */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 16
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.SnippetEvent jdk.jshell.Snippet java.util.List java.lang.String top java.util.Iterator
      StackMap stack:
         8: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.jshell.Diag
            astore 5 /* d */
        start local 5 // jdk.jshell.Diag d
         9: .line 2969
            aload 0 /* this */
            aload 5 /* d */
            invokevirtual jdk.jshell.Diag.isError:()Z
            ifeq 10
            ldc "jshell.msg.error"
            goto 11
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.SnippetEvent jdk.jshell.Snippet java.util.List java.lang.String jdk.jshell.Diag java.util.Iterator
      StackMap stack: jdk.internal.jshell.tool.JShellTool
        10: ldc "jshell.msg.warning"
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.SnippetEvent jdk.jshell.Snippet java.util.List java.lang.String jdk.jshell.Diag java.util.Iterator
      StackMap stack: jdk.internal.jshell.tool.JShellTool java.lang.String
        11: iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.jshell.tool.JShellTool.hardmsg:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 2970
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* disp */
        start local 7 // java.util.List disp
        13: .line 2971
            aload 0 /* this */
            aload 4 /* source */
            aload 5 /* d */
            aload 7 /* disp */
            invokevirtual jdk.internal.jshell.tool.JShellTool.displayDiagnostics:(Ljava/lang/String;Ljdk/jshell/Diag;Ljava/util/List;)V
        14: .line 2972
            aload 7 /* disp */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        15: .line 2973
            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(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        end local 7 // java.util.List disp
        end local 5 // jdk.jshell.Diag d
        16: .line 2968
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.SnippetEvent jdk.jshell.Snippet java.util.List java.lang.String top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        17: .line 2976
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.status:()Ljdk/jshell/Snippet$Status;
            getstatic jdk.jshell.Snippet$Status.REJECTED:Ljdk/jshell/Snippet$Status;
            if_acmpeq 30
        18: .line 2977
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            ifnull 27
        19: .line 2978
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            instanceof jdk.jshell.EvalException
            ifeq 22
        20: .line 2979
            aload 0 /* this */
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            checkcast jdk.jshell.EvalException
            invokevirtual jdk.internal.jshell.tool.JShellTool.printEvalException:(Ljdk/jshell/EvalException;)V
        21: .line 2980
            iconst_1
            ireturn
        22: .line 2981
      StackMap locals: jdk.internal.jshell.tool.JShellTool jdk.jshell.SnippetEvent jdk.jshell.Snippet java.util.List java.lang.String
      StackMap stack:
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            instanceof jdk.jshell.UnresolvedReferenceException
            ifeq 25
        23: .line 2982
            aload 0 /* this */
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            checkcast jdk.jshell.UnresolvedReferenceException
            invokevirtual jdk.internal.jshell.tool.JShellTool.printUnresolvedException:(Ljdk/jshell/UnresolvedReferenceException;)V
        24: .line 2983
            goto 37
        25: .line 2984
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Unexpected execution exception: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ste */
            invokevirtual jdk.jshell.SnippetEvent.exception:()Ljdk/jshell/JShellException;
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
        26: .line 2985
            iconst_1
            ireturn
        27: .line 2988
      StackMap locals:
      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
        28: .line 2989
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        29: .line 2991
            goto 37
        30: .line 2992
      StackMap locals:
      StackMap stack:
            aload 3 /* diagnostics */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 32
        31: .line 2993
            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
        32: .line 2995
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        33: .line 2999
      StackMap locals:
      StackMap stack:
            aload 2 /* sn */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 37
        34: .line 3000
            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
        35: .line 3003
            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
        36: .line 3004
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
        end local 5 // java.util.List other
        37: .line 3007
      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   38     0         this  Ljdk/internal/jshell/tool/JShellTool;
            0   38     1          ste  Ljdk/jshell/SnippetEvent;
            1   38     2           sn  Ljdk/jshell/Snippet;
            5   38     3  diagnostics  Ljava/util/List<Ljdk/jshell/Diag;>;
            6   38     4       source  Ljava/lang/String;
            9   16     5            d  Ljdk/jshell/Diag;
           13   16     7         disp  Ljava/util/List<Ljava/lang/String;>;
           35   37     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 3011
            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 3012
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         3: .line 3013
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
            astore 7 /* cn */
        start local 7 // java.lang.String cn
         4: .line 3014
            aload 7 /* cn */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 11
         5: .line 3015
            aload 7 /* cn */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* dot */
        start local 8 // int dot
         6: .line 3016
            iload 8 /* dot */
            ifle 9
         7: .line 3017
            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 3018
            goto 10
         9: .line 3019
      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 3021
      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 3023
      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 3024
            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 3025
            aload 6 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 3027
      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 3028
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.getLineNumber:()I
            istore 9 /* lineNumber */
        start local 9 // int lineNumber
        16: .line 3029
            aload 2 /* ste */
            invokevirtual java.lang.StackTraceElement.isNativeMethod:()Z
            ifeq 18
        17: .line 3030
            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 3031
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 8 /* fileName */
            ifnonnull 20
        19: .line 3032
            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 3033
      StackMap locals:
      StackMap stack:
            iload 9 /* lineNumber */
            iflt 22
        21: .line 3034
            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 3035
      StackMap locals:
      StackMap stack:
            aload 8 /* fileName */
        23: .line 3029
      StackMap locals:
      StackMap stack: java.lang.String
            astore 10 /* loc */
        start local 10 // java.lang.String loc
        24: .line 3036
            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.hard:(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 3011
            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 3039
            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 3042
            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 3043
            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 3046
            aload 1 /* ex */
            invokevirtual jdk.jshell.EvalException.getMessage:()Ljava/lang/String;
            ifnonnull 3
         1: .line 3047
            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.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         2: .line 3048
            goto 4
         3: .line 3049
      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.hard:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 3051
      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 3052
            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 3056
            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 3060
      StackMap locals:
      StackMap stack:
            aload 2 /* previousStatus */
            invokevirtual jdk.jshell.Snippet$Status.isActive:()Z
            ifeq 7
         2: .line 3061
            iload 3 /* isSignatureChange */
            ifeq 4
         3: .line 3062
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.REPLACED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
            goto 5
         4: .line 3063
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.jshell.tool.Feedback$FormatAction.MODIFIED:Ljdk/internal/jshell/tool/Feedback$FormatAction;
         5: .line 3061
      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 3064
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         7: .line 3065
      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 3067
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
         9: .line 3069
      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 3070
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        11: .line 3072
      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 3073
            goto 15
        end local 4 // jdk.internal.jshell.tool.Feedback$FormatAction act
        13: .line 3078
      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 3079
            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 3081
      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 3085
            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 3086
            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 3087
            invokevirtual jdk.internal.jshell.tool.JShellTool$DisplayEvent.displayDeclarationAndValue:()V
         3: .line 3088
            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 3260
            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 3266
            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 3270
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.versionRB:Ljava/util/ResourceBundle;
            ifnonnull 5
         1: .line 3272
            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 3273
            goto 5
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
         3: pop
         4: .line 3274
            ldc "(version info not available)"
            areturn
         5: .line 3278
      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 3280
      StackMap locals:
      StackMap stack: java.util.MissingResourceException
            pop
         8: .line 3281
            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 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 126
            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 126
            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 1348
            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$128(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 1639
            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=1, locals=2, args_size=2
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 1 // java.lang.String arg
         0: .line 1642
            aload 0 /* this */
            invokevirtual jdk.internal.jshell.tool.JShellTool.cmdExit:()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$18(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 1645
            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$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 1648
            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$21(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 1654
            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$27(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 1684
            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 static boolean lambda$28(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 1707
            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$29(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 1708
            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$30(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 1708
            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$31(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 846
            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$33();
    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 1024
            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$34(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 1025
            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 1026
      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 1027
      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$35(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 1035
            aload 1 /* deadState */
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.state:Ljdk/jshell/JShell;
            if_acmpne 3
         1: .line 1036
            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 1037
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.jshell.tool.JShellTool.live:Z
         3: .line 1039
      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    4     0       this  Ljdk/internal/jshell/tool/JShellTool;
            0    4     1  deadState  Ljdk/jshell/JShell;

  private static boolean lambda$36(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 1208
            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$37(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 1223
            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$38(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 1237
            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$39(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$40(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 1363
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
         1: .line 1365
            aload 1 /* input */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* space */
        start local 5 // int space
         2: .line 1366
            iload 5 /* space */
            iconst_m1
            if_icmpeq 6
         3: .line 1367
            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 1368
            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 1369
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 5 /* space */
            iconst_1
            iadd
            iadd
            iastore
        end local 6 // java.lang.String rest
         6: .line 1372
      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$41(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 1378
            aload 1 /* code */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastSlash */
        start local 4 // int lastSlash
         1: .line 1379
            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 1380
            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 1381
            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 1382
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* result */
        start local 8 // java.util.List result
         7: .line 1383
            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 1384
            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$42(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 1385
            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$43(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 1386
            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 1387
            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 1390
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 25
        20: .line 1391
            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 1392
            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$45(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 1393
            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;
        23: .line 1394
            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;
        24: .line 1395
            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 1397
      StackMap locals:
      StackMap stack:
            aload 3 /* anchor */
            iconst_0
            aload 5 /* path */
            invokevirtual java.lang.String.length:()I
            iastore
        26: .line 1398
            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$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 p
         0: .line 1403
            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 1404
            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 1405
            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$50(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 1411
            aload 3 /* anchor */
            iconst_0
            iconst_0
            iastore
         1: .line 1412
            aload 1 /* prefix */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1413
            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 1414
            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 1415
      StackMap locals: int java.util.Set
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         5: .line 1417
      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 1418
            aload 0
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.util.stream.Stream
         7: .line 1419
            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$51(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 1422
            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$52(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 1425
            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$53(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 1426
            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 1427
            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 1418
            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$55(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 1435
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.List result
         1: .line 1436
            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 1437
            iload 7 /* pastSpace */
            ifne 4
         3: .line 1438
            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 1440
      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 1441
            aload 5 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
         6: .line 1442
            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$56(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 1450
            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 1451
            iload 5 /* pastSpace */
            ifne 13
         2: .line 1455
            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 1456
            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 1457
            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$57(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 1458
            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$58(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 1461
            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$79(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 1456
            invokespecial jdk.internal.jshell.tool.JShellTool$FixedCompletionProvider.<init>:([Ljava/lang/String;)V
        10: .line 1462
            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 1456
            astore 4 /* result */
        end local 6 // boolean noslash
        start local 4 // java.util.List result
        12: .line 1463
            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 1464
      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 1465
            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 1464
            astore 4 /* result */
        start local 4 // java.util.List result
        17: .line 1466
            goto 19
        end local 4 // java.util.List result
        18: .line 1467
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 4 /* result */
        start local 4 // java.util.List result
        19: .line 1469
      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 1470
            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$60(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 1476
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.List result
         1: .line 1477
            aload 0 /* code */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* space */
        start local 4 // int space
         2: .line 1478
            iload 4 /* space */
            iconst_m1
            if_icmpne 4
         3: .line 1479
            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 1481
      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 1482
            aload 2 /* anchor */
            iconst_0
            dup2
            iaload
            iload 4 /* space */
            iconst_1
            iadd
            iadd
            iastore
         6: .line 1483
            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$61(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 1490
            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 1491
            aload 4 /* ovm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
         2: .line 1492
            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 1493
            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 1494
            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$62(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 1495
            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$63(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 1496
            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 1493
            astore 6 /* ps */
        start local 6 // java.util.List ps
         8: .line 1497
            aload 6 /* ps */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 15
         9: .line 1498
            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 1499
            aload 6 /* ps */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$CompletionProvider
        11: .line 1500
            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 1499
            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 1501
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        14: .line 1502
            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 1505
      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 1506
            aload 5 /* om */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 29
        17: .line 1507
            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 1508
            aload 0
        19: .line 1509
            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 1508
            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 1510
            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 1511
            aload 7 /* result */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        23: .line 1512
            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$64(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 1523
            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 1511
            astore 7 /* result */
        26: .line 1524
            iinc 6 /* pastSpace */ -1
        27: .line 1526
      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 1527
            aload 7 /* result */
            areturn
        end local 7 // java.util.List result
        end local 6 // int pastSpace
        29: .line 1529
      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 1530
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 37
        31: .line 1531
            aload 6 /* opp */
            invokevirtual java.util.regex.Matcher.end:()I
            istore 7 /* pastSpace */
        start local 7 // int pastSpace
        32: .line 1532
            aload 0
        33: .line 1533
            ldc ""
            iload 2 /* cursor */
            iload 7 /* pastSpace */
            isub
            aload 3 /* anchor */
        34: .line 1532
            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 1534
            aload 3 /* anchor */
            iconst_0
            dup2
            iaload
            iload 7 /* pastSpace */
            iadd
            iastore
        36: .line 1535
            aload 8 /* result */
            areturn
        end local 8 // java.util.List result
        end local 7 // int pastSpace
        37: .line 1537
      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$65(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 1554
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 5 /* leftAnchor */
        start local 5 // int[] leftAnchor
         1: .line 1555
            iconst_1
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            astore 6 /* rightAnchor */
        start local 6 // int[] rightAnchor
         2: .line 1557
            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 1558
            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 1560
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* suggestions */
        start local 9 // java.util.List suggestions
         5: .line 1562
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            if_icmplt 8
         6: .line 1563
            aload 4 /* anchor */
            iconst_0
            aload 5 /* leftAnchor */
            iconst_0
            iaload
            iastore
         7: .line 1564
            aload 9 /* suggestions */
            aload 7 /* leftSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 1567
      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 1568
            aload 4 /* anchor */
            iconst_0
            aload 6 /* rightAnchor */
            iconst_0
            iaload
            iastore
        10: .line 1569
            aload 9 /* suggestions */
            aload 8 /* rightSuggestions */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        11: .line 1572
      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$66(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 1584
            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$67(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 1589
            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$68(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 1590
            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$69(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 1595
            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$70(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 1596
            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$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 1601
            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$72(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 1602
            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$73(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 e
         0: .line 1727
            aload 1 /* e */
            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 e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     e  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;

  private static boolean lambda$74(java.util.Map$Entry);
    descriptor: (Ljava/util/Map$Entry;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Map$Entry e
         0: .line 1728
            aload 0 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast jdk.internal.jshell.tool.JShellTool$Command
            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 // java.util.Map$Entry e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     e  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;

  private static int lambda$75(java.util.Map$Entry, java.util.Map$Entry);
    descriptor: (Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Map$Entry e1
        start local 1 // java.util.Map$Entry e2
         0: .line 1729
            aload 0 /* e1 */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 1 /* e2 */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 1 // java.util.Map$Entry e2
        end local 0 // java.util.Map$Entry e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;
            0    1     1    e2  Ljava/util/Map$Entry<Ljava/lang/String;Ljdk/internal/jshell/tool/JShellTool$Command;>;

  private void lambda$76(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 1781
            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$77(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 1796
            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$78(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 1811
            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$79(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$80(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 2129
            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 2130
            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$82(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 2158
            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$84(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 2172
            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$85(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 2173
            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$86(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 2174
            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$87(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 2178
            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$88(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 2179
            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$89(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 2180
            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 boolean lambda$92(java.lang.String, jdk.jshell.Snippet);
    descriptor: (Ljava/lang/String;Ljdk/jshell/Snippet;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 2 // jdk.jshell.Snippet sn
         0: .line 2322
            aload 0 /* this */
            aload 2 /* sn */
            invokevirtual jdk.internal.jshell.tool.JShellTool.isActive:(Ljdk/jshell/Snippet;)Z
            ifeq 1
            aload 0 /* this */
            aload 2 /* sn */
            aload 1
            invokevirtual jdk.internal.jshell.tool.JShellTool.matchingDeclaration:(Ljdk/jshell/Snippet;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 // jdk.jshell.Snippet sn
        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     2    sn  TT;

  private boolean lambda$93(java.lang.String, jdk.jshell.Snippet);
    descriptor: (Ljava/lang/String;Ljdk/jshell/Snippet;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.JShellTool this
        start local 2 // jdk.jshell.Snippet sn
         0: .line 2324
            aload 0 /* this */
            aload 2 /* sn */
            aload 1
            invokevirtual jdk.internal.jshell.tool.JShellTool.matchingDeclaration:(Ljdk/jshell/Snippet;Ljava/lang/String;)Z
            ireturn
        end local 2 // 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     2    sn  TT;

  private static boolean lambda$94(java.lang.String, jdk.jshell.Snippet);
    descriptor: (Ljava/lang/String;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 sn
         0: .line 2326
            aload 1 /* sn */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1    sn  TT;

  private static java.lang.String lambda$96(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // jdk.jshell.Snippet sn
         0: .line 2356
            ldc "\n/drop %-5s :   %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* sn */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* 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
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // jdk.jshell.Snippet sn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    sn  Ljdk/jshell/Snippet;

  private void lambda$97(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 2362
            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$101(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 2374
            aload 2 /* sn */
            invokevirtual jdk.jshell.Snippet.source:()Ljava/lang/String;
            astore 3 /* src */
        start local 3 // java.lang.String src
         1: .line 2375
            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 2377
      StackMap locals: java.lang.String
      StackMap stack:
            goto 15
         3: .line 2382
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 5
         4: .line 2383
            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 2385
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 2386
            goto 15
         7: .line 2388
      StackMap locals:
      StackMap stack:
            aload 3 /* src */
            ldc "}"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 10
         8: .line 2391
            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 2392
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 3 /* src */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2393
            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 2395
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* src */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2396
            goto 15
        14: .line 2398
      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 2401
      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$102(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 2409
            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$103(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 2418
            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 2419
            aload 1
            iconst_0
            aload 3 /* s */
            aastore
         2: .line 2420
            goto 4
         3: .line 2421
      StackMap locals:
      StackMap stack:
            aload 2
            aload 3 /* s */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 2423
      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$104();
    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 2426
            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$105();
    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 2427
            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$106();
    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 2429
            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$109(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 2532
            aload 1
            iconst_0
            baload
            ifne 3
         1: .line 2533
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.JShellTool.cmdout:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         2: .line 2534
            aload 1
            iconst_0
            iconst_1
            bastore
         3: .line 2536
      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 2537
            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$110(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 2678
            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$116(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 2743
            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 2744
            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 2745
      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 2743
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* val */
        start local 2 // java.lang.String val
         4: .line 2746
            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 2747
            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$119(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 2758
            aload 1 /* meth */
            invokevirtual jdk.jshell.MethodSnippet.signature:()Ljava/lang/String;
            astore 2 /* sig */
        start local 2 // java.lang.String sig
         1: .line 2759
            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 2760
            iload 3 /* i */
            ifgt 5
         3: .line 2761
            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 2762
            goto 6
         5: .line 2763
      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 2765
      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 2766
            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$122(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 2779
            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 2781
      StackMap locals:
      StackMap stack:
            ldc "interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         2: .line 2782
            goto 11
        end local 2 // java.lang.String kind
         3: .line 2784
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         4: .line 2785
            goto 11
        end local 2 // java.lang.String kind
         5: .line 2787
      StackMap locals:
      StackMap stack:
            ldc "enum"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         6: .line 2788
            goto 11
        end local 2 // java.lang.String kind
         7: .line 2790
      StackMap locals:
      StackMap stack:
            ldc "@interface"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
         8: .line 2791
            goto 11
        end local 2 // java.lang.String kind
         9: .line 2793
      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 2794
      StackMap locals:
      StackMap stack:
            ldc "class"
            astore 2 /* kind */
        start local 2 // java.lang.String kind
        11: .line 2797
      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 2798
            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 2799
            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$123(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 2805
            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 2806
            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$124(java.lang.String, jdk.jshell.Snippet);
    descriptor: (Ljava/lang/String;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 s
         0: .line 2842
            aload 1 /* s */
            invokevirtual jdk.jshell.Snippet.id:()Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.jshell.Snippet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljdk/jshell/Snippet;

  private java.lang.Boolean lambda$125(jdk.jshell.Snippet);
    descriptor: (Ljdk/jshell/Snippet;)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 // jdk.jshell.Snippet s
         0: .line 2845
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual jdk.internal.jshell.tool.JShellTool.rerunSnippet:(Ljdk/jshell/Snippet;)V
         1: .line 2846
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // jdk.jshell.Snippet s
        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     s  Ljdk/jshell/Snippet;

  private void lambda$127(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 2973
            aload 0 /* this */
            ldc "%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* l */
            aastore
            invokevirtual jdk.internal.jshell.tool.JShellTool.hard:(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$42(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 1384
            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$43(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 1385
            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$45(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 1392
            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$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 root
         0: .line 1393
            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$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=3, locals=1, args_size=1
        start local 0 // java.nio.file.Path root
         0: .line 1394
            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$51(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 1419
            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 1420
            aload 1 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 3
         2: .line 1421
            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$52(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 1422
            aload 0 /* k */
            instanceof jdk.jshell.DeclarationSnippet
            ifeq 2
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 1423
            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 1424
      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$53(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 1425
            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$57(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 1457
            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$58(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 1458
            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 1459
            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 1460
      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 1458
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1460
            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$62(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 1494
            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$63(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 1495
            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$64(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 1512
            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 1522
            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$2  jdk.internal.jshell.tool.JShellTool$3  jdk.internal.jshell.tool.JShellTool$ArgSuggestion  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 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
  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
  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