public class com.sun.tools.javac.main.Main
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.main.Main
  super_class: java.lang.Object
{
  java.lang.String ownName;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  java.io.PrintWriter stdOut;
    descriptor: Ljava/io/PrintWriter;
    flags: (0x0000) 

  java.io.PrintWriter stdErr;
    descriptor: Ljava/io/PrintWriter;
    flags: (0x0000) 

  public com.sun.tools.javac.util.Log log;
    descriptor: Lcom/sun/tools/javac/util/Log;
    flags: (0x0001) ACC_PUBLIC

  boolean apiMode;
    descriptor: Z
    flags: (0x0000) 

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

  private javax.tools.JavaFileManager fileManager;
    descriptor: Ljavax/tools/JavaFileManager;
    flags: (0x0002) ACC_PRIVATE

  public static final java.lang.String javacBundleName;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.sun.tools.javac.resources.javac"

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String name
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 0 /* this */
            aload 1 /* name */
            putfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
         2: .line 112
            return
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void <init>(java.lang.String, java.io.PrintWriter);
    descriptor: (Ljava/lang/String;Ljava/io/PrintWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String name
        start local 2 // java.io.PrintWriter out
         0: .line 119
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 120
            aload 0 /* this */
            aload 1 /* name */
            putfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
         2: .line 121
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* out */
            dup_x1
            putfield com.sun.tools.javac.main.Main.stdErr:Ljava/io/PrintWriter;
            putfield com.sun.tools.javac.main.Main.stdOut:Ljava/io/PrintWriter;
         3: .line 122
            return
        end local 2 // java.io.PrintWriter out
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/main/Main;
            0    4     1  name  Ljava/lang/String;
            0    4     2   out  Ljava/io/PrintWriter;
    MethodParameters:
      Name  Flags
      name  
      out   

  public void <init>(java.lang.String, java.io.PrintWriter, java.io.PrintWriter);
    descriptor: (Ljava/lang/String;Ljava/io/PrintWriter;Ljava/io/PrintWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String name
        start local 2 // java.io.PrintWriter out
        start local 3 // java.io.PrintWriter err
         0: .line 130
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 131
            aload 0 /* this */
            aload 1 /* name */
            putfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
         2: .line 132
            aload 0 /* this */
            aload 2 /* out */
            putfield com.sun.tools.javac.main.Main.stdOut:Ljava/io/PrintWriter;
         3: .line 133
            aload 0 /* this */
            aload 3 /* err */
            putfield com.sun.tools.javac.main.Main.stdErr:Ljava/io/PrintWriter;
         4: .line 134
            return
        end local 3 // java.io.PrintWriter err
        end local 2 // java.io.PrintWriter out
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/main/Main;
            0    5     1  name  Ljava/lang/String;
            0    5     2   out  Ljava/io/PrintWriter;
            0    5     3   err  Ljava/io/PrintWriter;
    MethodParameters:
      Name  Flags
      name  
      out   
      err   

  void error(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 139
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.apiMode:Z
            ifeq 3
         1: .line 140
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual com.sun.tools.javac.util.Log.localize:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* msg */
        start local 3 // java.lang.String msg
         2: .line 141
            new com.sun.tools.javac.util.PropagatedException
            dup
            new java.lang.IllegalStateException
            dup
            aload 3 /* msg */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            invokespecial com.sun.tools.javac.util.PropagatedException.<init>:(Ljava/lang/RuntimeException;)V
            athrow
        end local 3 // java.lang.String msg
         3: .line 143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual com.sun.tools.javac.main.Main.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 144
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.usage"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
            aastore
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 145
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/tools/javac/main/Main;
            0    6     1   key  Ljava/lang/String;
            0    6     2  args  [Ljava/lang/Object;
            2    3     3   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   
      args  

  void warning(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 150
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual com.sun.tools.javac.util.Log.localize:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Log.printRawLines:(Ljava/lang/String;)V
         1: .line 151
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/main/Main;
            0    2     1   key  Ljava/lang/String;
            0    2     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public com.sun.tools.javac.main.Main$Result compile(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Lcom/sun/tools/javac/main/Main$Result;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String[] args
         0: .line 160
            new com.sun.tools.javac.util.Context
            dup
            invokespecial com.sun.tools.javac.util.Context.<init>:()V
            astore 2 /* context */
        start local 2 // com.sun.tools.javac.util.Context context
         1: .line 161
            aload 2 /* context */
            invokestatic com.sun.tools.javac.file.JavacFileManager.preRegister:(Lcom/sun/tools/javac/util/Context;)V
         2: .line 162
            aload 0 /* this */
            aload 1 /* args */
            aload 2 /* context */
            invokevirtual com.sun.tools.javac.main.Main.compile:([Ljava/lang/String;Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/main/Main$Result;
            astore 3 /* result */
        start local 3 // com.sun.tools.javac.main.Main$Result result
         3: .line 163
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            instanceof com.sun.tools.javac.file.JavacFileManager
            ifeq 8
         4: .line 166
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            checkcast com.sun.tools.javac.file.JavacFileManager
            invokevirtual com.sun.tools.javac.file.JavacFileManager.close:()V
         5: .line 167
            goto 8
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Main$Result
      StackMap stack: java.io.IOException
         6: astore 4 /* ex */
        start local 4 // java.io.IOException ex
         7: .line 168
            aload 0 /* this */
            aload 4 /* ex */
            invokevirtual com.sun.tools.javac.main.Main.bugMessage:(Ljava/lang/Throwable;)V
        end local 4 // java.io.IOException ex
         8: .line 171
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.sun.tools.javac.main.Main$Result result
        end local 2 // com.sun.tools.javac.util.Context context
        end local 1 // java.lang.String[] args
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lcom/sun/tools/javac/main/Main;
            0    9     1     args  [Ljava/lang/String;
            1    9     2  context  Lcom/sun/tools/javac/util/Context;
            3    9     3   result  Lcom/sun/tools/javac/main/Main$Result;
            7    8     4       ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.io.IOException
    MethodParameters:
      Name  Flags
      args  

  public com.sun.tools.javac.main.Main$Result compile(java.lang.String[], com.sun.tools.javac.util.Context);
    descriptor: ([Ljava/lang/String;Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/main/Main$Result;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=16, args_size=3
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String[] argv
        start local 2 // com.sun.tools.javac.util.Context context
         0: .line 182
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.stdOut:Ljava/io/PrintWriter;
            ifnull 2
         1: .line 183
            aload 2 /* context */
            getstatic com.sun.tools.javac.util.Log.outKey:Lcom/sun/tools/javac/util/Context$Key;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.stdOut:Ljava/io/PrintWriter;
            invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
         2: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.stdErr:Ljava/io/PrintWriter;
            ifnull 4
         3: .line 187
            aload 2 /* context */
            getstatic com.sun.tools.javac.util.Log.errKey:Lcom/sun/tools/javac/util/Context$Key;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.stdErr:Ljava/io/PrintWriter;
            invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
         4: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* context */
            invokestatic com.sun.tools.javac.util.Log.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Log;
            putfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
         5: .line 192
            aload 1 /* argv */
            arraylength
            ifne 11
         6: .line 193
            new com.sun.tools.javac.main.Main$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            invokespecial com.sun.tools.javac.main.Main$1.<init>:(Lcom/sun/tools/javac/main/Main;Lcom/sun/tools/javac/util/Log;)V
            astore 3 /* h */
        start local 3 // com.sun.tools.javac.main.OptionHelper h
         7: .line 200
            getstatic com.sun.tools.javac.main.Option.HELP:Lcom/sun/tools/javac/main/Option;
            aload 3 /* h */
            ldc "-help"
            invokevirtual com.sun.tools.javac.main.Option.process:(Lcom/sun/tools/javac/main/OptionHelper;Ljava/lang/String;)V
         8: .line 201
            goto 10
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.OptionHelper
      StackMap stack: com.sun.tools.javac.main.Option$InvalidValueException
         9: pop
        10: .line 203
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.javac.main.Main$Result.CMDERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        end local 3 // com.sun.tools.javac.main.OptionHelper h
        11: .line 208
      StackMap locals:
      StackMap stack:
            ldc "JDK_JAVAC_OPTIONS"
            aload 1 /* argv */
            invokestatic com.sun.tools.javac.main.CommandLine.parse:(Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
            astore 1 /* argv */
        12: .line 209
            goto 23
      StackMap locals:
      StackMap stack: com.sun.tools.javac.main.CommandLine$UnmatchedQuote
        13: astore 3 /* ex */
        start local 3 // com.sun.tools.javac.main.CommandLine$UnmatchedQuote ex
        14: .line 210
            aload 0 /* this */
            ldc "err.unmatched.quote"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* ex */
            getfield com.sun.tools.javac.main.CommandLine$UnmatchedQuote.variableName:Ljava/lang/String;
            aastore
            invokevirtual com.sun.tools.javac.main.Main.error:(Ljava/lang/String;[Ljava/lang/Object;)V
        15: .line 211
            getstatic com.sun.tools.javac.main.Main$Result.CMDERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        end local 3 // com.sun.tools.javac.main.CommandLine$UnmatchedQuote ex
        16: .line 212
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
        17: .line 213
            aload 0 /* this */
            ldc "err.file.not.found"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual com.sun.tools.javac.main.Main.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
        18: .line 214
            getstatic com.sun.tools.javac.main.Main$Result.SYSERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        end local 3 // java.io.IOException e
        19: .line 215
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        20: .line 216
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.io"
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 217
            aload 3 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.io.IOException.printStackTrace:(Ljava/io/PrintWriter;)V
        22: .line 218
            getstatic com.sun.tools.javac.main.Main$Result.SYSERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        end local 3 // java.io.IOException ex
        23: .line 221
      StackMap locals:
      StackMap stack:
            aload 2 /* context */
            invokestatic com.sun.tools.javac.main.Arguments.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/main/Arguments;
            astore 3 /* args */
        start local 3 // com.sun.tools.javac.main.Arguments args
        24: .line 222
            aload 3 /* args */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.ownName:Ljava/lang/String;
            aload 1 /* argv */
            invokevirtual com.sun.tools.javac.main.Arguments.init:(Ljava/lang/String;[Ljava/lang/String;)V
        25: .line 224
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.nerrors:I
            ifle 27
        26: .line 225
            getstatic com.sun.tools.javac.main.Main$Result.CMDERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        27: .line 227
      StackMap locals: com.sun.tools.javac.main.Arguments
      StackMap stack:
            aload 2 /* context */
            invokestatic com.sun.tools.javac.util.Options.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Options;
            astore 4 /* options */
        start local 4 // com.sun.tools.javac.util.Options options
        28: .line 230
            aload 4 /* options */
            ldc "stdout"
            invokevirtual com.sun.tools.javac.util.Options.isSet:(Ljava/lang/String;)Z
            istore 5 /* forceStdOut */
        start local 5 // boolean forceStdOut
        29: .line 231
            iload 5 /* forceStdOut */
            ifeq 32
        30: .line 232
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            invokevirtual com.sun.tools.javac.util.Log.flush:()V
        31: .line 233
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            new java.io.PrintWriter
            dup
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            iconst_1
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
            invokevirtual com.sun.tools.javac.util.Log.setWriters:(Ljava/io/PrintWriter;)V
        32: .line 238
      StackMap locals: com.sun.tools.javac.util.Options int
      StackMap stack:
            aload 4 /* options */
            ldc "nonBatchMode"
            invokevirtual com.sun.tools.javac.util.Options.isUnset:(Ljava/lang/String;)Z
            ifeq 35
        33: .line 239
            ldc "nonBatchMode"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 35
        34: .line 238
            iconst_1
            goto 36
      StackMap locals:
      StackMap stack:
        35: iconst_0
      StackMap locals:
      StackMap stack: int
        36: istore 6 /* batchMode */
        start local 6 // boolean batchMode
        37: .line 240
            iload 6 /* batchMode */
            ifeq 39
        38: .line 241
            aload 2 /* context */
            invokestatic com.sun.tools.javac.file.CacheFSInfo.preRegister:(Lcom/sun/tools/javac/util/Context;)V
        39: .line 243
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 7 /* ok */
        start local 7 // boolean ok
        40: .line 246
            aload 0 /* this */
            aload 2 /* context */
            ldc Ljavax/tools/JavaFileManager;
            invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.tools.JavaFileManager
            putfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
        41: .line 247
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            instanceof com.sun.tools.javac.file.BaseFileManager
            ifeq 44
        42: .line 248
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            checkcast com.sun.tools.javac.file.BaseFileManager
            aload 2 /* context */
            invokevirtual com.sun.tools.javac.file.BaseFileManager.setContext:(Lcom/sun/tools/javac/util/Context;)V
        43: .line 249
            iload 7 /* ok */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            checkcast com.sun.tools.javac.file.BaseFileManager
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.getDeferredFileManagerOptions:()Ljava/util/Map;
            invokevirtual com.sun.tools.javac.file.BaseFileManager.handleOptions:(Ljava/util/Map;)Z
            iand
            istore 7 /* ok */
        44: .line 253
      StackMap locals: int
      StackMap stack:
            aload 4 /* options */
            ldc "showClass"
            invokevirtual com.sun.tools.javac.util.Options.get:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* showClass */
        start local 8 // java.lang.String showClass
        45: .line 254
            aload 8 /* showClass */
            ifnull 49
        46: .line 255
            aload 8 /* showClass */
            ldc "showClass"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 48
        47: .line 256
            ldc "com.sun.tools.javac.Main"
            astore 8 /* showClass */
        48: .line 257
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 8 /* showClass */
            invokevirtual com.sun.tools.javac.main.Main.showClass:(Ljava/lang/String;)V
        49: .line 260
      StackMap locals:
      StackMap stack:
            iload 7 /* ok */
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.validate:()Z
            iand
            istore 7 /* ok */
        50: .line 261
            iload 7 /* ok */
            ifeq 51
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.nerrors:I
            ifle 52
        51: .line 262
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.javac.main.Main$Result.CMDERR:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        52: .line 264
      StackMap locals:
      StackMap stack:
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.isEmpty:()Z
            ifeq 54
        53: .line 265
            getstatic com.sun.tools.javac.main.Main$Result.OK:Lcom/sun/tools/javac/main/Main$Result;
            areturn
        54: .line 268
      StackMap locals:
      StackMap stack:
            aload 4 /* options */
            ldc "debug.completionDeps"
            invokevirtual com.sun.tools.javac.util.Options.isSet:(Ljava/lang/String;)Z
            ifeq 56
        55: .line 269
            aload 2 /* context */
            invokestatic com.sun.tools.javac.util.Dependencies$GraphDependencies.preRegister:(Lcom/sun/tools/javac/util/Context;)V
        56: .line 273
      StackMap locals:
      StackMap stack:
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.getPluginOpts:()Ljava/util/Set;
            astore 9 /* pluginOpts */
        start local 9 // java.util.Set pluginOpts
        57: .line 274
            aload 9 /* pluginOpts */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 58
            aload 2 /* context */
            ldc Lcom/sun/tools/javac/platform/PlatformDescription;
            invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
            ifnull 60
        58: .line 275
      StackMap locals: java.util.Set
      StackMap stack:
            aload 2 /* context */
            invokestatic com.sun.tools.javac.api.BasicJavacTask.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/source/util/JavacTask;
            checkcast com.sun.tools.javac.api.BasicJavacTask
            astore 10 /* t */
        start local 10 // com.sun.tools.javac.api.BasicJavacTask t
        59: .line 276
            aload 10 /* t */
            aload 9 /* pluginOpts */
            invokevirtual com.sun.tools.javac.api.BasicJavacTask.initPlugins:(Ljava/util/Set;)V
        end local 10 // com.sun.tools.javac.api.BasicJavacTask t
        60: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            getstatic com.sun.tools.javac.main.Option.MULTIRELEASE:Lcom/sun/tools/javac/main/Option;
            getfield com.sun.tools.javac.main.Option.primaryName:Ljava/lang/String;
            invokeinterface javax.tools.JavaFileManager.isSupportedOption:(Ljava/lang/String;)I
            iconst_1
            if_icmpne 64
        61: .line 281
            aload 2 /* context */
            invokestatic com.sun.tools.javac.jvm.Target.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Target;
            astore 10 /* target */
        start local 10 // com.sun.tools.javac.jvm.Target target
        62: .line 282
            aload 10 /* target */
            invokevirtual com.sun.tools.javac.jvm.Target.multiReleaseValue:()Ljava/lang/String;
            invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 11 /* list */
        start local 11 // com.sun.tools.javac.util.List list
        63: .line 283
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.fileManager:Ljavax/tools/JavaFileManager;
            getstatic com.sun.tools.javac.main.Option.MULTIRELEASE:Lcom/sun/tools/javac/main/Option;
            getfield com.sun.tools.javac.main.Option.primaryName:Ljava/lang/String;
            aload 11 /* list */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface javax.tools.JavaFileManager.handleOption:(Ljava/lang/String;Ljava/util/Iterator;)Z
            pop
        end local 11 // com.sun.tools.javac.util.List list
        end local 10 // com.sun.tools.javac.jvm.Target target
        64: .line 287
      StackMap locals:
      StackMap stack:
            aload 2 /* context */
            invokestatic com.sun.tools.javac.main.JavaCompiler.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/main/JavaCompiler;
            astore 10 /* comp */
        start local 10 // com.sun.tools.javac.main.JavaCompiler comp
        65: .line 290
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.getDocLintOpts:()Lcom/sun/tools/javac/util/List;
            astore 11 /* docLintOpts */
        start local 11 // com.sun.tools.javac.util.List docLintOpts
        66: .line 291
            aload 11 /* docLintOpts */
            invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
            ifne 69
        67: .line 292
            aload 2 /* context */
            invokestatic com.sun.tools.javac.api.BasicJavacTask.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/source/util/JavacTask;
            checkcast com.sun.tools.javac.api.BasicJavacTask
            astore 12 /* t */
        start local 12 // com.sun.tools.javac.api.BasicJavacTask t
        68: .line 293
            aload 12 /* t */
            aload 11 /* docLintOpts */
            invokevirtual com.sun.tools.javac.api.BasicJavacTask.initDocLint:(Lcom/sun/tools/javac/util/List;)V
        end local 12 // com.sun.tools.javac.api.BasicJavacTask t
        69: .line 296
      StackMap locals: com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack:
            aload 4 /* options */
            getstatic com.sun.tools.javac.main.Option.XSTDOUT:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            ifnull 71
        70: .line 298
            aload 10 /* comp */
            aload 10 /* comp */
            getfield com.sun.tools.javac.main.JavaCompiler.closeables:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.main.JavaCompiler.closeables:Lcom/sun/tools/javac/util/List;
        71: .line 302
      StackMap locals:
      StackMap stack:
            aload 10 /* comp */
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.getFileObjects:()Ljava/util/Set;
            aload 3 /* args */
            invokevirtual com.sun.tools.javac.main.Arguments.getClassNames:()Ljava/util/Set;
            aconst_null
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.main.JavaCompiler.compile:(Ljava/util/Collection;Ljava/util/Collection;Ljava/lang/Iterable;Ljava/util/Collection;)V
        72: .line 304
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.expectDiagKeys:Ljava/util/Set;
            ifnull 90
        73: .line 305
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.expectDiagKeys:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 82
        74: .line 306
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            ldc "all expected diagnostics found"
            invokevirtual com.sun.tools.javac.util.Log.printRawLines:(Ljava/lang/String;)V
        75: .line 307
            getstatic com.sun.tools.javac.main.Main$Result.OK:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
        76: .line 336
            aload 10 /* comp */
            ifnull 81
        77: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
        78: .line 339
            goto 81
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List top top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
        79: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
        80: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
        81: .line 307
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        82: .line 309
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            new java.lang.StringBuilder
            dup
            ldc "expected diagnostic keys not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.expectDiagKeys:Ljava/util/Set;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Log.printRawLines:(Ljava/lang/String;)V
        83: .line 310
            getstatic com.sun.tools.javac.main.Main$Result.ERROR:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
        84: .line 336
            aload 10 /* comp */
            ifnull 89
        85: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
        86: .line 339
            goto 89
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List top top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
        87: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
        88: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
        89: .line 310
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        90: .line 314
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack:
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.errorCount:()I
            ifne 91
            getstatic com.sun.tools.javac.main.Main$Result.OK:Lcom/sun/tools/javac/main/Main$Result;
            goto 92
      StackMap locals:
      StackMap stack:
        91: getstatic com.sun.tools.javac.main.Main$Result.ERROR:Lcom/sun/tools/javac/main/Main$Result;
      StackMap locals:
      StackMap stack: com.sun.tools.javac.main.Main$Result
        92: astore 14
        93: .line 336
            aload 10 /* comp */
            ifnull 98
        94: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
        95: .line 339
            goto 98
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List top top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
        96: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
        97: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
        98: .line 314
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        99: .line 316
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack: java.lang.VirtualMachineError
            astore 12 /* ex */
        start local 12 // java.lang.VirtualMachineError ex
       100: .line 317
            aload 0 /* this */
            aload 12 /* ex */
            invokevirtual com.sun.tools.javac.main.Main.resourceMessage:(Ljava/lang/Throwable;)V
       101: .line 318
            getstatic com.sun.tools.javac.main.Main$Result.SYSERR:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
       102: .line 336
            aload 10 /* comp */
            ifnull 107
       103: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
       104: .line 339
            goto 107
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List java.lang.VirtualMachineError top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
       105: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
       106: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
       107: .line 318
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        end local 12 // java.lang.VirtualMachineError ex
       108: .line 319
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack: com.sun.tools.javac.util.FatalError
            astore 12 /* ex */
        start local 12 // com.sun.tools.javac.util.FatalError ex
       109: .line 320
            aload 0 /* this */
            aload 12 /* ex */
            aload 4 /* options */
            invokevirtual com.sun.tools.javac.main.Main.feMessage:(Ljava/lang/Throwable;Lcom/sun/tools/javac/util/Options;)V
       110: .line 321
            getstatic com.sun.tools.javac.main.Main$Result.SYSERR:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
       111: .line 336
            aload 10 /* comp */
            ifnull 116
       112: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
       113: .line 339
            goto 116
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List com.sun.tools.javac.util.FatalError top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
       114: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
       115: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
       116: .line 321
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        end local 12 // com.sun.tools.javac.util.FatalError ex
       117: .line 322
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack: com.sun.tools.javac.processing.AnnotationProcessingError
            astore 12 /* ex */
        start local 12 // com.sun.tools.javac.processing.AnnotationProcessingError ex
       118: .line 323
            aload 0 /* this */
            aload 12 /* ex */
            invokevirtual com.sun.tools.javac.main.Main.apMessage:(Lcom/sun/tools/javac/processing/AnnotationProcessingError;)V
       119: .line 324
            getstatic com.sun.tools.javac.main.Main$Result.SYSERR:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
       120: .line 336
            aload 10 /* comp */
            ifnull 125
       121: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
       122: .line 339
            goto 125
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List com.sun.tools.javac.processing.AnnotationProcessingError top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
       123: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
       124: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
       125: .line 324
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        end local 12 // com.sun.tools.javac.processing.AnnotationProcessingError ex
       126: .line 325
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack: com.sun.tools.javac.util.PropagatedException
            astore 12 /* ex */
        start local 12 // com.sun.tools.javac.util.PropagatedException ex
       127: .line 327
            aload 12 /* ex */
            invokevirtual com.sun.tools.javac.util.PropagatedException.getCause:()Ljava/lang/RuntimeException;
            athrow
        end local 12 // com.sun.tools.javac.util.PropagatedException ex
       128: .line 328
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12 /* ex */
        start local 12 // java.lang.Throwable ex
       129: .line 332
            aload 10 /* comp */
            ifnull 130
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.errorCount:()I
            ifeq 130
            aload 4 /* options */
            ldc "dev"
            invokevirtual com.sun.tools.javac.util.Options.isSet:(Ljava/lang/String;)Z
            ifeq 131
       130: .line 333
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            aload 12 /* ex */
            invokevirtual com.sun.tools.javac.main.Main.bugMessage:(Ljava/lang/Throwable;)V
       131: .line 334
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.javac.main.Main$Result.ABNORMAL:Lcom/sun/tools/javac/main/Main$Result;
            astore 14
       132: .line 336
            aload 10 /* comp */
            ifnull 137
       133: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
       134: .line 339
            goto 137
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List java.lang.Throwable top com.sun.tools.javac.main.Main$Result
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
       135: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
       136: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
       137: .line 334
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        end local 12 // java.lang.Throwable ex
       138: .line 335
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List
      StackMap stack: java.lang.Throwable
            astore 13
       139: .line 336
            aload 10 /* comp */
            ifnull 144
       140: .line 338
            aload 10 /* comp */
            invokevirtual com.sun.tools.javac.main.JavaCompiler.close:()V
       141: .line 339
            goto 144
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String[] com.sun.tools.javac.util.Context com.sun.tools.javac.main.Arguments com.sun.tools.javac.util.Options int int int java.lang.String java.util.Set com.sun.tools.javac.main.JavaCompiler com.sun.tools.javac.util.List top java.lang.Throwable
      StackMap stack: com.sun.tools.javac.util.ClientCodeException
       142: astore 15 /* ex */
        start local 15 // com.sun.tools.javac.util.ClientCodeException ex
       143: .line 340
            new java.lang.RuntimeException
            dup
            aload 15 /* ex */
            invokevirtual com.sun.tools.javac.util.ClientCodeException.getCause:()Ljava/lang/Throwable;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 15 // com.sun.tools.javac.util.ClientCodeException ex
       144: .line 343
      StackMap locals:
      StackMap stack:
            aload 13
            athrow
        end local 11 // com.sun.tools.javac.util.List docLintOpts
        end local 10 // com.sun.tools.javac.main.JavaCompiler comp
        end local 9 // java.util.Set pluginOpts
        end local 8 // java.lang.String showClass
        end local 7 // boolean ok
        end local 6 // boolean batchMode
        end local 5 // boolean forceStdOut
        end local 4 // com.sun.tools.javac.util.Options options
        end local 3 // com.sun.tools.javac.main.Arguments args
        end local 2 // com.sun.tools.javac.util.Context context
        end local 1 // java.lang.String[] argv
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  145     0         this  Lcom/sun/tools/javac/main/Main;
            0  145     1         argv  [Ljava/lang/String;
            0  145     2      context  Lcom/sun/tools/javac/util/Context;
            7   11     3            h  Lcom/sun/tools/javac/main/OptionHelper;
           14   16     3           ex  Lcom/sun/tools/javac/main/CommandLine$UnmatchedQuote;
           17   19     3            e  Ljava/io/IOException;
           20   23     3           ex  Ljava/io/IOException;
           24  145     3         args  Lcom/sun/tools/javac/main/Arguments;
           28  145     4      options  Lcom/sun/tools/javac/util/Options;
           29  145     5  forceStdOut  Z
           37  145     6    batchMode  Z
           40  145     7           ok  Z
           45  145     8    showClass  Ljava/lang/String;
           57  145     9   pluginOpts  Ljava/util/Set<Lcom/sun/tools/javac/util/List<Ljava/lang/String;>;>;
           59   60    10            t  Lcom/sun/tools/javac/api/BasicJavacTask;
           62   64    10       target  Lcom/sun/tools/javac/jvm/Target;
           63   64    11         list  Lcom/sun/tools/javac/util/List<Ljava/lang/String;>;
           65  145    10         comp  Lcom/sun/tools/javac/main/JavaCompiler;
           66  145    11  docLintOpts  Lcom/sun/tools/javac/util/List<Ljava/lang/String;>;
           68   69    12            t  Lcom/sun/tools/javac/api/BasicJavacTask;
          100  108    12           ex  Ljava/lang/VirtualMachineError;
          109  117    12           ex  Lcom/sun/tools/javac/util/FatalError;
          118  126    12           ex  Lcom/sun/tools/javac/processing/AnnotationProcessingError;
          127  128    12           ex  Lcom/sun/tools/javac/util/PropagatedException;
          129  138    12           ex  Ljava/lang/Throwable;
           80   81    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
           88   89    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
           97   98    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
          106  107    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
          115  116    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
          124  125    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
          136  137    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
          143  144    15           ex  Lcom/sun/tools/javac/util/ClientCodeException;
      Exception table:
        from    to  target  type
           7     8       9  Class com.sun.tools.javac.main.Option$InvalidValueException
          11    12      13  Class com.sun.tools.javac.main.CommandLine$UnmatchedQuote
          11    12      16  Class java.io.FileNotFoundException
          11    12      16  Class java.nio.file.NoSuchFileException
          11    12      19  Class java.io.IOException
          77    78      79  Class com.sun.tools.javac.util.ClientCodeException
          85    86      87  Class com.sun.tools.javac.util.ClientCodeException
          94    95      96  Class com.sun.tools.javac.util.ClientCodeException
          71    76      99  Class java.lang.OutOfMemoryError
          82    84      99  Class java.lang.OutOfMemoryError
          90    93      99  Class java.lang.OutOfMemoryError
          71    76      99  Class java.lang.StackOverflowError
          82    84      99  Class java.lang.StackOverflowError
          90    93      99  Class java.lang.StackOverflowError
         103   104     105  Class com.sun.tools.javac.util.ClientCodeException
          71    76     108  Class com.sun.tools.javac.util.FatalError
          82    84     108  Class com.sun.tools.javac.util.FatalError
          90    93     108  Class com.sun.tools.javac.util.FatalError
         112   113     114  Class com.sun.tools.javac.util.ClientCodeException
          71    76     117  Class com.sun.tools.javac.processing.AnnotationProcessingError
          82    84     117  Class com.sun.tools.javac.processing.AnnotationProcessingError
          90    93     117  Class com.sun.tools.javac.processing.AnnotationProcessingError
         121   122     123  Class com.sun.tools.javac.util.ClientCodeException
          71    76     126  Class com.sun.tools.javac.util.PropagatedException
          82    84     126  Class com.sun.tools.javac.util.PropagatedException
          90    93     126  Class com.sun.tools.javac.util.PropagatedException
          71    76     128  Class java.lang.Throwable
          82    84     128  Class java.lang.Throwable
          90    93     128  Class java.lang.Throwable
         133   134     135  Class com.sun.tools.javac.util.ClientCodeException
          71    76     138  any
          82    84     138  any
          90    93     138  any
          99   102     138  any
         108   111     138  any
         117   120     138  any
         126   132     138  any
         140   141     142  Class com.sun.tools.javac.util.ClientCodeException
    MethodParameters:
         Name  Flags
      argv     
      context  

  void bugMessage(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.Throwable ex
         0: .line 349
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.bug"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            invokestatic com.sun.tools.javac.main.JavaCompiler.version:()Ljava/lang/String;
            aastore
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 350
            aload 1 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         2: .line 351
            return
        end local 1 // java.lang.Throwable ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1    ex  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      ex    

  void feMessage(java.lang.Throwable, com.sun.tools.javac.util.Options);
    descriptor: (Ljava/lang/Throwable;Lcom/sun/tools/javac/util/Options;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.Throwable ex
        start local 2 // com.sun.tools.javac.util.Options options
         0: .line 356
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            aload 1 /* ex */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Log.printRawLines:(Ljava/lang/String;)V
         1: .line 357
            aload 1 /* ex */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            ifnull 3
            aload 2 /* options */
            ldc "dev"
            invokevirtual com.sun.tools.javac.util.Options.isSet:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 358
            aload 1 /* ex */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         3: .line 360
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.tools.javac.util.Options options
        end local 1 // java.lang.Throwable ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/sun/tools/javac/main/Main;
            0    4     1       ex  Ljava/lang/Throwable;
            0    4     2  options  Lcom/sun/tools/javac/util/Options;
    MethodParameters:
         Name  Flags
      ex       
      options  

  void ioMessage(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.Throwable ex
         0: .line 365
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.io"
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 366
            aload 1 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         2: .line 367
            return
        end local 1 // java.lang.Throwable ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1    ex  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      ex    

  void resourceMessage(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.Throwable ex
         0: .line 372
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.resource"
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 373
            aload 1 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         2: .line 374
            return
        end local 1 // java.lang.Throwable ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1    ex  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      ex    

  void apMessage(com.sun.tools.javac.processing.AnnotationProcessingError);
    descriptor: (Lcom/sun/tools/javac/processing/AnnotationProcessingError;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // com.sun.tools.javac.processing.AnnotationProcessingError ex
         0: .line 380
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.proc.annotation.uncaught.exception"
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 381
            aload 1 /* ex */
            invokevirtual com.sun.tools.javac.processing.AnnotationProcessingError.getCause:()Ljava/lang/Throwable;
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         2: .line 382
            return
        end local 1 // com.sun.tools.javac.processing.AnnotationProcessingError ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1    ex  Lcom/sun/tools/javac/processing/AnnotationProcessingError;
    MethodParameters:
      Name  Flags
      ex    

  void pluginMessage(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.Throwable ex
         0: .line 388
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$PrefixKind.JAVAC:Lcom/sun/tools/javac/util/Log$PrefixKind;
            ldc "msg.plugin.uncaught.exception"
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.javac.util.Log.printLines:(Lcom/sun/tools/javac/util/Log$PrefixKind;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 389
            aload 1 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         2: .line 390
            return
        end local 1 // java.lang.Throwable ex
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/Main;
            0    3     1    ex  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      ex    

  void showClass(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=14, args_size=2
        start local 0 // com.sun.tools.javac.main.Main this
        start local 1 // java.lang.String className
         0: .line 394
            aload 0 /* this */
            getfield com.sun.tools.javac.main.Main.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.util.Log$WriterKind.NOTICE:Lcom/sun/tools/javac/util/Log$WriterKind;
            invokevirtual com.sun.tools.javac.util.Log.getWriter:(Lcom/sun/tools/javac/util/Log$WriterKind;)Ljava/io/PrintWriter;
            astore 2 /* pw */
        start local 2 // java.io.PrintWriter pw
         1: .line 395
            aload 2 /* pw */
            new java.lang.StringBuilder
            dup
            ldc "javac: show class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         2: .line 397
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            new java.lang.StringBuilder
            dup
            bipush 47
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.Class.getResource:(Ljava/lang/String;)Ljava/net/URL;
            astore 3 /* url */
        start local 3 // java.net.URL url
         3: .line 398
            aload 3 /* url */
            ifnull 5
         4: .line 399
            aload 2 /* pw */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         5: .line 402
      StackMap locals: java.io.PrintWriter java.net.URL
      StackMap stack:
            aconst_null
            astore 4
            aconst_null
            astore 5
         6: aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            new java.lang.StringBuilder
            dup
            bipush 47
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.Class.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 6 /* in */
        start local 6 // java.io.InputStream in
         7: .line 405
            ldc "MD5"
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 8 /* md */
        start local 8 // java.security.MessageDigest md
         8: .line 406
            aconst_null
            astore 9
            aconst_null
            astore 10
         9: new java.security.DigestInputStream
            dup
            aload 6 /* in */
            aload 8 /* md */
            invokespecial java.security.DigestInputStream.<init>:(Ljava/io/InputStream;Ljava/security/MessageDigest;)V
            astore 11 /* din */
        start local 11 // java.security.DigestInputStream din
        10: .line 407
            sipush 8192
            newarray 8
            astore 12 /* buf */
        start local 12 // byte[] buf
        11: .line 409
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL java.lang.Throwable java.lang.Throwable java.io.InputStream top java.security.MessageDigest java.lang.Throwable java.lang.Throwable java.security.DigestInputStream byte[]
      StackMap stack:
            aload 11 /* din */
            aload 12 /* buf */
            invokevirtual java.security.DigestInputStream.read:([B)I
            istore 13 /* n */
        start local 13 // int n
        12: iload 13 /* n */
            ifgt 11
        13: .line 410
            aload 8 /* md */
            invokevirtual java.security.MessageDigest.digest:()[B
            astore 7 /* digest */
        end local 13 // int n
        end local 12 // byte[] buf
        start local 7 // byte[] digest
        14: .line 411
            aload 11 /* din */
            ifnull 20
            aload 11 /* din */
            invokevirtual java.security.DigestInputStream.close:()V
            goto 20
        end local 7 // byte[] digest
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL java.lang.Throwable java.lang.Throwable java.io.InputStream top java.security.MessageDigest java.lang.Throwable java.lang.Throwable java.security.DigestInputStream
      StackMap stack: java.lang.Throwable
        15: astore 9
            aload 11 /* din */
            ifnull 16
            aload 11 /* din */
            invokevirtual java.security.DigestInputStream.close:()V
        end local 11 // java.security.DigestInputStream din
      StackMap locals:
      StackMap stack:
        16: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 10
            aload 9
            ifnonnull 18
            aload 10
            astore 9
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 9
            aload 10
            if_acmpeq 19
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 9
            athrow
        start local 7 // byte[] digest
        20: .line 412
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL java.lang.Throwable java.lang.Throwable java.io.InputStream byte[] java.security.MessageDigest
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuilder sb
        21: .line 413
            aload 7 /* digest */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 25
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL java.lang.Throwable java.lang.Throwable java.io.InputStream byte[] java.security.MessageDigest java.lang.StringBuilder top int int byte[]
      StackMap stack:
        22: aload 13
            iload 11
            baload
            istore 10 /* b */
        start local 10 // byte b
        23: .line 414
            aload 9 /* sb */
            ldc "%02x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 10 /* b */
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 10 // byte b
        24: .line 413
            iinc 11 1
      StackMap locals:
      StackMap stack:
        25: iload 11
            iload 12
            if_icmplt 22
        26: .line 415
            aload 2 /* pw */
            new java.lang.StringBuilder
            dup
            ldc "  MD5 checksum: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* sb */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        end local 9 // java.lang.StringBuilder sb
        end local 8 // java.security.MessageDigest md
        end local 7 // byte[] digest
        27: .line 416
            aload 6 /* in */
            ifnull 35
            aload 6 /* in */
            invokevirtual java.io.InputStream.close:()V
            goto 35
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack: java.lang.Throwable
        28: astore 4
            aload 6 /* in */
            ifnull 29
            aload 6 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 6 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
        29: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 5
            aload 4
            ifnonnull 31
            aload 5
            astore 4
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 4
            aload 5
            if_acmpeq 32
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        32: aload 4
            athrow
      StackMap locals: com.sun.tools.javac.main.Main java.lang.String java.io.PrintWriter java.net.URL
      StackMap stack: java.lang.Exception
        33: astore 4 /* e */
        start local 4 // java.lang.Exception e
        34: .line 417
            aload 2 /* pw */
            new java.lang.StringBuilder
            dup
            ldc "  cannot compute digest: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        end local 4 // java.lang.Exception e
        35: .line 419
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.net.URL url
        end local 2 // java.io.PrintWriter pw
        end local 1 // java.lang.String className
        end local 0 // com.sun.tools.javac.main.Main this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   36     0       this  Lcom/sun/tools/javac/main/Main;
            0   36     1  className  Ljava/lang/String;
            1   36     2         pw  Ljava/io/PrintWriter;
            3   36     3        url  Ljava/net/URL;
            7   29     6         in  Ljava/io/InputStream;
           14   15     7     digest  [B
           20   27     7     digest  [B
            8   27     8         md  Ljava/security/MessageDigest;
           10   16    11        din  Ljava/security/DigestInputStream;
           11   14    12        buf  [B
           12   14    13          n  I
           21   27     9         sb  Ljava/lang/StringBuilder;
           23   24    10          b  B
           34   35     4          e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    14      15  any
           9    17      17  any
           7    27      28  any
           6    30      30  any
           5    33      33  Class java.security.NoSuchAlgorithmException
           5    33      33  Class java.io.IOException
    MethodParameters:
           Name  Flags
      className  
}
SourceFile: "Main.java"
NestMembers:
  com.sun.tools.javac.main.Main$1  com.sun.tools.javac.main.Main$Result
InnerClasses:
  public UnmatchedQuote = com.sun.tools.javac.main.CommandLine$UnmatchedQuote of com.sun.tools.javac.main.CommandLine
  com.sun.tools.javac.main.Main$1
  public final Result = com.sun.tools.javac.main.Main$Result of com.sun.tools.javac.main.Main
  public InvalidValueException = com.sun.tools.javac.main.Option$InvalidValueException of com.sun.tools.javac.main.Option
  public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
  public GraphDependencies = com.sun.tools.javac.util.Dependencies$GraphDependencies of com.sun.tools.javac.util.Dependencies
  public final PrefixKind = com.sun.tools.javac.util.Log$PrefixKind of com.sun.tools.javac.util.Log
  public final WriterKind = com.sun.tools.javac.util.Log$WriterKind of com.sun.tools.javac.util.Log