public abstract class org.graalvm.launcher.Launcher
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.launcher.Launcher
  super_class: java.lang.Object
{
  private static final boolean STATIC_VERBOSE;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean SHELL_SCRIPT_LAUNCHER;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final int LAUNCHER_OPTIONS_INDENT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 45

  static final boolean IS_AOT;
    descriptor: Z
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  final org.graalvm.launcher.Launcher$Native nativeAccess;
    descriptor: Lorg/graalvm/launcher/Launcher$Native;
    flags: (0x0010) ACC_FINAL

  private final boolean verbose;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.io.PrintStream out;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0002) ACC_PRIVATE

  private java.io.PrintStream err;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  private java.nio.file.Path logFile;
    descriptor: Ljava/nio/file/Path;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.List<java.lang.String> kindAndCategory;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private java.nio.file.Path home;
    descriptor: Ljava/nio/file/Path;
    flags: (0x0002) ACC_PRIVATE

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

  private static volatile int[] $SWITCH_TABLE$org$graalvm$launcher$Launcher$OS;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$graalvm$options$OptionCategory;
    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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 90
            ldc Lorg/graalvm/launcher/Launcher;
            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 org.graalvm.launcher.Launcher.$assertionsDisabled:Z
         3: .line 91
            ldc "org.graalvm.launcher.verbose"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            putstatic org.graalvm.launcher.Launcher.STATIC_VERBOSE:Z
         4: .line 92
            ldc "org.graalvm.launcher.shell"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            putstatic org.graalvm.launcher.Launcher.SHELL_SCRIPT_LAUNCHER:Z
         5: .line 99
            ldc "com.oracle.graalvm.isaot"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            putstatic org.graalvm.launcher.Launcher.IS_AOT:Z
         6: .line 1099
            ldc "org.graalvm.launcher.classpath"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putstatic org.graalvm.launcher.Launcher.CLASSPATH:Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 140
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 108
            aload 0 /* this */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            putfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
         2: .line 109
            aload 0 /* this */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            putfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
         3: .line 125
            aload 0 /* this */
            bipush 45
            putfield org.graalvm.launcher.Launcher.optionIndent:I
         4: .line 132
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
         5: .line 141
            aload 0 /* this */
            getstatic org.graalvm.launcher.Launcher.STATIC_VERBOSE:Z
            ifne 6
            ldc "VERBOSE_GRAALVM_LAUNCHERS"
            invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
            ifne 6
            iconst_0
            goto 7
      StackMap locals: org.graalvm.launcher.Launcher
      StackMap stack: org.graalvm.launcher.Launcher
         6: iconst_1
      StackMap locals: org.graalvm.launcher.Launcher
      StackMap stack: org.graalvm.launcher.Launcher int
         7: putfield org.graalvm.launcher.Launcher.verbose:Z
         8: .line 142
            getstatic org.graalvm.launcher.Launcher.IS_AOT:Z
            ifeq 11
         9: .line 143
            aload 0 /* this */
            new org.graalvm.launcher.Launcher$Native
            dup
            aload 0 /* this */
            invokespecial org.graalvm.launcher.Launcher$Native.<init>:(Lorg/graalvm/launcher/Launcher;)V
            putfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
        10: .line 144
            goto 12
        11: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
        12: .line 147
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/graalvm/launcher/Launcher;

  protected final java.nio.file.Path getLogFile();
    descriptor: ()Ljava/nio/file/Path;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 156
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.logFile:Ljava/nio/file/Path;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  protected final void setOutput(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.io.PrintStream ps
         0: .line 166
            aload 0 /* this */
            aload 1 /* ps */
            putfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
         1: .line 167
            return
        end local 1 // java.io.PrintStream ps
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/launcher/Launcher;
            0    2     1    ps  Ljava/io/PrintStream;
    MethodParameters:
      Name  Flags
      ps    

  protected final void setError(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.io.PrintStream ps
         0: .line 176
            aload 0 /* this */
            aload 1 /* ps */
            putfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
         1: .line 177
            return
        end local 1 // java.io.PrintStream ps
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/launcher/Launcher;
            0    2     1    ps  Ljava/io/PrintStream;
    MethodParameters:
      Name  Flags
      ps    

  protected final java.io.PrintStream getOutput();
    descriptor: ()Ljava/io/PrintStream;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 184
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  protected final java.io.PrintStream getError();
    descriptor: ()Ljava/io/PrintStream;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 192
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  void handleAbortException(org.graalvm.launcher.Launcher$AbortException);
    descriptor: (Lorg/graalvm/launcher/Launcher$AbortException;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // org.graalvm.launcher.Launcher$AbortException e
         0: .line 196
            aload 1 /* e */
            invokevirtual org.graalvm.launcher.Launcher$AbortException.getMessage:()Ljava/lang/String;
            ifnull 2
         1: .line 197
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "ERROR: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual org.graalvm.launcher.Launcher$AbortException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 199
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual org.graalvm.launcher.Launcher$AbortException.getCause:()Ljava/lang/Throwable;
            ifnull 4
         3: .line 200
            aload 1 /* e */
            invokevirtual org.graalvm.launcher.Launcher$AbortException.printStackTrace:()V
         4: .line 202
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual org.graalvm.launcher.Launcher$AbortException.getExitCode:()I
            invokestatic java.lang.System.exit:(I)V
         5: .line 203
            return
        end local 1 // org.graalvm.launcher.Launcher$AbortException e
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/launcher/Launcher;
            0    6     1     e  Lorg/graalvm/launcher/Launcher$AbortException;
    MethodParameters:
      Name  Flags
      e     

  protected final org.graalvm.launcher.Launcher$AbortException exit();
    descriptor: ()Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 242
            aload 0 /* this */
            iconst_0
            invokevirtual org.graalvm.launcher.Launcher.exit:(I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  protected final org.graalvm.launcher.Launcher$AbortException exit(int);
    descriptor: (I)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // int exitCode
         0: .line 253
            aload 0 /* this */
            aconst_null
            iload 1 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 1 // int exitCode
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/launcher/Launcher;
            0    1     1  exitCode  I
    MethodParameters:
          Name  Flags
      exitCode  

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String message
         0: .line 265
            aload 0 /* this */
            aload 1 /* message */
            iconst_1
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 1 // java.lang.String message
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/launcher/Launcher;
            0    1     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String message
        start local 2 // int exitCode
         0: .line 279
            new org.graalvm.launcher.Launcher$AbortException
            dup
            aload 1 /* message */
            iload 2 /* exitCode */
            invokespecial org.graalvm.launcher.Launcher$AbortException.<init>:(Ljava/lang/String;I)V
            athrow
        end local 2 // int exitCode
        end local 1 // java.lang.String message
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/launcher/Launcher;
            0    1     1   message  Ljava/lang/String;
            0    1     2  exitCode  I
    MethodParameters:
          Name  Flags
      message   
      exitCode  

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.Throwable t
         0: .line 290
            aload 0 /* this */
            aload 1 /* t */
            sipush 255
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/Throwable;I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 1 // java.lang.Throwable t
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;
            0    1     1     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.lang.Throwable, int);
    descriptor: (Ljava/lang/Throwable;I)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.Throwable t
        start local 2 // int exitCode
         0: .line 302
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            instanceof java.io.IOException
            ifeq 5
            aload 1 /* t */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/RuntimeException;
            if_acmpne 5
         1: .line 303
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            astore 3 /* message */
        start local 3 // java.lang.String message
         2: .line 304
            aload 3 /* message */
            ifnull 4
            aload 3 /* message */
            new java.lang.StringBuilder
            dup
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()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;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         3: .line 305
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
            aload 3 /* message */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 307
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            checkcast java.io.IOException
            iload 2 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/io/IOException;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 3 // java.lang.String message
         5: .line 309
      StackMap locals:
      StackMap stack:
            new org.graalvm.launcher.Launcher$AbortException
            dup
            aload 1 /* t */
            iload 2 /* exitCode */
            invokespecial org.graalvm.launcher.Launcher$AbortException.<init>:(Ljava/lang/Throwable;I)V
            athrow
        end local 2 // int exitCode
        end local 1 // java.lang.Throwable t
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/graalvm/launcher/Launcher;
            0    6     1         t  Ljava/lang/Throwable;
            0    6     2  exitCode  I
            2    5     3   message  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      t         
      exitCode  

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.io.IOException);
    descriptor: (Ljava/io/IOException;)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.io.IOException e
         0: .line 322
            aload 0 /* this */
            aload 1 /* e */
            bipush 74
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/io/IOException;I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 1 // java.io.IOException e
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;
            0    1     1     e  Ljava/io/IOException;
    MethodParameters:
      Name  Flags
      e     

  protected final org.graalvm.launcher.Launcher$AbortException abort(java.io.IOException, int);
    descriptor: (Ljava/io/IOException;I)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.io.IOException e
        start local 2 // int exitCode
         0: .line 336
            aload 1 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            astore 3 /* message */
        start local 3 // java.lang.String message
         1: .line 337
            aload 3 /* message */
            ifnull 7
         2: .line 338
            aload 1 /* e */
            instanceof java.nio.file.NoSuchFileException
            ifeq 4
         3: .line 339
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Not such file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 2 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         4: .line 340
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* e */
            instanceof java.nio.file.AccessDeniedException
            ifeq 6
         5: .line 341
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Access denied: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 2 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         6: .line 343
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 3 /* message */
            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 1 /* e */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 2 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         7: .line 346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            iload 2 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/Throwable;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 3 // java.lang.String message
        end local 2 // int exitCode
        end local 1 // java.io.IOException e
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/graalvm/launcher/Launcher;
            0    8     1         e  Ljava/io/IOException;
            0    8     2  exitCode  I
            1    8     3   message  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      e         
      exitCode  

  protected org.graalvm.launcher.Launcher$AbortException abortUnrecognizedArgument(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String argument
         0: .line 356
            aload 0 /* this */
            aload 1 /* argument */
            new java.lang.StringBuilder
            dup
            ldc "Unrecognized argument: '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* argument */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'. Use --help for usage instructions."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abortInvalidArgument:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 1 // java.lang.String argument
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/launcher/Launcher;
            0    1     1  argument  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      argument  

  protected final org.graalvm.launcher.Launcher$AbortException abortInvalidArgument(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String argument
        start local 2 // java.lang.String message
         0: .line 368
            aload 0 /* this */
            aload 1 /* argument */
            aload 2 /* message */
            iconst_2
            invokevirtual org.graalvm.launcher.Launcher.abortInvalidArgument:(Ljava/lang/String;Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            areturn
        end local 2 // java.lang.String message
        end local 1 // java.lang.String argument
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/launcher/Launcher;
            0    1     1  argument  Ljava/lang/String;
            0    1     2   message  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      argument  
      message   

  protected final org.graalvm.launcher.Launcher$AbortException abortInvalidArgument(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=11, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String argument
        start local 2 // java.lang.String message
        start local 3 // int exitCode
         0: .line 381
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.collectAllArguments:()Ljava/util/Set;
            astore 4 /* allArguments */
        start local 4 // java.util.Set allArguments
         1: .line 383
            aload 1 /* argument */
            astore 6 /* testString */
        start local 6 // java.lang.String testString
         2: .line 384
            aload 1 /* argument */
            bipush 61
            invokevirtual java.lang.String.indexOf:(I)I
            dup
            istore 5 /* equalIndex */
        start local 5 // int equalIndex
         3: iconst_m1
            if_icmpeq 5
         4: .line 385
            aload 1 /* argument */
            iconst_0
            iload 5 /* equalIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 6 /* testString */
         5: .line 388
      StackMap locals: java.util.Set int java.lang.String
      StackMap stack:
            aload 4 /* allArguments */
            aload 6 /* testString */
            ldc 0.7
            invokestatic org.graalvm.launcher.Launcher.fuzzyMatch:(Ljava/util/Set;Ljava/lang/String;F)Ljava/util/List;
            astore 7 /* matches */
        start local 7 // java.util.List matches
         6: .line 389
            aload 7 /* matches */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         7: .line 391
            aload 4 /* allArguments */
            aload 6 /* testString */
            ldc 0.5
            invokestatic org.graalvm.launcher.Launcher.fuzzyMatch:(Ljava/util/Set;Ljava/lang/String;F)Ljava/util/List;
            astore 7 /* matches */
         8: .line 394
      StackMap locals: java.util.List
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 8 /* sb */
        start local 8 // java.lang.StringBuilder sb
         9: .line 395
            aload 2 /* message */
            ifnull 11
        10: .line 396
            aload 8 /* sb */
            aload 2 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 398
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 7 /* matches */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 21
        12: .line 399
            aload 8 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 14
        13: .line 400
            aload 8 /* sb */
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 402
      StackMap locals:
      StackMap stack:
            aload 8 /* sb */
            ldc "Did you mean one of the following arguments?"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 403
            aload 7 /* matches */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9 /* iterator */
        start local 9 // java.util.Iterator iterator
        16: .line 405
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* match */
        start local 10 // java.lang.String match
        17: .line 406
            aload 8 /* sb */
            ldc "  "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 10 /* match */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 407
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 21
        19: .line 408
            aload 8 /* sb */
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 10 // java.lang.String match
        20: .line 404
            goto 16
        end local 9 // java.util.Iterator iterator
        21: .line 414
      StackMap locals:
      StackMap stack:
            aload 8 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 23
        22: .line 415
            aload 0 /* this */
            aload 8 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 3 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        23: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* exitCode */
            invokevirtual org.graalvm.launcher.Launcher.exit:(I)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 8 // java.lang.StringBuilder sb
        end local 7 // java.util.List matches
        end local 6 // java.lang.String testString
        end local 5 // int equalIndex
        end local 4 // java.util.Set allArguments
        end local 3 // int exitCode
        end local 2 // java.lang.String message
        end local 1 // java.lang.String argument
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lorg/graalvm/launcher/Launcher;
            0   24     1      argument  Ljava/lang/String;
            0   24     2       message  Ljava/lang/String;
            0   24     3      exitCode  I
            1   24     4  allArguments  Ljava/util/Set<Ljava/lang/String;>;
            3   24     5    equalIndex  I
            2   24     6    testString  Ljava/lang/String;
            6   24     7       matches  Ljava/util/List<Ljava/lang/String;>;
            9   24     8            sb  Ljava/lang/StringBuilder;
           16   21     9      iterator  Ljava/util/Iterator<Ljava/lang/String;>;
           17   20    10         match  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      argument  
      message   
      exitCode  

  protected void warn(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String message
         0: .line 422
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Warning: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 423
            return
        end local 1 // java.lang.String message
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/graalvm/launcher/Launcher;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  protected void warn(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String message
        start local 2 // java.lang.Object[] args
         0: .line 426
            new java.lang.StringBuilder
            dup
            ldc "Warning: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         1: .line 427
            new java.util.Formatter
            dup
            aload 3 /* sb */
            invokespecial java.util.Formatter.<init>:(Ljava/lang/Appendable;)V
            aload 1 /* message */
            aload 2 /* args */
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
         2: .line 428
            aload 3 /* sb */
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 429
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.err:Ljava/io/PrintStream;
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         4: .line 430
            return
        end local 3 // java.lang.StringBuilder sb
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String message
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/graalvm/launcher/Launcher;
            0    5     1  message  Ljava/lang/String;
            0    5     2     args  [Ljava/lang/Object;
            1    5     3       sb  Ljava/lang/StringBuilder;
    MethodParameters:
         Name  Flags
      message  
      args     

  protected final void setOptionIndent(int);
    descriptor: (I)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // int indent
         0: .line 440
            iload 1 /* indent */
            ifge 3
         1: .line 441
            aload 0 /* this */
            bipush 45
            putfield org.graalvm.launcher.Launcher.optionIndent:I
         2: .line 442
            goto 4
         3: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* indent */
            putfield org.graalvm.launcher.Launcher.optionIndent:I
         4: .line 445
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int indent
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/graalvm/launcher/Launcher;
            0    5     1  indent  I
    MethodParameters:
        Name  Flags
      indent  

  protected abstract void printHelp(org.graalvm.options.OptionCategory);
    descriptor: (Lorg/graalvm/options/OptionCategory;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      maxCategory  

  protected abstract void printVersion();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract void collectArguments(java.util.Set<java.lang.String>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
         Name  Flags
      options  

  protected abstract org.graalvm.options.OptionDescriptor findOptionDescriptor(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      group  
      key    

  protected boolean canPolyglot();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 486
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/launcher/Launcher;

  protected void maybePrintAdditionalHelp(org.graalvm.options.OptionCategory);
    descriptor: (Lorg/graalvm/options/OptionCategory;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // org.graalvm.options.OptionCategory helpCategory
         0: .line 498
            return
        end local 1 // org.graalvm.options.OptionCategory helpCategory
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/graalvm/launcher/Launcher;
            0    1     1  helpCategory  Lorg/graalvm/options/OptionCategory;
    MethodParameters:
              Name  Flags
      helpCategory  

  private java.lang.String[] executableNames(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String basename
         0: .line 501
            invokestatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$launcher$Launcher$OS:()[I
            getstatic org.graalvm.launcher.Launcher$OS.current:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual org.graalvm.launcher.Launcher$OS.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 1
                    2: 1
                    3: 1
                    4: 2
              default: 3
          }
         1: .line 505
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* basename */
            aastore
            areturn
         2: .line 507
      StackMap locals:
      StackMap stack:
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            new java.lang.StringBuilder
            dup
            aload 1 /* basename */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".exe"
            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 1 /* basename */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".cmd"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            areturn
         3: .line 509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "executableName: OS not supported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.graalvm.launcher.Launcher$OS.current:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 1 // java.lang.String basename
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/launcher/Launcher;
            0    4     1  basename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      basename  

  protected java.lang.String getMainClass();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 523
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  protected org.graalvm.launcher.Launcher$VMType getDefaultVMType();
    descriptor: ()Lorg/graalvm/launcher/Launcher$VMType;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 532
            getstatic org.graalvm.launcher.Launcher$VMType.Native:Lorg/graalvm/launcher/Launcher$VMType;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  public static boolean isAOT();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 539
            getstatic org.graalvm.launcher.Launcher.IS_AOT:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private boolean isVerbose();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 543
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.verbose:Z
            ireturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/launcher/Launcher;

  protected boolean isGraalVMAvailable();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 547
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.getGraalVMHome:()Ljava/nio/file/Path;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/launcher/Launcher;

  protected boolean isStandalone();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 551
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isGraalVMAvailable:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/launcher/Launcher;

  private org.graalvm.options.OptionCategory getHelpCategory();
    descriptor: ()Lorg/graalvm/options/OptionCategory;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 557
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpInternal:Z
            ifeq 2
         1: .line 558
            getstatic org.graalvm.options.OptionCategory.INTERNAL:Lorg/graalvm/options/OptionCategory;
            areturn
         2: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpExpert:Z
            ifeq 4
         3: .line 560
            getstatic org.graalvm.options.OptionCategory.EXPERT:Lorg/graalvm/options/OptionCategory;
            areturn
         4: .line 562
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/launcher/Launcher;

  protected java.nio.file.Path getGraalVMHome();
    descriptor: ()Ljava/nio/file/Path;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 567
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.home:Ljava/nio/file/Path;
            ifnonnull 2
         1: .line 568
            aload 0 /* this */
            invokestatic org.graalvm.home.HomeFinder.getInstance:()Lorg/graalvm/home/HomeFinder;
            invokevirtual org.graalvm.home.HomeFinder.getHomeFolder:()Ljava/nio/file/Path;
            putfield org.graalvm.launcher.Launcher.home:Ljava/nio/file/Path;
         2: .line 570
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.home:Ljava/nio/file/Path;
            areturn
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/launcher/Launcher;

  protected final java.nio.file.Path getGraalVMBinaryPath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/nio/file/Path;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=13, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String binaryName
         0: .line 581
            aload 0 /* this */
            aload 1 /* binaryName */
            invokevirtual org.graalvm.launcher.Launcher.executableNames:(Ljava/lang/String;)[Ljava/lang/String;
            astore 2 /* executableNames */
        start local 2 // java.lang.String[] executableNames
         1: .line 582
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.getGraalVMHome:()Ljava/nio/file/Path;
            astore 3 /* graalVMHome */
        start local 3 // java.nio.file.Path graalVMHome
         2: .line 583
            aload 3 /* graalVMHome */
            ifnonnull 4
         3: .line 584
            aload 0 /* this */
            ldc "Cannot exec to GraalVM binary: could not find GraalVM home"
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         4: .line 586
      StackMap locals: java.lang.String[] java.nio.file.Path
      StackMap stack:
            aload 2 /* executableNames */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 17
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.lang.String[] java.nio.file.Path top int int java.lang.String[]
      StackMap stack:
         5: aload 7
            iload 5
            aaload
            astore 4 /* executableName */
        start local 4 // java.lang.String executableName
         6: .line 587
            iconst_2
            anewarray java.nio.file.Path
            dup
            iconst_0
         7: .line 588
            aload 3 /* graalVMHome */
            ldc "bin"
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            aload 4 /* executableName */
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            aastore
            dup
            iconst_1
         8: .line 589
            aload 3 /* graalVMHome */
            ldc "jre"
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            ldc "bin"
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            aload 4 /* executableName */
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            aastore
         9: .line 587
            astore 8 /* execPaths */
        start local 8 // java.nio.file.Path[] execPaths
        10: .line 591
            aload 8 /* execPaths */
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 15
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.lang.String[] java.nio.file.Path java.lang.String int int java.lang.String[] java.nio.file.Path[] top int int java.nio.file.Path[]
      StackMap stack:
        11: aload 12
            iload 10
            aaload
            astore 9 /* execPath */
        start local 9 // java.nio.file.Path execPath
        12: .line 592
            aload 9 /* execPath */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 14
        13: .line 593
            aload 9 /* execPath */
            areturn
        end local 9 // java.nio.file.Path execPath
        14: .line 591
      StackMap locals:
      StackMap stack:
            iinc 10 1
      StackMap locals:
      StackMap stack:
        15: iload 10
            iload 11
            if_icmplt 11
        end local 8 // java.nio.file.Path[] execPaths
        end local 4 // java.lang.String executableName
        16: .line 586
            iinc 5 1
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.lang.String[] java.nio.file.Path top int int java.lang.String[]
      StackMap stack:
        17: iload 5
            iload 6
            if_icmplt 5
        18: .line 597
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Cannot exec to GraalVM binary: could not find a '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* binaryName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' executable"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 3 // java.nio.file.Path graalVMHome
        end local 2 // java.lang.String[] executableNames
        end local 1 // java.lang.String binaryName
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   19     0             this  Lorg/graalvm/launcher/Launcher;
            0   19     1       binaryName  Ljava/lang/String;
            1   19     2  executableNames  [Ljava/lang/String;
            2   19     3      graalVMHome  Ljava/nio/file/Path;
            6   16     4   executableName  Ljava/lang/String;
           10   16     8        execPaths  [Ljava/nio/file/Path;
           12   14     9         execPath  Ljava/nio/file/Path;
    MethodParameters:
            Name  Flags
      binaryName  

  protected boolean runLauncherAction();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 609
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.help:Z
            ifne 3
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpExpert:Z
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpInternal:Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpVM:Z
            ifeq 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* printDefaultHelp */
        start local 1 // boolean printDefaultHelp
         5: .line 610
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.getHelpCategory:()Lorg/graalvm/options/OptionCategory;
            astore 2 /* hc */
        start local 2 // org.graalvm.options.OptionCategory hc
         6: .line 611
            iload 1 /* printDefaultHelp */
            ifeq 8
         7: .line 612
            aload 0 /* this */
            aload 2 /* hc */
            invokevirtual org.graalvm.launcher.Launcher.printDefaultHelp:(Lorg/graalvm/options/OptionCategory;)V
         8: .line 614
      StackMap locals: int org.graalvm.options.OptionCategory
      StackMap stack:
            aload 0 /* this */
            aload 2 /* hc */
            invokevirtual org.graalvm.launcher.Launcher.maybePrintAdditionalHelp:(Lorg/graalvm/options/OptionCategory;)V
         9: .line 616
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpVM:Z
            ifeq 14
        10: .line 617
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            ifnonnull 13
        11: .line 618
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.printJvmHelp:()V
        12: .line 619
            goto 14
        13: .line 620
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            invokevirtual org.graalvm.launcher.Launcher$Native.printNativeHelp:()V
        14: .line 624
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* printDefaultHelp */
            invokevirtual org.graalvm.launcher.Launcher.printAllOtherHelpCategories:(Z)Z
            ireturn
        end local 2 // org.graalvm.options.OptionCategory hc
        end local 1 // boolean printDefaultHelp
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lorg/graalvm/launcher/Launcher;
            5   15     1  printDefaultHelp  Z
            6   15     2                hc  Lorg/graalvm/options/OptionCategory;

  protected void printDefaultHelp(org.graalvm.options.OptionCategory);
    descriptor: (Lorg/graalvm/options/OptionCategory;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // org.graalvm.options.OptionCategory printCategory
         0: .line 635
            getstatic org.graalvm.launcher.Launcher.SHELL_SCRIPT_LAUNCHER:Z
            ifeq 1
            getstatic org.graalvm.launcher.Launcher$VMType.JVM:Lorg/graalvm/launcher/Launcher$VMType;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.getDefaultVMType:()Lorg/graalvm/launcher/Launcher$VMType;
      StackMap locals:
      StackMap stack: org.graalvm.launcher.Launcher$VMType
         2: astore 2 /* defaultVMType */
        start local 2 // org.graalvm.launcher.Launcher$VMType defaultVMType
         3: .line 637
            aload 0 /* this */
            aload 1 /* printCategory */
            invokevirtual org.graalvm.launcher.Launcher.printHelp:(Lorg/graalvm/options/OptionCategory;)V
         4: .line 638
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         5: .line 639
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            ldc "Runtime options:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 641
            aload 0 /* this */
            bipush 45
            invokevirtual org.graalvm.launcher.Launcher.setOptionIndent:(I)V
         7: .line 642
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.canPolyglot:()Z
            ifeq 9
         8: .line 643
            aload 0 /* this */
            ldc "--polyglot"
            ldc "Run with all other guest languages accessible."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 645
      StackMap locals: org.graalvm.launcher.Launcher$VMType
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher.SHELL_SCRIPT_LAUNCHER:Z
            ifne 13
        10: .line 646
            aload 0 /* this */
            ldc "--native"
            new java.lang.StringBuilder
            dup
            ldc "Run using the native launcher with limited access to Java libraries"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* defaultVMType */
            getstatic org.graalvm.launcher.Launcher$VMType.Native:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpne 11
            ldc " (default)"
            goto 12
      StackMap locals: org.graalvm.launcher.Launcher org.graalvm.options.OptionCategory org.graalvm.launcher.Launcher$VMType
      StackMap stack: org.graalvm.launcher.Launcher java.lang.String java.lang.StringBuilder
        11: ldc ""
      StackMap locals: org.graalvm.launcher.Launcher org.graalvm.options.OptionCategory org.graalvm.launcher.Launcher$VMType
      StackMap stack: org.graalvm.launcher.Launcher java.lang.String java.lang.StringBuilder java.lang.String
        12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        13: .line 648
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifne 17
        14: .line 649
            aload 0 /* this */
            ldc "--jvm"
            new java.lang.StringBuilder
            dup
            ldc "Run on the Java Virtual Machine with access to Java libraries"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* defaultVMType */
            getstatic org.graalvm.launcher.Launcher$VMType.JVM:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpne 15
            ldc " (default)"
            goto 16
      StackMap locals: org.graalvm.launcher.Launcher org.graalvm.options.OptionCategory org.graalvm.launcher.Launcher$VMType
      StackMap stack: org.graalvm.launcher.Launcher java.lang.String java.lang.StringBuilder
        15: ldc ""
      StackMap locals: org.graalvm.launcher.Launcher org.graalvm.options.OptionCategory org.graalvm.launcher.Launcher$VMType
      StackMap stack: org.graalvm.launcher.Launcher java.lang.String java.lang.StringBuilder java.lang.String
        16: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        17: .line 652
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "--vm.[option]"
            ldc "Pass options to the host VM. To see available options, use '--help:vm'."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        18: .line 653
            aload 0 /* this */
            ldc "--log.file=<String>"
            ldc "Redirect guest languages logging into a given file."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        19: .line 654
            aload 0 /* this */
            ldc "--log.[logger].level=<String>"
            ldc "Set language log level to OFF, SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST or ALL."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        20: .line 655
            aload 0 /* this */
            ldc "--help"
            ldc "Print this help message."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        21: .line 656
            aload 0 /* this */
            ldc "--help:vm"
            ldc "Print options for the host VM."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        22: .line 658
            return
        end local 2 // org.graalvm.launcher.Launcher$VMType defaultVMType
        end local 1 // org.graalvm.options.OptionCategory printCategory
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lorg/graalvm/launcher/Launcher;
            0   23     1  printCategory  Lorg/graalvm/options/OptionCategory;
            3   23     2  defaultVMType  Lorg/graalvm/launcher/Launcher$VMType;
    MethodParameters:
               Name  Flags
      printCategory  

  protected void printOtherHelpCategory(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String kind
        start local 2 // java.lang.String option
         0: .line 668
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
            aload 1 /* kind */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 669
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
            aload 2 /* option */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 670
            return
        end local 2 // java.lang.String option
        end local 1 // java.lang.String kind
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/launcher/Launcher;
            0    3     1    kind  Ljava/lang/String;
            0    3     2  option  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      kind    
      option  

  private boolean printAllOtherHelpCategories(boolean);
    descriptor: (Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // boolean printHelp
         0: .line 673
            iload 1 /* printHelp */
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpVM:Z
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* print */
        start local 2 // boolean print
         3: .line 674
            iload 2 /* print */
            ifne 5
         4: .line 675
            iconst_0
            ireturn
         5: .line 677
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
         6: .line 678
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.kindAndCategory:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         7: goto 11
         8: .line 679
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* kind */
        start local 4 // java.lang.String kind
         9: .line 680
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* opt */
        start local 5 // java.lang.String opt
        10: .line 681
            aload 0 /* this */
            aload 4 /* kind */
            aload 5 /* opt */
            invokevirtual org.graalvm.launcher.Launcher.printOtherHelpCategories0:(Ljava/lang/String;Ljava/lang/String;)V
        end local 5 // java.lang.String opt
        end local 4 // java.lang.String kind
        11: .line 678
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 3 // java.util.Iterator it
        12: .line 683
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            ldc "See http://www.graalvm.org for more information."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 684
            iconst_1
            ireturn
        end local 2 // boolean print
        end local 1 // boolean printHelp
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Lorg/graalvm/launcher/Launcher;
            0   14     1  printHelp  Z
            3   14     2      print  Z
            7   12     3         it  Ljava/util/Iterator<Ljava/lang/String;>;
            9   11     4       kind  Ljava/lang/String;
           10   11     5        opt  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      printHelp  

  private void printOtherHelpCategories0(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String kind
        start local 2 // java.lang.String option
         0: .line 688
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpExpert:Z
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpInternal:Z
            ifeq 2
         1: .line 689
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Use '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* option */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' to list user "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " options."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 691
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpExpert:Z
            ifne 4
         3: .line 692
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Use '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* option */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " --help:expert' to list expert "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " options."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 694
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.helpInternal:Z
            ifne 6
         5: .line 695
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Use '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* option */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " --help:internal' to list internal "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " options."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 697
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String option
        end local 1 // java.lang.String kind
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/graalvm/launcher/Launcher;
            0    7     1    kind  Ljava/lang/String;
            0    7     2  option  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      kind    
      option  

  static java.lang.String optionsTitle(java.lang.String, org.graalvm.options.OptionCategory);
    descriptor: (Ljava/lang/String;Lorg/graalvm/options/OptionCategory;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.String kind
        start local 1 // org.graalvm.options.OptionCategory optionCategory
         0: .line 701
            invokestatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$options$OptionCategory:()[I
            aload 1 /* optionCategory */
            invokevirtual org.graalvm.options.OptionCategory.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 1
                    2: 3
                    3: 5
              default: 7
          }
         1: .line 703
      StackMap locals:
      StackMap stack:
            ldc "User "
            astore 2 /* category */
        start local 2 // java.lang.String category
         2: .line 704
            goto 8
        end local 2 // java.lang.String category
         3: .line 706
      StackMap locals:
      StackMap stack:
            ldc "Expert "
            astore 2 /* category */
        start local 2 // java.lang.String category
         4: .line 707
            goto 8
        end local 2 // java.lang.String category
         5: .line 709
      StackMap locals:
      StackMap stack:
            ldc "Internal "
            astore 2 /* category */
        start local 2 // java.lang.String category
         6: .line 710
            goto 8
        end local 2 // java.lang.String category
         7: .line 712
      StackMap locals:
      StackMap stack:
            ldc ""
            astore 2 /* category */
        start local 2 // java.lang.String category
         8: .line 713
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
         9: .line 715
            aload 2 /* category */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " options:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.String category
        end local 1 // org.graalvm.options.OptionCategory optionCategory
        end local 0 // java.lang.String kind
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            kind  Ljava/lang/String;
            0   10     1  optionCategory  Lorg/graalvm/options/OptionCategory;
            2    3     2        category  Ljava/lang/String;
            4    5     2        category  Ljava/lang/String;
            6    7     2        category  Ljava/lang/String;
            8   10     2        category  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      kind            
      optionCategory  

  protected final void parseUnrecognizedOptions(java.lang.String, java.util.Map<java.lang.String, java.lang.String>, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Ljava/util/List;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String defaultOptionPrefix
        start local 2 // java.util.Map polyglotOptions
        start local 3 // java.util.List unrecognizedArgs
         0: .line 728
            iconst_0
            istore 4 /* experimentalOptions */
        start local 4 // boolean experimentalOptions
         1: .line 730
            aload 3 /* unrecognizedArgs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 10
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.util.Map java.util.List int top java.util.Iterator
      StackMap stack:
         2: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* arg */
        start local 5 // java.lang.String arg
         3: .line 731
            aload 5 /* arg */
            dup
            astore 7
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 3
          -1645606254: 4
           -406072231: 5
            512369823: 6
              default: 10
          }
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.util.Map java.util.List int java.lang.String java.util.Iterator java.lang.String
      StackMap stack:
         4: aload 7
            ldc "--experimental-options=true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 10
      StackMap locals:
      StackMap stack:
         5: aload 7
            ldc "--experimental-options"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 10
      StackMap locals:
      StackMap stack:
         6: aload 7
            ldc "--experimental-options=false"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 10
         7: .line 734
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* experimentalOptions */
         8: .line 735
            goto 10
         9: .line 737
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* experimentalOptions */
        end local 5 // java.lang.String arg
        10: .line 730
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String java.util.Map java.util.List int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        11: .line 743
            aload 3 /* unrecognizedArgs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 15
      StackMap locals:
      StackMap stack:
        12: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* arg */
        start local 5 // java.lang.String arg
        13: .line 744
            aload 0 /* this */
            aload 1 /* defaultOptionPrefix */
            aload 2 /* polyglotOptions */
            iload 4 /* experimentalOptions */
            aload 5 /* arg */
            invokevirtual org.graalvm.launcher.Launcher.parseCommonOption:(Ljava/lang/String;Ljava/util/Map;ZLjava/lang/String;)Z
            ifne 15
        14: .line 745
            aload 0 /* this */
            aload 1 /* defaultOptionPrefix */
            aload 2 /* polyglotOptions */
            iload 4 /* experimentalOptions */
            aload 5 /* arg */
            invokevirtual org.graalvm.launcher.Launcher.parsePolyglotOption:(Ljava/lang/String;Ljava/util/Map;ZLjava/lang/String;)V
        end local 5 // java.lang.String arg
        15: .line 743
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        16: .line 748
            return
        end local 4 // boolean experimentalOptions
        end local 3 // java.util.List unrecognizedArgs
        end local 2 // java.util.Map polyglotOptions
        end local 1 // java.lang.String defaultOptionPrefix
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   17     0                 this  Lorg/graalvm/launcher/Launcher;
            0   17     1  defaultOptionPrefix  Ljava/lang/String;
            0   17     2      polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   17     3     unrecognizedArgs  Ljava/util/List<Ljava/lang/String;>;
            1   17     4  experimentalOptions  Z
            3   10     5                  arg  Ljava/lang/String;
           13   15     5                  arg  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
                     Name  Flags
      defaultOptionPrefix  
      polyglotOptions      
      unrecognizedArgs     

  protected boolean parseCommonOption(java.lang.String, java.util.Map<java.lang.String, java.lang.String>, boolean, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/util/Map;ZLjava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=6, args_size=5
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String defaultOptionPrefix
        start local 2 // java.util.Map polyglotOptions
        start local 3 // boolean experimentalOptions
        start local 4 // java.lang.String arg
         0: .line 765
            aload 4 /* arg */
            dup
            astore 5
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 8
          -2103202832: 1
          -1645606254: 2
          -1549417862: 3
           -740735261: 4
           -671296202: 5
           -406072231: 6
            512369823: 7
           1333069025: 8
              default: 20
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 5
            ldc "--help:vm"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 18
            goto 20
      StackMap locals:
      StackMap stack:
         2: aload 5
            ldc "--experimental-options=true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 21
            goto 20
      StackMap locals:
      StackMap stack:
         3: aload 5
            ldc "--help:debug"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
            goto 20
      StackMap locals:
      StackMap stack:
         4: aload 5
            ldc "--help:expert"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
            goto 20
      StackMap locals:
      StackMap stack:
         5: aload 5
            ldc "--help:internal"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
            goto 20
      StackMap locals:
      StackMap stack:
         6: aload 5
            ldc "--experimental-options"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 21
            goto 20
      StackMap locals:
      StackMap stack:
         7: aload 5
            ldc "--experimental-options=false"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 21
            goto 20
      StackMap locals:
      StackMap stack:
         8: aload 5
            ldc "--help"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 20
         9: .line 767
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.launcher.Launcher.help:Z
        10: .line 768
            goto 21
        11: .line 770
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "--help:debug is deprecated, use --help:internal instead."
            invokevirtual org.graalvm.launcher.Launcher.warn:(Ljava/lang/String;)V
        12: .line 771
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.launcher.Launcher.helpInternal:Z
        13: .line 772
            goto 21
        14: .line 774
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.launcher.Launcher.helpInternal:Z
        15: .line 775
            goto 21
        16: .line 777
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.launcher.Launcher.helpExpert:Z
        17: .line 778
            goto 21
        18: .line 780
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.launcher.Launcher.helpVM:Z
        19: .line 781
            goto 21
        20: .line 788
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        21: .line 790
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // java.lang.String arg
        end local 3 // boolean experimentalOptions
        end local 2 // java.util.Map polyglotOptions
        end local 1 // java.lang.String defaultOptionPrefix
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   22     0                 this  Lorg/graalvm/launcher/Launcher;
            0   22     1  defaultOptionPrefix  Ljava/lang/String;
            0   22     2      polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   22     3  experimentalOptions  Z
            0   22     4                  arg  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;ZLjava/lang/String;)Z
    MethodParameters:
                     Name  Flags
      defaultOptionPrefix  
      polyglotOptions      
      experimentalOptions  
      arg                  

  void parsePolyglotOption(java.lang.String, java.util.Map<java.lang.String, java.lang.String>, boolean, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/util/Map;ZLjava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=14, args_size=5
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String defaultOptionPrefix
        start local 2 // java.util.Map polyglotOptions
        start local 3 // boolean experimentalOptions
        start local 4 // java.lang.String arg
         0: .line 799
            aload 4 /* arg */
            ldc "--jvm"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         1: .line 800
            invokestatic org.graalvm.launcher.Launcher.isAOT:()Z
            ifeq 3
         2: .line 801
            aload 0 /* this */
            ldc "should not reach here: jvm option failed to switch to JVM"
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         3: .line 803
      StackMap locals:
      StackMap stack:
            return
         4: .line 804
      StackMap locals:
      StackMap stack:
            aload 4 /* arg */
            ldc "--native"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         5: .line 805
            invokestatic org.graalvm.launcher.Launcher.isAOT:()Z
            ifne 7
         6: .line 806
            aload 0 /* this */
            ldc "native options are not supported on the JVM"
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
         7: .line 808
      StackMap locals:
      StackMap stack:
            return
         8: .line 809
      StackMap locals:
      StackMap stack:
            aload 4 /* arg */
            ldc "--vm."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 10
            aload 4 /* arg */
            invokevirtual java.lang.String.length:()I
            ldc "--vm."
            invokevirtual java.lang.String.length:()I
            if_icmple 10
         9: .line 817
            return
        10: .line 820
      StackMap locals:
      StackMap stack:
            aload 4 /* arg */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmple 11
            aload 4 /* arg */
            ldc "--"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 821
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* arg */
            invokevirtual org.graalvm.launcher.Launcher.abortUnrecognizedArgument:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        12: .line 823
      StackMap locals:
      StackMap stack:
            aload 4 /* arg */
            bipush 61
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* eqIdx */
        start local 5 // int eqIdx
        13: .line 826
            iload 5 /* eqIdx */
            ifge 17
        14: .line 827
            aload 4 /* arg */
            iconst_2
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* key */
        start local 6 // java.lang.String key
        15: .line 828
            aconst_null
            astore 7 /* value */
        start local 7 // java.lang.String value
        16: .line 829
            goto 19
        end local 7 // java.lang.String value
        end local 6 // java.lang.String key
        17: .line 830
      StackMap locals: int
      StackMap stack:
            aload 4 /* arg */
            iconst_2
            iload 5 /* eqIdx */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 6 /* key */
        start local 6 // java.lang.String key
        18: .line 831
            aload 4 /* arg */
            iload 5 /* eqIdx */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 7 /* value */
        start local 7 // java.lang.String value
        19: .line 834
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 7 /* value */
            ifnonnull 21
        20: .line 835
            ldc "true"
            astore 7 /* value */
        21: .line 837
      StackMap locals:
      StackMap stack:
            aload 6 /* key */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 8 /* index */
        start local 8 // int index
        22: .line 838
            aload 6 /* key */
            astore 9 /* group */
        start local 9 // java.lang.String group
        23: .line 839
            iload 8 /* index */
            iflt 25
        24: .line 840
            aload 9 /* group */
            iconst_0
            iload 8 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9 /* group */
        25: .line 842
      StackMap locals: int java.lang.String
      StackMap stack:
            ldc "log"
            aload 9 /* group */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 36
        26: .line 843
            aload 6 /* key */
            ldc ".level"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 33
        27: .line 845
            aload 7 /* value */
            invokestatic java.util.logging.Level.parse:(Ljava/lang/String;)Ljava/util/logging/Level;
            pop
        28: .line 846
            aload 2 /* polyglotOptions */
            aload 6 /* key */
            aload 7 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 847
            goto 32
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        30: astore 10 /* e */
        start local 10 // java.lang.IllegalArgumentException e
        31: .line 848
            aload 0 /* this */
            ldc "Invalid log level %s specified. %s'"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* arg */
            aastore
            dup
            iconst_1
            aload 10 /* e */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 10 // java.lang.IllegalArgumentException e
        32: .line 850
      StackMap locals:
      StackMap stack:
            return
        33: .line 851
      StackMap locals:
      StackMap stack:
            aload 6 /* key */
            ldc "log.file"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 36
        34: .line 852
            aload 0 /* this */
            aload 7 /* value */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            putfield org.graalvm.launcher.Launcher.logFile:Ljava/nio/file/Path;
        35: .line 853
            return
        36: .line 856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* group */
            aload 6 /* key */
            invokevirtual org.graalvm.launcher.Launcher.findOptionDescriptor:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor;
            astore 10 /* descriptor */
        start local 10 // org.graalvm.options.OptionDescriptor descriptor
        37: .line 857
            aload 10 /* descriptor */
            ifnonnull 42
        38: .line 858
            aload 1 /* defaultOptionPrefix */
            ifnull 40
        39: .line 859
            aload 0 /* this */
            aload 1 /* defaultOptionPrefix */
            new java.lang.StringBuilder
            dup
            aload 1 /* defaultOptionPrefix */
            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 6 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.findOptionDescriptor:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor;
            astore 10 /* descriptor */
        40: .line 861
      StackMap locals: org.graalvm.options.OptionDescriptor
      StackMap stack:
            aload 10 /* descriptor */
            ifnonnull 42
        41: .line 862
            aload 0 /* this */
            aload 4 /* arg */
            invokevirtual org.graalvm.launcher.Launcher.abortUnrecognizedArgument:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        42: .line 866
      StackMap locals:
      StackMap stack:
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getKey:()Lorg/graalvm/options/OptionKey;
            invokevirtual org.graalvm.options.OptionKey.getType:()Lorg/graalvm/options/OptionType;
            aload 7 /* value */
            invokevirtual org.graalvm.options.OptionType.convert:(Ljava/lang/String;)Ljava/lang/Object;
            pop
        43: .line 867
            goto 46
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        44: astore 11 /* e */
        start local 11 // java.lang.IllegalArgumentException e
        45: .line 868
            aload 0 /* this */
            ldc "Invalid argument %s specified. %s'"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* arg */
            aastore
            dup
            iconst_1
            aload 11 /* e */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        end local 11 // java.lang.IllegalArgumentException e
        46: .line 870
      StackMap locals:
      StackMap stack:
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.isDeprecated:()Z
            ifeq 54
        47: .line 871
            ldc "Option '%s' is deprecated and might be removed from future versions."
            astore 11 /* messageFormat */
        start local 11 // java.lang.String messageFormat
        48: .line 872
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getDeprecationMessage:()Ljava/lang/String;
            astore 12 /* deprecationMessage */
        start local 12 // java.lang.String deprecationMessage
        49: .line 874
            aload 12 /* deprecationMessage */
            ifnull 52
        50: .line 875
            new java.lang.StringBuilder
            dup
            aload 11 /* messageFormat */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "%n%s"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 12 /* deprecationMessage */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 13 /* message */
        start local 13 // java.lang.String message
        51: .line 876
            goto 53
        end local 13 // java.lang.String message
        52: .line 877
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 11 /* messageFormat */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getName:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 13 /* message */
        start local 13 // java.lang.String message
        53: .line 879
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 13 /* message */
            invokevirtual org.graalvm.launcher.Launcher.warn:(Ljava/lang/String;)V
        end local 13 // java.lang.String message
        end local 12 // java.lang.String deprecationMessage
        end local 11 // java.lang.String messageFormat
        54: .line 881
      StackMap locals:
      StackMap stack:
            iload 3 /* experimentalOptions */
            ifne 58
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getStability:()Lorg/graalvm/options/OptionStability;
            getstatic org.graalvm.options.OptionStability.EXPERIMENTAL:Lorg/graalvm/options/OptionStability;
            if_acmpne 58
        55: .line 882
            aload 0 /* this */
            ldc "Option '%s' is experimental and must be enabled via '--experimental-options'%nDo not use experimental options in production environments."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        56: .line 883
            aload 4 /* arg */
            aastore
        57: .line 882
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        58: .line 886
      StackMap locals:
      StackMap stack:
            aload 2 /* polyglotOptions */
            aload 10 /* descriptor */
            invokevirtual org.graalvm.options.OptionDescriptor.getName:()Ljava/lang/String;
            aload 7 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        59: .line 887
            return
        end local 10 // org.graalvm.options.OptionDescriptor descriptor
        end local 9 // java.lang.String group
        end local 8 // int index
        end local 7 // java.lang.String value
        end local 6 // java.lang.String key
        end local 5 // int eqIdx
        end local 4 // java.lang.String arg
        end local 3 // boolean experimentalOptions
        end local 2 // java.util.Map polyglotOptions
        end local 1 // java.lang.String defaultOptionPrefix
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   60     0                 this  Lorg/graalvm/launcher/Launcher;
            0   60     1  defaultOptionPrefix  Ljava/lang/String;
            0   60     2      polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   60     3  experimentalOptions  Z
            0   60     4                  arg  Ljava/lang/String;
           13   60     5                eqIdx  I
           15   17     6                  key  Ljava/lang/String;
           18   60     6                  key  Ljava/lang/String;
           16   17     7                value  Ljava/lang/String;
           19   60     7                value  Ljava/lang/String;
           22   60     8                index  I
           23   60     9                group  Ljava/lang/String;
           31   32    10                    e  Ljava/lang/IllegalArgumentException;
           37   60    10           descriptor  Lorg/graalvm/options/OptionDescriptor;
           45   46    11                    e  Ljava/lang/IllegalArgumentException;
           48   54    11        messageFormat  Ljava/lang/String;
           49   54    12   deprecationMessage  Ljava/lang/String;
           51   52    13              message  Ljava/lang/String;
           53   54    13              message  Ljava/lang/String;
      Exception table:
        from    to  target  type
          27    29      30  Class java.lang.IllegalArgumentException
          42    43      44  Class java.lang.IllegalArgumentException
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;ZLjava/lang/String;)V
    MethodParameters:
                     Name  Flags
      defaultOptionPrefix  
      polyglotOptions      
      experimentalOptions  
      arg                  

  private java.util.Set<java.lang.String> collectAllArguments();
    descriptor: ()Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 890
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 1 /* options */
        start local 1 // java.util.Set options
         1: .line 891
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.graalvm.launcher.Launcher.collectArguments:(Ljava/util/Set;)V
         2: .line 892
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.canPolyglot:()Z
            ifeq 4
         3: .line 893
            aload 1 /* options */
            ldc "--polyglot"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 895
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifne 6
         5: .line 896
            aload 1 /* options */
            ldc "--jvm"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 898
      StackMap locals:
      StackMap stack:
            aload 1 /* options */
            ldc "--native"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 899
            aload 1 /* options */
            ldc "--help"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 900
            aload 1 /* options */
            ldc "--help:expert"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 901
            aload 1 /* options */
            ldc "--help:internal"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        10: .line 902
            aload 1 /* options */
            ldc "--help:vm"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 903
            aload 1 /* options */
            areturn
        end local 1 // java.util.Set options
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/graalvm/launcher/Launcher;
            1   12     1  options  Ljava/util/Set<Ljava/lang/String;>;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  private static java.util.List<java.lang.String> fuzzyMatch(java.util.Set<java.lang.String>, java.lang.String, float);
    descriptor: (Ljava/util/Set;Ljava/lang/String;F)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // java.util.Set arguments
        start local 1 // java.lang.String argument
        start local 2 // float threshold
         0: .line 910
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* matches */
        start local 3 // java.util.List matches
         1: .line 911
            aload 0 /* arguments */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: java.util.Set java.lang.String float java.util.List 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 912
            aload 4 /* arg */
            aload 1 /* argument */
            invokestatic org.graalvm.launcher.Launcher.stringSimilarity:(Ljava/lang/String;Ljava/lang/String;)F
            fstore 6 /* score */
        start local 6 // float score
         4: .line 913
            fload 6 /* score */
            fload 2 /* threshold */
            fcmpl
            iflt 6
         5: .line 914
            aload 3 /* matches */
            aload 4 /* arg */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // float score
        end local 4 // java.lang.String arg
         6: .line 911
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 917
            aload 3 /* matches */
            areturn
        end local 3 // java.util.List matches
        end local 2 // float threshold
        end local 1 // java.lang.String argument
        end local 0 // java.util.Set arguments
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0  arguments  Ljava/util/Set<Ljava/lang/String;>;
            0    8     1   argument  Ljava/lang/String;
            0    8     2  threshold  F
            1    8     3    matches  Ljava/util/List<Ljava/lang/String;>;
            3    6     4        arg  Ljava/lang/String;
            4    6     6      score  F
    Signature: (Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/String;F)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
           Name  Flags
      arguments  
      argument   
      threshold  

  private static float stringSimilarity(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)F
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.lang.String str1
        start local 1 // java.lang.String str2
         0: .line 926
            iconst_0
            istore 2 /* hit */
        start local 2 // int hit
         1: .line 927
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 11
         3: .line 928
      StackMap locals: int int
      StackMap stack:
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         4: goto 9
         5: .line 929
      StackMap locals: int
      StackMap stack:
            aload 0 /* str1 */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* str2 */
            iload 4 /* j */
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpne 8
            aload 0 /* str1 */
            iload 3 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* str2 */
            iload 4 /* j */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpne 8
         6: .line 930
            iinc 2 /* hit */ 1
         7: .line 931
            goto 10
         8: .line 928
      StackMap locals:
      StackMap stack:
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* j */
            aload 1 /* str2 */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            if_icmplt 5
        end local 4 // int j
        10: .line 927
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            aload 0 /* str1 */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            if_icmplt 3
        end local 3 // int i
        12: .line 935
            fconst_2
            iload 2 /* hit */
            i2f
            fmul
            aload 0 /* str1 */
            invokevirtual java.lang.String.length:()I
            aload 1 /* str2 */
            invokevirtual java.lang.String.length:()I
            iadd
            i2f
            fdiv
            freturn
        end local 2 // int hit
        end local 1 // java.lang.String str2
        end local 0 // java.lang.String str1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  str1  Ljava/lang/String;
            0   13     1  str2  Ljava/lang/String;
            1   13     2   hit  I
            2   12     3     i  I
            4   10     4     j  I
    MethodParameters:
      Name  Flags
      str1  
      str2  

  protected void launcherOption(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String option
        start local 2 // java.lang.String description
         0: .line 948
            aload 0 /* this */
            aload 1 /* option */
            aload 2 /* description */
            iconst_2
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.optionIndent:I
            invokevirtual org.graalvm.launcher.Launcher.printOption:(Ljava/lang/String;Ljava/lang/String;II)V
         1: .line 949
            return
        end local 2 // java.lang.String description
        end local 1 // java.lang.String option
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/graalvm/launcher/Launcher;
            0    2     1       option  Ljava/lang/String;
            0    2     2  description  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      option       
      description  

  private static java.lang.String spaces(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int length
         0: .line 952
            new java.lang.String
            dup
            iload 0 /* length */
            newarray 5
            invokespecial java.lang.String.<init>:([C)V
            iconst_0
            bipush 32
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            areturn
        end local 0 // int length
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  length  I
    MethodParameters:
        Name  Flags
      length  

  private static java.lang.String wrap(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.lang.String s
         0: .line 957
            new java.lang.StringBuilder
            dup
            aload 0 /* s */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 958
            iconst_0
            istore 2 /* cursor */
        start local 2 // int cursor
         2: .line 959
            goto 9
         3: .line 960
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* sb */
            ldc " "
            iload 2 /* cursor */
            bipush 120
            iadd
            invokevirtual java.lang.StringBuilder.lastIndexOf:(Ljava/lang/String;I)I
            istore 3 /* i */
        start local 3 // int i
         4: .line 961
            iload 3 /* i */
            iconst_m1
            if_icmpeq 5
            iload 3 /* i */
            iload 2 /* cursor */
            if_icmpge 6
         5: .line 962
      StackMap locals: int
      StackMap stack:
            aload 1 /* sb */
            ldc " "
            iload 2 /* cursor */
            bipush 120
            iadd
            invokevirtual java.lang.StringBuilder.indexOf:(Ljava/lang/String;I)I
            istore 3 /* i */
         6: .line 964
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            iconst_m1
            if_icmpeq 10
         7: .line 965
            aload 1 /* sb */
            iload 3 /* i */
            iload 3 /* i */
            iconst_1
            iadd
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 966
            iload 3 /* i */
            istore 2 /* cursor */
        end local 3 // int i
         9: .line 959
      StackMap locals:
      StackMap stack:
            iload 2 /* cursor */
            bipush 120
            iadd
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            if_icmplt 3
        10: .line 971
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int cursor
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0       s  Ljava/lang/String;
            1   11     1      sb  Ljava/lang/StringBuilder;
            2   11     2  cursor  I
            4    9     3       i  I
    MethodParameters:
      Name  Flags
      s     

  private void printOption(java.lang.String, java.lang.String, int, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=5
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String option
        start local 2 // java.lang.String description
        start local 3 // int indentStart
        start local 4 // int optionWidth
         0: .line 975
            iload 3 /* indentStart */
            invokestatic org.graalvm.launcher.Launcher.spaces:(I)Ljava/lang/String;
            astore 5 /* indent */
        start local 5 // java.lang.String indent
         1: .line 976
            aload 2 /* description */
            ifnull 2
            aload 2 /* description */
            goto 3
      StackMap locals: java.lang.String
      StackMap stack:
         2: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
         3: invokestatic org.graalvm.launcher.Launcher.wrap:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* desc */
        start local 6 // java.lang.String desc
         4: .line 977
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            astore 7 /* nl */
        start local 7 // java.lang.String nl
         5: .line 978
            aload 6 /* desc */
            aload 7 /* nl */
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 8 /* descLines */
        start local 8 // java.lang.String[] descLines
         6: .line 979
            aload 1 /* option */
            invokevirtual java.lang.String.length:()I
            iload 4 /* optionWidth */
            if_icmplt 9
            aload 2 /* description */
            ifnull 9
         7: .line 980
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 5 /* indent */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* option */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* nl */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* indent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* optionWidth */
            invokestatic org.graalvm.launcher.Launcher.spaces:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* descLines */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 981
            goto 10
         9: .line 982
      StackMap locals: java.lang.String java.lang.String java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 5 /* indent */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* option */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* optionWidth */
            aload 1 /* option */
            invokevirtual java.lang.String.length:()I
            isub
            invokestatic org.graalvm.launcher.Launcher.spaces:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* descLines */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 984
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 9 /* i */
        start local 9 // int i
        11: goto 14
        12: .line 985
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 5 /* indent */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* optionWidth */
            invokestatic org.graalvm.launcher.Launcher.spaces:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* descLines */
            iload 9 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 984
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 9 /* i */
            aload 8 /* descLines */
            arraylength
            if_icmplt 12
        end local 9 // int i
        15: .line 987
            return
        end local 8 // java.lang.String[] descLines
        end local 7 // java.lang.String nl
        end local 6 // java.lang.String desc
        end local 5 // java.lang.String indent
        end local 4 // int optionWidth
        end local 3 // int indentStart
        end local 2 // java.lang.String description
        end local 1 // java.lang.String option
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lorg/graalvm/launcher/Launcher;
            0   16     1       option  Ljava/lang/String;
            0   16     2  description  Ljava/lang/String;
            0   16     3  indentStart  I
            0   16     4  optionWidth  I
            1   16     5       indent  Ljava/lang/String;
            4   16     6         desc  Ljava/lang/String;
            5   16     7           nl  Ljava/lang/String;
            6   16     8    descLines  [Ljava/lang/String;
           11   15     9            i  I
    MethodParameters:
             Name  Flags
      option       
      description  
      indentStart  
      optionWidth  

  void printOption(org.graalvm.launcher.Launcher$PrintableOption);
    descriptor: (Lorg/graalvm/launcher/Launcher$PrintableOption;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // org.graalvm.launcher.Launcher$PrintableOption option
         0: .line 990
            aload 0 /* this */
            aload 1 /* option */
            iconst_2
            invokevirtual org.graalvm.launcher.Launcher.printOption:(Lorg/graalvm/launcher/Launcher$PrintableOption;I)V
         1: .line 991
            return
        end local 1 // org.graalvm.launcher.Launcher$PrintableOption option
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/launcher/Launcher;
            0    2     1  option  Lorg/graalvm/launcher/Launcher$PrintableOption;
    MethodParameters:
        Name  Flags
      option  

  void printOption(org.graalvm.launcher.Launcher$PrintableOption, int);
    descriptor: (Lorg/graalvm/launcher/Launcher$PrintableOption;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // org.graalvm.launcher.Launcher$PrintableOption option
        start local 2 // int indentation
         0: .line 994
            aload 0 /* this */
            aload 1 /* option */
            getfield org.graalvm.launcher.Launcher$PrintableOption.option:Ljava/lang/String;
            aload 1 /* option */
            getfield org.graalvm.launcher.Launcher$PrintableOption.description:Ljava/lang/String;
            iload 2 /* indentation */
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.optionIndent:I
            invokevirtual org.graalvm.launcher.Launcher.printOption:(Ljava/lang/String;Ljava/lang/String;II)V
         1: .line 995
            return
        end local 2 // int indentation
        end local 1 // org.graalvm.launcher.Launcher$PrintableOption option
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/graalvm/launcher/Launcher;
            0    2     1       option  Lorg/graalvm/launcher/Launcher$PrintableOption;
            0    2     2  indentation  I
    MethodParameters:
             Name  Flags
      option       
      indentation  

  void printOptions(java.util.List<org.graalvm.launcher.Launcher$PrintableOption>, java.lang.String, );
    descriptor: (Ljava/util/List;Ljava/lang/String;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List options
        start local 2 // java.lang.String title
        start local 3 // int indentation
         0: .line 1013
            aload 1 /* options */
            invokestatic java.util.Collections.sort:(Ljava/util/List;)V
         1: .line 1014
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            aload 2 /* title */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 1015
            aload 1 /* options */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.lang.String int top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.launcher.Launcher$PrintableOption
            astore 4 /* option */
        start local 4 // org.graalvm.launcher.Launcher$PrintableOption option
         4: .line 1016
            aload 0 /* this */
            aload 4 /* option */
            iload 3 /* indentation */
            invokevirtual org.graalvm.launcher.Launcher.printOption:(Lorg/graalvm/launcher/Launcher$PrintableOption;I)V
        end local 4 // org.graalvm.launcher.Launcher$PrintableOption option
         5: .line 1015
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1018
            return
        end local 3 // int indentation
        end local 2 // java.lang.String title
        end local 1 // java.util.List options
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lorg/graalvm/launcher/Launcher;
            0    7     1      options  Ljava/util/List<Lorg/graalvm/launcher/Launcher$PrintableOption;>;
            0    7     2        title  Ljava/lang/String;
            0    7     3  indentation  I
            4    5     4       option  Lorg/graalvm/launcher/Launcher$PrintableOption;
    Signature: (Ljava/util/List<Lorg/graalvm/launcher/Launcher$PrintableOption;>;Ljava/lang/String;I)V
    MethodParameters:
             Name  Flags
      options      
      title        
      indentation  

  protected final void println(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String l
         0: .line 1057
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            aload 1 /* l */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 1058
            return
        end local 1 // java.lang.String l
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/launcher/Launcher;
            0    2     1     l  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      l     

  protected final void println(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0094) ACC_PROTECTED, ACC_FINAL, ACC_VARARGS
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String[] lines
         0: .line 1068
            aload 1 /* lines */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 4
      StackMap locals: org.graalvm.launcher.Launcher java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* l */
        start local 2 // java.lang.String l
         2: .line 1069
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.out:Ljava/io/PrintStream;
            aload 2 /* l */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 2 // java.lang.String l
         3: .line 1068
            iinc 3 1
      StackMap locals:
      StackMap stack:
         4: iload 3
            iload 4
            if_icmplt 1
         5: .line 1071
            return
        end local 1 // java.lang.String[] lines
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/graalvm/launcher/Launcher;
            0    6     1  lines  [Ljava/lang/String;
            2    3     2      l  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      lines  

  private void printJvmHelp();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 1074
            aload 0 /* this */
            ldc "JVM options:"
            invokevirtual org.graalvm.launcher.Launcher.println:(Ljava/lang/String;)V
         1: .line 1075
            new java.lang.StringBuilder
            dup
            ldc "Manage the classpath for Java libraries that you can access from guest languages ('"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' separated list)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* classpathHelp */
        start local 1 // java.lang.String classpathHelp
         2: .line 1076
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "--vm.classpath=<path>["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "path...]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* classpathHelp */
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 1077
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "--vm.cp=<path>["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "path...]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* classpathHelp */
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 1078
            aload 0 /* this */
            ldc "--vm.D<name>=<value>"
            ldc "Set a system property"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1079
            aload 0 /* this */
            ldc "--vm.esa"
            ldc "Enable system assertions"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 1080
            aload 0 /* this */
            ldc "--vm.ea[:<packagename>...|:<classname>]"
            ldc "Enable assertions with specified granularity"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1081
            aload 0 /* this */
            ldc "--vm.agentlib:<libname>[=<options>]"
            ldc "Load native agent library <libname>"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         8: .line 1082
            aload 0 /* this */
            ldc "--vm.agentpath:<pathname>[=<options>]"
            ldc "Load native agent library by full pathname"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 1083
            aload 0 /* this */
            ldc "--vm.javaagent:<jarpath>[=<options>]"
            ldc "Load Java programming language agent"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 1084
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "--vm.Xbootclasspath/a:<path>["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "path...]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "Append classpath entries to the JVM's boot classpath ('"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' separated list)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        11: .line 1085
            aload 0 /* this */
            ldc "--vm.Xmx<size>"
            ldc "Set maximum Java heap size"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        12: .line 1086
            aload 0 /* this */
            ldc "--vm.Xms<size>"
            ldc "Set initial Java heap size"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        13: .line 1087
            aload 0 /* this */
            ldc "--vm.Xss<size>"
            ldc "Set java thread stack size"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
        14: .line 1088
            return
        end local 1 // java.lang.String classpathHelp
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lorg/graalvm/launcher/Launcher;
            2   15     1  classpathHelp  Ljava/lang/String;

  private void printBasicNativeHelp();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.launcher.Launcher this
         0: .line 1091
            aload 0 /* this */
            ldc "--vm.D<property>=<value>"
            ldc "Sets a system property"
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1093
            aload 0 /* this */
            ldc "--vm.Xmn<value>"
            ldc "Sets the maximum size of the young generation, in bytes. Default: 256MB."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 1094
            aload 0 /* this */
            ldc "--vm.Xmx<value>"
            ldc "Sets the maximum size of the heap, in bytes. Default: MaximumHeapSizePercent * physical memory."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 1095
            aload 0 /* this */
            ldc "--vm.Xms<value>"
            ldc "Sets the minimum size of the heap, in bytes. Default: 2 * maximum young generation size."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 1096
            aload 0 /* this */
            ldc "--vm.Xss<value>"
            ldc "Sets the size of each thread stack, in bytes. Default: OS-dependent."
            invokevirtual org.graalvm.launcher.Launcher.launcherOption:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1097
            return
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/launcher/Launcher;

  protected final void maybeNativeExec(java.util.List<java.lang.String>, boolean, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/util/List;ZLjava/util/Map;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List args
        start local 2 // boolean isPolyglotLauncher
        start local 3 // java.util.Map polyglotOptions
         0: .line 1104
            aload 0 /* this */
            aload 1 /* args */
            aload 1 /* args */
            iload 2 /* isPolyglotLauncher */
            invokevirtual org.graalvm.launcher.Launcher.maybeNativeExec:(Ljava/util/List;Ljava/util/List;Z)V
         1: .line 1105
            return
        end local 3 // java.util.Map polyglotOptions
        end local 2 // boolean isPolyglotLauncher
        end local 1 // java.util.List args
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/graalvm/launcher/Launcher;
            0    2     1                args  Ljava/util/List<Ljava/lang/String;>;
            0    2     2  isPolyglotLauncher  Z
            0    2     3     polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/util/List<Ljava/lang/String;>;ZLjava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                    Name  Flags
      args                
      isPolyglotLauncher  
      polyglotOptions     

  protected final void maybeNativeExec(java.util.List<java.lang.String>, java.util.List<java.lang.String>, );
    descriptor: (Ljava/util/List;Ljava/util/List;Z)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List originalArgs
        start local 2 // java.util.List unrecognizedArgs
        start local 3 // boolean isPolyglotLauncher
         0: .line 1124
            getstatic org.graalvm.launcher.Launcher.IS_AOT:Z
            ifne 2
         1: .line 1125
            return
         2: .line 1127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* originalArgs */
            aload 2 /* unrecognizedArgs */
            iload 3 /* isPolyglotLauncher */
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.getDefaultVMType:()Lorg/graalvm/launcher/Launcher$VMType;
            invokevirtual org.graalvm.launcher.Launcher.maybeExec:(Ljava/util/List;Ljava/util/List;ZLorg/graalvm/launcher/Launcher$VMType;)V
         3: .line 1128
            return
        end local 3 // boolean isPolyglotLauncher
        end local 2 // java.util.List unrecognizedArgs
        end local 1 // java.util.List originalArgs
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/graalvm/launcher/Launcher;
            0    4     1        originalArgs  Ljava/util/List<Ljava/lang/String;>;
            0    4     2    unrecognizedArgs  Ljava/util/List<Ljava/lang/String;>;
            0    4     3  isPolyglotLauncher  Z
    Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;Z)V
    MethodParameters:
                    Name  Flags
      originalArgs        
      unrecognizedArgs    
      isPolyglotLauncher  

  void maybeExec(java.util.List<java.lang.String>, java.util.List<java.lang.String>, boolean, org.graalvm.launcher.Launcher$VMType);
    descriptor: (Ljava/util/List;Ljava/util/List;ZLorg/graalvm/launcher/Launcher$VMType;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=14, args_size=5
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List originalArgs
        start local 2 // java.util.List unrecognizedArgs
        start local 3 // boolean isPolyglotLauncher
        start local 4 // org.graalvm.launcher.Launcher$VMType defaultVmType
         0: .line 1131
            getstatic org.graalvm.launcher.Launcher.$assertionsDisabled:Z
            ifne 2
            invokestatic org.graalvm.launcher.Launcher.isAOT:()Z
            ifne 2
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1132
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* vmType */
        start local 5 // org.graalvm.launcher.Launcher$VMType vmType
         3: .line 1133
            iconst_0
            istore 6 /* polyglot */
        start local 6 // boolean polyglot
         4: .line 1134
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* jvmArgs */
        start local 7 // java.util.List jvmArgs
         5: .line 1135
            new java.util.ArrayList
            dup
            aload 1 /* originalArgs */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 8 /* applicationArgs */
        start local 8 // java.util.List applicationArgs
         6: .line 1137
            aload 2 /* unrecognizedArgs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9 /* iterator */
        start local 9 // java.util.Iterator iterator
         7: .line 1138
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* vmOptions */
        start local 10 // java.util.List vmOptions
         8: .line 1139
            goto 40
         9: .line 1140
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List
      StackMap stack:
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 11 /* arg */
        start local 11 // java.lang.String arg
        10: .line 1141
            aload 11 /* arg */
            ldc "--jvm"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        11: .line 1142
            aload 5 /* vmType */
            getstatic org.graalvm.launcher.Launcher$VMType.Native:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpne 13
        12: .line 1143
            aload 0 /* this */
            ldc "'--jvm' and '--native' options can not be used together."
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        13: .line 1145
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifeq 15
        14: .line 1146
            aload 0 /* this */
            ldc "'--jvm' is only supported when this launcher is part of a GraalVM."
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        15: .line 1148
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher$VMType.JVM:Lorg/graalvm/launcher/Launcher$VMType;
            astore 5 /* vmType */
        16: .line 1149
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
        17: .line 1150
            goto 40
      StackMap locals:
      StackMap stack:
        18: aload 11 /* arg */
            ldc "--native"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        19: .line 1151
            aload 5 /* vmType */
            getstatic org.graalvm.launcher.Launcher$VMType.JVM:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpne 21
        20: .line 1152
            aload 0 /* this */
            ldc "'--jvm' and '--native' options can not be used together."
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        21: .line 1154
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher$VMType.Native:Lorg/graalvm/launcher/Launcher$VMType;
            astore 5 /* vmType */
        22: .line 1155
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
        23: .line 1156
            goto 40
      StackMap locals:
      StackMap stack:
        24: aload 11 /* arg */
            ldc "--vm."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 38
            aload 11 /* arg */
            invokevirtual java.lang.String.length:()I
            ldc "--vm."
            invokevirtual java.lang.String.length:()I
            if_icmple 38
        25: .line 1157
            aload 11 /* arg */
            ldc "--vm."
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* vmArg */
        start local 12 // java.lang.String vmArg
        26: .line 1158
            aload 12 /* vmArg */
            ldc "classpath"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 28
        27: .line 1159
            aload 0 /* this */
            ldc "'--vm.classpath' argument must be of the form '--vm.classpath=<classpath>', not two separate arguments"
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        28: .line 1161
      StackMap locals: java.lang.String
      StackMap stack:
            aload 12 /* vmArg */
            ldc "cp"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 30
        29: .line 1162
            aload 0 /* this */
            ldc "'--vm.cp' argument must be of the form '--vm.cp=<classpath>', not two separate arguments"
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        30: .line 1164
      StackMap locals:
      StackMap stack:
            aload 12 /* vmArg */
            ldc "classpath="
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 31
            aload 12 /* vmArg */
            ldc "cp="
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 35
        31: .line 1165
      StackMap locals:
      StackMap stack:
            aload 12 /* vmArg */
            bipush 61
            invokevirtual java.lang.String.indexOf:(I)I
            istore 13 /* eqIndex */
        start local 13 // int eqIndex
        32: .line 1166
            aload 7 /* jvmArgs */
            new java.lang.StringBuilder
            dup
            bipush 45
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* vmArg */
            iconst_0
            iload 13 /* eqIndex */
            invokevirtual java.lang.String.substring:(II)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
        33: .line 1167
            aload 7 /* jvmArgs */
            aload 12 /* vmArg */
            iload 13 /* eqIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 13 // int eqIndex
        34: .line 1168
            goto 36
        35: .line 1169
      StackMap locals:
      StackMap stack:
            aload 10 /* vmOptions */
            aload 12 /* vmArg */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        36: .line 1171
      StackMap locals:
      StackMap stack:
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
        end local 12 // java.lang.String vmArg
        37: .line 1172
            goto 40
      StackMap locals:
      StackMap stack:
        38: aload 11 /* arg */
            ldc "--polyglot"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 40
        39: .line 1173
            iconst_1
            istore 6 /* polyglot */
        end local 11 // java.lang.String arg
        40: .line 1139
      StackMap locals:
      StackMap stack:
            aload 9 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        41: .line 1176
            iconst_0
            istore 11 /* isDefaultVMType */
        start local 11 // boolean isDefaultVMType
        42: .line 1177
            aload 5 /* vmType */
            ifnonnull 45
        43: .line 1178
            aload 4 /* defaultVmType */
            astore 5 /* vmType */
        44: .line 1179
            iconst_1
            istore 11 /* isDefaultVMType */
        45: .line 1182
      StackMap locals: int
      StackMap stack:
            aload 5 /* vmType */
            getstatic org.graalvm.launcher.Launcher$VMType.JVM:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpne 57
        46: .line 1183
            aload 10 /* vmOptions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 49
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int top java.util.Iterator
      StackMap stack:
        47: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* vmOption */
        start local 12 // java.lang.String vmOption
        48: .line 1184
            aload 7 /* jvmArgs */
            new java.lang.StringBuilder
            dup
            bipush 45
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* vmOption */
            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 12 // java.lang.String vmOption
        49: .line 1183
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        50: .line 1187
            iload 3 /* isPolyglotLauncher */
            ifne 52
            iload 6 /* polyglot */
            ifeq 52
        51: .line 1188
            aload 8 /* applicationArgs */
            iconst_0
            ldc "--polyglot"
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        52: .line 1190
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher.$assertionsDisabled:Z
            ifne 53
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifeq 53
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        53: .line 1191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            ifnonnull 54
            ldc "java.class.path"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            goto 55
      StackMap locals:
      StackMap stack: org.graalvm.launcher.Launcher
        54: aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            aload 7 /* jvmArgs */
            invokevirtual org.graalvm.launcher.Launcher$Native.getClasspath:(Ljava/util/List;)Ljava/lang/String;
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int
      StackMap stack: org.graalvm.launcher.Launcher java.lang.String
        55: aload 7 /* jvmArgs */
            aload 8 /* applicationArgs */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            invokevirtual org.graalvm.launcher.Launcher.executeJVM:(Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/Map;)V
        56: .line 1192
            goto 70
        57: .line 1193
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher.$assertionsDisabled:Z
            ifne 58
            aload 5 /* vmType */
            getstatic org.graalvm.launcher.Launcher$VMType.Native:Lorg/graalvm/launcher/Launcher$VMType;
            if_acmpeq 58
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        58: .line 1195
      StackMap locals:
      StackMap stack:
            aload 10 /* vmOptions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 61
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int top java.util.Iterator
      StackMap stack:
        59: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* vmOption */
        start local 12 // java.lang.String vmOption
        60: .line 1196
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            aload 12 /* vmOption */
            invokevirtual org.graalvm.launcher.Launcher$Native.setNativeOption:(Ljava/lang/String;)V
        end local 12 // java.lang.String vmOption
        61: .line 1195
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 59
        62: .line 1202
            invokestatic org.graalvm.nativeimage.VMRuntime.initialize:()V
        63: .line 1204
            iload 3 /* isPolyglotLauncher */
            ifne 70
            iload 6 /* polyglot */
            ifeq 70
        64: .line 1205
            getstatic org.graalvm.launcher.Launcher.$assertionsDisabled:Z
            ifne 65
            aload 7 /* jvmArgs */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 65
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        65: .line 1206
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.launcher.Launcher.isStandalone:()Z
            ifeq 67
        66: .line 1207
            aload 0 /* this */
            ldc "--polyglot option is only supported when this launcher is part of a GraalVM."
            invokevirtual org.graalvm.launcher.Launcher.abort:(Ljava/lang/String;)Lorg/graalvm/launcher/Launcher$AbortException;
            athrow
        67: .line 1209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* applicationArgs */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            iload 11 /* isDefaultVMType */
            ifeq 68
            iconst_0
            goto 69
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int
      StackMap stack: org.graalvm.launcher.Launcher java.util.List java.util.Map
        68: iconst_1
      StackMap locals: org.graalvm.launcher.Launcher java.util.List java.util.List int org.graalvm.launcher.Launcher$VMType org.graalvm.launcher.Launcher$VMType int java.util.List java.util.List java.util.Iterator java.util.List int
      StackMap stack: org.graalvm.launcher.Launcher java.util.List java.util.Map int
        69: invokevirtual org.graalvm.launcher.Launcher.executePolyglot:(Ljava/util/List;Ljava/util/Map;Z)V
        70: .line 1212
      StackMap locals:
      StackMap stack:
            return
        end local 11 // boolean isDefaultVMType
        end local 10 // java.util.List vmOptions
        end local 9 // java.util.Iterator iterator
        end local 8 // java.util.List applicationArgs
        end local 7 // java.util.List jvmArgs
        end local 6 // boolean polyglot
        end local 5 // org.graalvm.launcher.Launcher$VMType vmType
        end local 4 // org.graalvm.launcher.Launcher$VMType defaultVmType
        end local 3 // boolean isPolyglotLauncher
        end local 2 // java.util.List unrecognizedArgs
        end local 1 // java.util.List originalArgs
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   71     0                this  Lorg/graalvm/launcher/Launcher;
            0   71     1        originalArgs  Ljava/util/List<Ljava/lang/String;>;
            0   71     2    unrecognizedArgs  Ljava/util/List<Ljava/lang/String;>;
            0   71     3  isPolyglotLauncher  Z
            0   71     4       defaultVmType  Lorg/graalvm/launcher/Launcher$VMType;
            3   71     5              vmType  Lorg/graalvm/launcher/Launcher$VMType;
            4   71     6            polyglot  Z
            5   71     7             jvmArgs  Ljava/util/List<Ljava/lang/String;>;
            6   71     8     applicationArgs  Ljava/util/List<Ljava/lang/String;>;
            7   71     9            iterator  Ljava/util/Iterator<Ljava/lang/String;>;
            8   71    10           vmOptions  Ljava/util/List<Ljava/lang/String;>;
           10   40    11                 arg  Ljava/lang/String;
           26   37    12               vmArg  Ljava/lang/String;
           32   34    13             eqIndex  I
           42   71    11     isDefaultVMType  Z
           48   49    12            vmOption  Ljava/lang/String;
           60   61    12            vmOption  Ljava/lang/String;
    Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;ZLorg/graalvm/launcher/Launcher$VMType;)V
    MethodParameters:
                    Name  Flags
      originalArgs        
      unrecognizedArgs    
      isPolyglotLauncher  
      defaultVmType       

  protected void executeJVM(java.lang.String, java.util.List<java.lang.String>, java.util.List<java.lang.String>, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/Map;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String classpath
        start local 2 // java.util.List jvmArgs
        start local 3 // java.util.List remainingArgs
        start local 4 // java.util.Map polyglotOptions
         0: .line 1217
            aload 0 /* this */
            aload 1 /* classpath */
            aload 2 /* jvmArgs */
            aload 3 /* remainingArgs */
            invokevirtual org.graalvm.launcher.Launcher.executeJVM:(Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V
         1: .line 1218
            return
        end local 4 // java.util.Map polyglotOptions
        end local 3 // java.util.List remainingArgs
        end local 2 // java.util.List jvmArgs
        end local 1 // java.lang.String classpath
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/graalvm/launcher/Launcher;
            0    2     1        classpath  Ljava/lang/String;
            0    2     2          jvmArgs  Ljava/util/List<Ljava/lang/String;>;
            0    2     3    remainingArgs  Ljava/util/List<Ljava/lang/String;>;
            0    2     4  polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                 Name  Flags
      classpath        
      jvmArgs          
      remainingArgs    
      polyglotOptions  

  protected void executeJVM(java.lang.String, java.util.List<java.lang.String>, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.lang.String classpath
        start local 2 // java.util.List jvmArgs
        start local 3 // java.util.List remainingArgs
         0: .line 1229
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            aload 1 /* classpath */
            aload 2 /* jvmArgs */
            aload 3 /* remainingArgs */
            invokevirtual org.graalvm.launcher.Launcher$Native.execJVM:(Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V
         1: .line 1230
            return
        end local 3 // java.util.List remainingArgs
        end local 2 // java.util.List jvmArgs
        end local 1 // java.lang.String classpath
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/graalvm/launcher/Launcher;
            0    2     1      classpath  Ljava/lang/String;
            0    2     2        jvmArgs  Ljava/util/List<Ljava/lang/String;>;
            0    2     3  remainingArgs  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
               Name  Flags
      classpath      
      jvmArgs        
      remainingArgs  

  protected void executePolyglot(java.util.List<java.lang.String>, java.util.Map<java.lang.String, java.lang.String>, );
    descriptor: (Ljava/util/List;Ljava/util/Map;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List mainArgs
        start local 2 // java.util.Map polyglotOptions
        start local 3 // boolean forceNative
         0: .line 1235
            aload 0 /* this */
            aload 1 /* mainArgs */
            iload 3 /* forceNative */
            invokevirtual org.graalvm.launcher.Launcher.executePolyglot:(Ljava/util/List;Z)V
         1: .line 1236
            return
        end local 3 // boolean forceNative
        end local 2 // java.util.Map polyglotOptions
        end local 1 // java.util.List mainArgs
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/graalvm/launcher/Launcher;
            0    2     1         mainArgs  Ljava/util/List<Ljava/lang/String;>;
            0    2     2  polyglotOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    2     3      forceNative  Z
    Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Z)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                 Name  Flags
      mainArgs         
      polyglotOptions  
      forceNative      

  protected void executePolyglot(java.util.List<java.lang.String>, );
    descriptor: (Ljava/util/List;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.launcher.Launcher this
        start local 1 // java.util.List mainArgs
        start local 2 // boolean forceNative
         0: .line 1245
            aload 0 /* this */
            getfield org.graalvm.launcher.Launcher.nativeAccess:Lorg/graalvm/launcher/Launcher$Native;
            aload 1 /* mainArgs */
            iload 2 /* forceNative */
            invokevirtual org.graalvm.launcher.Launcher$Native.executePolyglot:(Ljava/util/List;Z)V
         1: .line 1246
            return
        end local 2 // boolean forceNative
        end local 1 // java.util.List mainArgs
        end local 0 // org.graalvm.launcher.Launcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/graalvm/launcher/Launcher;
            0    2     1     mainArgs  Ljava/util/List<Ljava/lang/String;>;
            0    2     2  forceNative  Z
    Signature: (Ljava/util/List<Ljava/lang/String;>;Z)V
    MethodParameters:
             Name  Flags
      mainArgs     
      forceNative  

  protected static java.io.OutputStream newLogStream(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/io/OutputStream;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=9, locals=8, args_size=1
        start local 0 // java.nio.file.Path path
         0: .line 1607
            aload 0 /* path */
            astore 1 /* usedPath */
        start local 1 // java.nio.file.Path usedPath
         1: .line 1608
            aconst_null
            astore 2 /* lockFile */
        start local 2 // java.nio.file.Path lockFile
         2: .line 1609
            aconst_null
            astore 3 /* lockFileChannel */
        start local 3 // java.nio.channels.FileChannel lockFileChannel
         3: .line 1610
            iconst_0
            istore 4 /* unique */
        start local 4 // int unique
         4: .line 1611
      StackMap locals: java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.channels.FileChannel int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* lockFileNameBuilder */
        start local 5 // java.lang.StringBuilder lockFileNameBuilder
         5: .line 1612
            aload 5 /* lockFileNameBuilder */
            aload 0 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 1613
            iload 4 /* unique */
            ifle 9
         7: .line 1614
            aload 5 /* lockFileNameBuilder */
            iload 4 /* unique */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
         8: .line 1615
            aload 5 /* lockFileNameBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 1 /* usedPath */
         9: .line 1617
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 5 /* lockFileNameBuilder */
            ldc ".lck"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 1618
            aload 5 /* lockFileNameBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 2 /* lockFile */
        11: .line 1619
            aload 2 /* lockFile */
            invokestatic org.graalvm.launcher.Launcher.openChannel:(Ljava/nio/file/Path;)Ljava/util/Map$Entry;
            astore 6 /* openResult */
        start local 6 // java.util.Map$Entry openResult
        12: .line 1620
            aload 6 /* openResult */
            ifnull 17
        13: .line 1621
            aload 6 /* openResult */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.nio.channels.FileChannel
            astore 3 /* lockFileChannel */
        14: .line 1622
            aload 3 /* lockFileChannel */
            aload 6 /* openResult */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic org.graalvm.launcher.Launcher.lock:(Ljava/nio/channels/FileChannel;Z)Z
            ifeq 16
        15: .line 1623
            goto 18
        16: .line 1626
      StackMap locals: java.util.Map$Entry
      StackMap stack:
            aload 3 /* lockFileChannel */
            invokevirtual java.nio.channels.FileChannel.close:()V
        end local 6 // java.util.Map$Entry openResult
        end local 5 // java.lang.StringBuilder lockFileNameBuilder
        17: .line 1610
      StackMap locals:
      StackMap stack:
            iinc 4 /* unique */ 1
            goto 4
        end local 4 // int unique
        18: .line 1630
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.launcher.Launcher.$assertionsDisabled:Z
            ifne 20
            aload 2 /* lockFile */
            ifnull 19
            aload 3 /* lockFileChannel */
            ifnonnull 20
      StackMap locals:
      StackMap stack:
        19: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        20: .line 1631
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* success */
        start local 4 // boolean success
        21: .line 1633
            new org.graalvm.launcher.Launcher$LockableOutputStream
            dup
        22: .line 1634
            new java.io.BufferedOutputStream
            dup
            aload 1 /* usedPath */
            iconst_3
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
            getstatic java.nio.file.StandardOpenOption.WRITE:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_1
            getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_2
            getstatic java.nio.file.StandardOpenOption.APPEND:Ljava/nio/file/StandardOpenOption;
            aastore
            invokestatic java.nio.file.Files.newOutputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/OutputStream;
            invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
        23: .line 1635
            aload 2 /* lockFile */
        24: .line 1636
            aload 3 /* lockFileChannel */
        25: .line 1633
            invokespecial org.graalvm.launcher.Launcher$LockableOutputStream.<init>:(Ljava/io/OutputStream;Ljava/nio/file/Path;Ljava/nio/channels/FileChannel;)V
            astore 5 /* stream */
        start local 5 // java.io.OutputStream stream
        26: .line 1637
            iconst_1
            istore 4 /* success */
        27: .line 1638
            aload 5 /* stream */
            astore 7
        28: .line 1640
            iload 4 /* success */
            ifne 30
        29: .line 1641
            aload 2 /* lockFile */
            aload 3 /* lockFileChannel */
            invokestatic org.graalvm.launcher.Launcher$LockableOutputStream.unlock:(Ljava/nio/file/Path;Ljava/nio/channels/FileChannel;)V
        30: .line 1638
      StackMap locals: java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.channels.FileChannel int java.io.OutputStream top java.io.OutputStream
      StackMap stack:
            aload 7
            areturn
        end local 5 // java.io.OutputStream stream
        31: .line 1639
      StackMap locals: java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.channels.FileChannel int
      StackMap stack: java.lang.Throwable
            astore 6
        32: .line 1640
            iload 4 /* success */
            ifne 34
        33: .line 1641
            aload 2 /* lockFile */
            aload 3 /* lockFileChannel */
            invokestatic org.graalvm.launcher.Launcher$LockableOutputStream.unlock:(Ljava/nio/file/Path;Ljava/nio/channels/FileChannel;)V
        34: .line 1643
      StackMap locals: java.nio.file.Path java.nio.file.Path java.nio.file.Path java.nio.channels.FileChannel int top java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        end local 4 // boolean success
        end local 3 // java.nio.channels.FileChannel lockFileChannel
        end local 2 // java.nio.file.Path lockFile
        end local 1 // java.nio.file.Path usedPath
        end local 0 // java.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   35     0                 path  Ljava/nio/file/Path;
            1   35     1             usedPath  Ljava/nio/file/Path;
            2   35     2             lockFile  Ljava/nio/file/Path;
            3   35     3      lockFileChannel  Ljava/nio/channels/FileChannel;
            4   18     4               unique  I
            5   17     5  lockFileNameBuilder  Ljava/lang/StringBuilder;
           12   17     6           openResult  Ljava/util/Map$Entry<Ljava/nio/channels/FileChannel;Ljava/lang/Boolean;>;
           21   35     4              success  Z
           26   31     5               stream  Ljava/io/OutputStream;
      Exception table:
        from    to  target  type
          21    28      31  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  private static java.util.Map$Entry<java.nio.channels.FileChannel, java.lang.Boolean> openChannel(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/util/Map$Entry;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // java.nio.file.Path path
         0: .line 1647
            aconst_null
            astore 1 /* channel */
        start local 1 // java.nio.channels.FileChannel channel
         1: .line 1648
            iconst_0
            istore 2 /* retries */
        start local 2 // int retries
         2: goto 16
         3: .line 1650
      StackMap locals: java.nio.channels.FileChannel int
      StackMap stack:
            aload 0 /* path */
            iconst_2
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
            getstatic java.nio.file.StandardOpenOption.CREATE_NEW:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_1
            getstatic java.nio.file.StandardOpenOption.WRITE:Ljava/nio/file/StandardOpenOption;
            aastore
            invokestatic java.nio.channels.FileChannel.open:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/nio/channels/FileChannel;
            astore 1 /* channel */
         4: .line 1651
            new java.util.AbstractMap$SimpleImmutableEntry
            dup
            aload 1 /* channel */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: areturn
         6: .line 1652
      StackMap locals:
      StackMap stack: java.nio.file.FileAlreadyExistsException
            pop
         7: .line 1654
            aload 0 /* path */
            iconst_1
            anewarray java.nio.file.LinkOption
            dup
            iconst_0
            getstatic java.nio.file.LinkOption.NOFOLLOW_LINKS:Ljava/nio/file/LinkOption;
            aastore
            invokestatic java.nio.file.Files.isRegularFile:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 14
            aload 0 /* path */
            invokestatic org.graalvm.launcher.Launcher.isParentWritable:(Ljava/nio/file/Path;)Z
            ifeq 14
         8: .line 1656
            aload 0 /* path */
            iconst_2
            anewarray java.nio.file.OpenOption
            dup
            iconst_0
            getstatic java.nio.file.StandardOpenOption.WRITE:Ljava/nio/file/StandardOpenOption;
            aastore
            dup
            iconst_1
            getstatic java.nio.file.StandardOpenOption.APPEND:Ljava/nio/file/StandardOpenOption;
            aastore
            invokestatic java.nio.channels.FileChannel.open:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/nio/channels/FileChannel;
            astore 1 /* channel */
         9: .line 1657
            new java.util.AbstractMap$SimpleImmutableEntry
            dup
            aload 1 /* channel */
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
        10: areturn
        11: .line 1658
      StackMap locals:
      StackMap stack: java.nio.file.NoSuchFileException
            pop
            goto 15
        12: .line 1660
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        13: .line 1661
            aconst_null
            areturn
        14: .line 1664
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        15: .line 1648
      StackMap locals:
      StackMap stack:
            iinc 2 /* retries */ 1
      StackMap locals:
      StackMap stack:
        16: aload 1 /* channel */
            ifnonnull 17
            iload 2 /* retries */
            iconst_2
            if_icmplt 3
        end local 2 // int retries
        17: .line 1668
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.nio.channels.FileChannel channel
        end local 0 // java.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     path  Ljava/nio/file/Path;
            1   18     1  channel  Ljava/nio/channels/FileChannel;
            2   17     2  retries  I
      Exception table:
        from    to  target  type
           3     5       6  Class java.nio.file.FileAlreadyExistsException
           8    10      11  Class java.nio.file.NoSuchFileException
           8    10      12  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;)Ljava/util/Map$Entry<Ljava/nio/channels/FileChannel;Ljava/lang/Boolean;>;
    MethodParameters:
      Name  Flags
      path  

  private static boolean isParentWritable(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.nio.file.Path path
         0: .line 1672
            aload 0 /* path */
            invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
            astore 1 /* parentPath */
        start local 1 // java.nio.file.Path parentPath
         1: .line 1673
            aload 1 /* parentPath */
            ifnonnull 3
            aload 0 /* path */
            invokeinterface java.nio.file.Path.isAbsolute:()Z
            ifne 3
         2: .line 1674
            aload 0 /* path */
            invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
            astore 1 /* parentPath */
         3: .line 1676
      StackMap locals: java.nio.file.Path
      StackMap stack:
            aload 1 /* parentPath */
            ifnull 4
            aload 1 /* parentPath */
            invokestatic java.nio.file.Files.isWritable:(Ljava/nio/file/Path;)Z
            ifeq 4
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // java.nio.file.Path parentPath
        end local 0 // java.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        path  Ljava/nio/file/Path;
            1    5     1  parentPath  Ljava/nio/file/Path;
    MethodParameters:
      Name  Flags
      path  

  private static boolean lock(java.nio.channels.FileChannel, boolean);
    descriptor: (Ljava/nio/channels/FileChannel;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // java.nio.channels.FileChannel lockFileChannel
        start local 1 // boolean newFile
         0: .line 1680
            iconst_0
            istore 2 /* available */
        start local 2 // boolean available
         1: .line 1682
            aload 0 /* lockFileChannel */
            invokevirtual java.nio.channels.FileChannel.tryLock:()Ljava/nio/channels/FileLock;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 2 /* available */
         4: .line 1683
            goto 8
      StackMap locals:
      StackMap stack: java.nio.channels.OverlappingFileLockException
         5: pop
            goto 8
         6: .line 1685
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         7: .line 1687
            iload 1 /* newFile */
            istore 2 /* available */
         8: .line 1689
      StackMap locals:
      StackMap stack:
            iload 2 /* available */
            ireturn
        end local 2 // boolean available
        end local 1 // boolean newFile
        end local 0 // java.nio.channels.FileChannel lockFileChannel
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0  lockFileChannel  Ljava/nio/channels/FileChannel;
            0    9     1          newFile  Z
            1    9     2        available  Z
      Exception table:
        from    to  target  type
           1     4       5  Class java.nio.channels.OverlappingFileLockException
           1     4       6  Class java.io.IOException
    MethodParameters:
                 Name  Flags
      lockFileChannel  
      newFile          

  static int[] $SWITCH_TABLE$org$graalvm$launcher$Launcher$OS();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 90
            getstatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$launcher$Launcher$OS:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.launcher.Launcher$OS.values:()[Lorg/graalvm/launcher/Launcher$OS;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.launcher.Launcher$OS.Darwin:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual org.graalvm.launcher.Launcher$OS.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.graalvm.launcher.Launcher$OS.Linux:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual org.graalvm.launcher.Launcher$OS.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.launcher.Launcher$OS.Solaris:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual org.graalvm.launcher.Launcher$OS.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.graalvm.launcher.Launcher$OS.Windows:Lorg/graalvm/launcher/Launcher$OS;
            invokevirtual org.graalvm.launcher.Launcher$OS.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$launcher$Launcher$OS:[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

  static int[] $SWITCH_TABLE$org$graalvm$options$OptionCategory();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 90
            getstatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$options$OptionCategory:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.options.OptionCategory.values:()[Lorg/graalvm/options/OptionCategory;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.options.OptionCategory.EXPERT:Lorg/graalvm/options/OptionCategory;
            invokevirtual org.graalvm.options.OptionCategory.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.graalvm.options.OptionCategory.INTERNAL:Lorg/graalvm/options/OptionCategory;
            invokevirtual org.graalvm.options.OptionCategory.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;
            invokevirtual org.graalvm.options.OptionCategory.ordinal:()I
            iconst_1
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic org.graalvm.launcher.Launcher.$SWITCH_TABLE$org$graalvm$options$OptionCategory:[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
}
SourceFile: "Launcher.java"
NestMembers:
  org.graalvm.launcher.Launcher$AbortException  org.graalvm.launcher.Launcher$LockableOutputStream  org.graalvm.launcher.Launcher$Native  org.graalvm.launcher.Launcher$OS  org.graalvm.launcher.Launcher$PrintableOption  org.graalvm.launcher.Launcher$ShellQuotes  org.graalvm.launcher.Launcher$VMType  org.graalvm.launcher.Launcher$VersionAction
InnerClasses:
  public SimpleImmutableEntry = java.util.AbstractMap$SimpleImmutableEntry of java.util.AbstractMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
  protected final AbortException = org.graalvm.launcher.Launcher$AbortException of org.graalvm.launcher.Launcher
  private final LockableOutputStream = org.graalvm.launcher.Launcher$LockableOutputStream of org.graalvm.launcher.Launcher
  Native = org.graalvm.launcher.Launcher$Native of org.graalvm.launcher.Launcher
  protected final OS = org.graalvm.launcher.Launcher$OS of org.graalvm.launcher.Launcher
  final PrintableOption = org.graalvm.launcher.Launcher$PrintableOption of org.graalvm.launcher.Launcher
  private final ShellQuotes = org.graalvm.launcher.Launcher$ShellQuotes of org.graalvm.launcher.Launcher
  public final VMType = org.graalvm.launcher.Launcher$VMType of org.graalvm.launcher.Launcher
  protected final VersionAction = org.graalvm.launcher.Launcher$VersionAction of org.graalvm.launcher.Launcher