public class com.oracle.mxtool.junit.MxJUnitWrapper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.mxtool.junit.MxJUnitWrapper
  super_class: java.lang.Object
{
  public static final java.lang.String OPENED_PACKAGES_PROPERTY_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.oracle.mxtool.junit.opens"

  public static final java.lang.String EXPORTED_PACKAGES_PROPERTY_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.oracle.mxtool.junit.exports"

  private static final int TIMINGS_TO_PRINT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 397
            ldc "mx.junit.timings_to_print"
            bipush 10
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            putstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.mxtool.junit.MxJUnitWrapper this
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.mxtool.junit.MxJUnitWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/mxtool/junit/MxJUnitWrapper;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=5, locals=15, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 137
            new org.junit.internal.RealSystem
            dup
            invokespecial org.junit.internal.RealSystem.<init>:()V
            astore 1 /* system */
        start local 1 // org.junit.internal.JUnitSystem system
         1: .line 138
            new org.junit.runner.JUnitCore
            dup
            invokespecial org.junit.runner.JUnitCore.<init>:()V
            astore 2 /* junitCore */
        start local 2 // org.junit.runner.JUnitCore junitCore
         2: .line 139
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            ldc "MxJUnitCore"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         3: .line 140
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "JUnit version "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            invokestatic junit.runner.Version.id:()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
         4: .line 142
            new com.oracle.mxtool.junit.MxJUnitRequest$Builder
            dup
            invokespecial com.oracle.mxtool.junit.MxJUnitRequest$Builder.<init>:()V
            astore 3 /* builder */
        start local 3 // com.oracle.mxtool.junit.MxJUnitRequest$Builder builder
         5: .line 143
            new com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig
            dup
            invokespecial com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.<init>:()V
            astore 4 /* config */
        start local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig config
         6: .line 145
            aload 0 /* args */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.expandArgs:([Ljava/lang/String;)[Ljava/lang/String;
            astore 5 /* expandedArgs */
        start local 5 // java.lang.String[] expandedArgs
         7: .line 146
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: .line 147
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* testSpecs */
        start local 7 // java.util.List testSpecs
         9: .line 148
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* openPackagesSpecs */
        start local 8 // java.util.List openPackagesSpecs
        10: .line 149
            goto 59
        11: .line 150
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List
      StackMap stack:
            aload 5 /* expandedArgs */
            iload 6 /* i */
            aaload
            astore 9 /* each */
        start local 9 // java.lang.String each
        12: .line 151
            aload 9 /* each */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 45
            if_icmpne 57
        13: .line 153
            aload 9 /* each */
            ldc "-JUnitVerbose"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 17
        14: .line 154
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.verbose:Z
        15: .line 155
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
        16: .line 156
            goto 58
      StackMap locals: java.lang.String
      StackMap stack:
        17: aload 9 /* each */
            ldc "-JUnitOpenPackages"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 20
        18: .line 157
            aload 8 /* openPackagesSpecs */
            aload 1 /* system */
            aload 5 /* expandedArgs */
            aload 9 /* each */
            iinc 6 /* i */ 1
            iload 6 /* i */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.parseStringArg:(Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 158
            goto 58
      StackMap locals:
      StackMap stack:
        20: aload 9 /* each */
            ldc "-JUnitVeryVerbose"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 25
        21: .line 159
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.verbose:Z
        22: .line 160
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.veryVerbose:Z
        23: .line 161
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
        24: .line 162
            goto 58
      StackMap locals:
      StackMap stack:
        25: aload 9 /* each */
            ldc "-JUnitMaxClassFailures"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 28
        26: .line 163
            aload 4 /* config */
            aload 1 /* system */
            aload 5 /* expandedArgs */
            aload 9 /* each */
            iinc 6 /* i */ 1
            iload 6 /* i */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.parseIntArg:(Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)I
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
        27: .line 164
            goto 58
      StackMap locals:
      StackMap stack:
        28: aload 9 /* each */
            ldc "-JUnitFailFast"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 31
        29: .line 165
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
        30: .line 166
            goto 58
      StackMap locals:
      StackMap stack:
        31: aload 9 /* each */
            ldc "-JUnitEnableTiming"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 34
        32: .line 167
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
        33: .line 168
            goto 58
      StackMap locals:
      StackMap stack:
        34: aload 9 /* each */
            ldc "-JUnitColor"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 37
        35: .line 169
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.color:Z
        36: .line 170
            goto 58
      StackMap locals:
      StackMap stack:
        37: aload 9 /* each */
            ldc "-JUnitEagerStackTrace"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 40
        38: .line 171
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.eagerStackTrace:Z
        39: .line 172
            goto 58
      StackMap locals:
      StackMap stack:
        40: aload 9 /* each */
            ldc "-JUnitGCAfterTest"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 43
        41: .line 173
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.gcAfterTest:Z
        42: .line 174
            goto 58
      StackMap locals:
      StackMap stack:
        43: aload 9 /* each */
            ldc "-JUnitRecordResults"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 46
        44: .line 175
            aload 4 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordResults:Z
        45: .line 176
            goto 58
      StackMap locals:
      StackMap stack:
        46: aload 9 /* each */
            ldc "-JUnitRecordPassed"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 49
        47: .line 177
            aload 4 /* config */
            aload 1 /* system */
            aload 5 /* expandedArgs */
            aload 9 /* each */
            iinc 6 /* i */ 1
            iload 6 /* i */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.parseStringArg:(Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordPassed:Ljava/lang/String;
        48: .line 178
            goto 58
      StackMap locals:
      StackMap stack:
        49: aload 9 /* each */
            ldc "-JUnitRecordFailed"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 52
        50: .line 179
            aload 4 /* config */
            aload 1 /* system */
            aload 5 /* expandedArgs */
            aload 9 /* each */
            iinc 6 /* i */ 1
            iload 6 /* i */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.parseStringArg:(Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordFailed:Ljava/lang/String;
        51: .line 180
            goto 58
      StackMap locals:
      StackMap stack:
        52: aload 9 /* each */
            ldc "-JUnitRepeat"
            invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
            ifeq 55
        53: .line 181
            aload 4 /* config */
            aload 1 /* system */
            aload 5 /* expandedArgs */
            aload 9 /* each */
            iinc 6 /* i */ 1
            iload 6 /* i */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.parseIntArg:(Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)I
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.repeatCount:I
        54: .line 182
            goto 58
        55: .line 183
      StackMap locals:
      StackMap stack:
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Unknown command line argument: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* each */
            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
        56: .line 186
            goto 58
        57: .line 187
      StackMap locals:
      StackMap stack:
            aload 7 /* testSpecs */
            aload 9 /* each */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        58: .line 189
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
        end local 9 // java.lang.String each
        59: .line 149
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            aload 5 /* expandedArgs */
            arraylength
            if_icmplt 11
        60: .line 192
            new com.oracle.mxtool.junit.ModuleSupport
            dup
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            invokespecial com.oracle.mxtool.junit.ModuleSupport.<init>:(Ljava/io/PrintStream;)V
            astore 9 /* moduleSupport */
        start local 9 // com.oracle.mxtool.junit.ModuleSupport moduleSupport
        61: .line 193
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 10 /* opened */
        start local 10 // java.util.Set opened
        62: .line 194
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 11 /* exported */
        start local 11 // java.util.Set exported
        63: .line 195
            aload 8 /* openPackagesSpecs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 66
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        64: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* spec */
        start local 12 // java.lang.String spec
        65: .line 196
            aload 9 /* moduleSupport */
            aload 12 /* spec */
            ldc "-JUnitOpenPackages"
            aload 10 /* opened */
            aload 11 /* exported */
            invokevirtual com.oracle.mxtool.junit.ModuleSupport.openPackages:(Ljava/lang/String;Ljava/lang/Object;Ljava/util/Set;Ljava/util/Set;)V
        end local 12 // java.lang.String spec
        66: .line 195
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 64
        67: .line 199
            aload 7 /* testSpecs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 74
      StackMap locals:
      StackMap stack:
        68: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* spec */
        start local 12 // java.lang.String spec
        69: .line 201
            aload 3 /* builder */
            aload 12 /* spec */
            invokevirtual com.oracle.mxtool.junit.MxJUnitRequest$Builder.addTestSpec:(Ljava/lang/String;)V
        70: .line 202
            goto 74
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set java.lang.String java.util.Iterator
      StackMap stack: com.oracle.mxtool.junit.MxJUnitRequest$BuilderException
        71: astore 14 /* ex */
        start local 14 // com.oracle.mxtool.junit.MxJUnitRequest$BuilderException ex
        72: .line 203
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            aload 14 /* ex */
            invokevirtual com.oracle.mxtool.junit.MxJUnitRequest$BuilderException.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        73: .line 204
            iconst_1
            invokestatic java.lang.System.exit:(I)V
        end local 14 // com.oracle.mxtool.junit.MxJUnitRequest$BuilderException ex
        end local 12 // java.lang.String spec
        74: .line 199
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 68
        75: .line 208
            aload 3 /* builder */
            invokevirtual com.oracle.mxtool.junit.MxJUnitRequest$Builder.build:()Lcom/oracle/mxtool/junit/MxJUnitRequest;
            astore 12 /* request */
        start local 12 // com.oracle.mxtool.junit.MxJUnitRequest request
        76: .line 209
            aload 9 /* moduleSupport */
            aload 12 /* request */
            getfield com.oracle.mxtool.junit.MxJUnitRequest.classes:Ljava/util/Set;
            aload 10 /* opened */
            aload 11 /* exported */
            invokevirtual com.oracle.mxtool.junit.ModuleSupport.processAddExportsAnnotations:(Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V
        77: .line 211
            aload 10 /* opened */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 79
        78: .line 212
            ldc "com.oracle.mxtool.junit.opens"
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            aload 10 /* opened */
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
            invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
        79: .line 214
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set com.oracle.mxtool.junit.MxJUnitRequest
      StackMap stack:
            aload 11 /* exported */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 81
        80: .line 215
            ldc "com.oracle.mxtool.junit.exports"
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            aload 11 /* exported */
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
            invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
        81: .line 218
      StackMap locals:
      StackMap stack:
            ldc Lorg/junit/runner/notification/RunListener;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
            invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
            astore 14
            goto 84
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set com.oracle.mxtool.junit.MxJUnitRequest top java.util.Iterator
      StackMap stack:
        82: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.junit.runner.notification.RunListener
            astore 13 /* p */
        start local 13 // org.junit.runner.notification.RunListener p
        83: .line 219
            aload 2 /* junitCore */
            aload 13 /* p */
            invokevirtual org.junit.runner.JUnitCore.addListener:(Lorg/junit/runner/notification/RunListener;)V
        end local 13 // org.junit.runner.notification.RunListener p
        84: .line 218
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 82
        85: .line 222
            aload 2 /* junitCore */
            aload 1 /* system */
            aload 4 /* config */
            aload 12 /* request */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.runRequest:(Lorg/junit/runner/JUnitCore;Lorg/junit/internal/JUnitSystem;Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;Lcom/oracle/mxtool/junit/MxJUnitRequest;)Lorg/junit/runner/Result;
            astore 13 /* result */
        start local 13 // org.junit.runner.Result result
        86: .line 223
            aload 13 /* result */
            invokevirtual org.junit.runner.Result.wasSuccessful:()Z
            ifeq 87
            iconst_0
            goto 88
      StackMap locals: java.lang.String[] org.junit.internal.JUnitSystem org.junit.runner.JUnitCore com.oracle.mxtool.junit.MxJUnitRequest$Builder com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig java.lang.String[] int java.util.List java.util.List com.oracle.mxtool.junit.ModuleSupport java.util.Set java.util.Set com.oracle.mxtool.junit.MxJUnitRequest org.junit.runner.Result
      StackMap stack:
        87: iconst_1
      StackMap locals:
      StackMap stack: int
        88: invokestatic java.lang.System.exit:(I)V
        89: .line 224
            return
        end local 13 // org.junit.runner.Result result
        end local 12 // com.oracle.mxtool.junit.MxJUnitRequest request
        end local 11 // java.util.Set exported
        end local 10 // java.util.Set opened
        end local 9 // com.oracle.mxtool.junit.ModuleSupport moduleSupport
        end local 8 // java.util.List openPackagesSpecs
        end local 7 // java.util.List testSpecs
        end local 6 // int i
        end local 5 // java.lang.String[] expandedArgs
        end local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig config
        end local 3 // com.oracle.mxtool.junit.MxJUnitRequest$Builder builder
        end local 2 // org.junit.runner.JUnitCore junitCore
        end local 1 // org.junit.internal.JUnitSystem system
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   90     0               args  [Ljava/lang/String;
            1   90     1             system  Lorg/junit/internal/JUnitSystem;
            2   90     2          junitCore  Lorg/junit/runner/JUnitCore;
            5   90     3            builder  Lcom/oracle/mxtool/junit/MxJUnitRequest$Builder;
            6   90     4             config  Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;
            7   90     5       expandedArgs  [Ljava/lang/String;
            8   90     6                  i  I
            9   90     7          testSpecs  Ljava/util/List<Ljava/lang/String;>;
           10   90     8  openPackagesSpecs  Ljava/util/List<Ljava/lang/String;>;
           12   59     9               each  Ljava/lang/String;
           61   90     9      moduleSupport  Lcom/oracle/mxtool/junit/ModuleSupport;
           62   90    10             opened  Ljava/util/Set<Ljava/lang/String;>;
           63   90    11           exported  Ljava/util/Set<Ljava/lang/String;>;
           65   66    12               spec  Ljava/lang/String;
           69   74    12               spec  Ljava/lang/String;
           72   74    14                 ex  Lcom/oracle/mxtool/junit/MxJUnitRequest$BuilderException;
           76   90    12            request  Lcom/oracle/mxtool/junit/MxJUnitRequest;
           83   84    13                  p  Lorg/junit/runner/notification/RunListener;
           86   90    13             result  Lorg/junit/runner/Result;
      Exception table:
        from    to  target  type
          69    70      71  Class com.oracle.mxtool.junit.MxJUnitRequest$BuilderException
    MethodParameters:
      Name  Flags
      args  

  public static int parseIntArg(org.junit.internal.JUnitSystem, java.lang.String[], java.lang.String, int);
    descriptor: (Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.junit.internal.JUnitSystem system
        start local 1 // java.lang.String[] args
        start local 2 // java.lang.String name
        start local 3 // int index
         0: .line 227
            iload 3 /* index */
            aload 1 /* args */
            arraylength
            if_icmplt 3
         1: .line 228
            aload 0 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            ldc "Must include argument for %s%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         2: .line 229
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         3: .line 232
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iload 3 /* index */
            aaload
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
         4: ireturn
         5: .line 233
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            astore 4 /* e */
        start local 4 // java.lang.NumberFormatException e
         6: .line 234
            aload 0 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            ldc "Expected integer argument for %s. Found: %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            aastore
            dup
            iconst_1
            aload 1 /* args */
            iload 3 /* index */
            aaload
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         7: .line 235
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         8: .line 236
            aload 4 /* e */
            athrow
        end local 4 // java.lang.NumberFormatException e
        end local 3 // int index
        end local 2 // java.lang.String name
        end local 1 // java.lang.String[] args
        end local 0 // org.junit.internal.JUnitSystem system
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0  system  Lorg/junit/internal/JUnitSystem;
            0    9     1    args  [Ljava/lang/String;
            0    9     2    name  Ljava/lang/String;
            0    9     3   index  I
            6    9     4       e  Ljava/lang/NumberFormatException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.NumberFormatException
    MethodParameters:
        Name  Flags
      system  
      args    
      name    
      index   

  public static java.lang.String parseStringArg(org.junit.internal.JUnitSystem, java.lang.String[], java.lang.String, int);
    descriptor: (Lorg/junit/internal/JUnitSystem;[Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.junit.internal.JUnitSystem system
        start local 1 // java.lang.String[] args
        start local 2 // java.lang.String name
        start local 3 // int index
         0: .line 241
            iload 3 /* index */
            aload 1 /* args */
            arraylength
            if_icmplt 3
         1: .line 242
            aload 0 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            ldc "Must include argument for %s%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         2: .line 243
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         3: .line 245
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iload 3 /* index */
            aaload
            areturn
        end local 3 // int index
        end local 2 // java.lang.String name
        end local 1 // java.lang.String[] args
        end local 0 // org.junit.internal.JUnitSystem system
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  system  Lorg/junit/internal/JUnitSystem;
            0    4     1    args  [Ljava/lang/String;
            0    4     2    name  Ljava/lang/String;
            0    4     3   index  I
    MethodParameters:
        Name  Flags
      system  
      args    
      name    
      index   

  private static java.io.PrintStream openFile(org.junit.internal.JUnitSystem, java.lang.String);
    descriptor: (Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.junit.internal.JUnitSystem system
        start local 1 // java.lang.String name
         0: .line 249
            new java.io.File
            dup
            aload 1 /* name */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
            astore 2 /* file */
        start local 2 // java.io.File file
         1: .line 251
            new java.io.FileOutputStream
            dup
            aload 2 /* file */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 3 /* fos */
        start local 3 // java.io.FileOutputStream fos
         2: .line 252
            new java.io.PrintStream
            dup
            aload 3 /* fos */
            iconst_1
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;Z)V
         3: areturn
        end local 3 // java.io.FileOutputStream fos
         4: .line 253
      StackMap locals: org.junit.internal.JUnitSystem java.lang.String java.io.File
      StackMap stack: java.io.FileNotFoundException
            astore 3 /* e */
        start local 3 // java.io.FileNotFoundException e
         5: .line 254
            aload 0 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Could not open "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " for writing: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 255
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         7: .line 256
            aconst_null
            areturn
        end local 3 // java.io.FileNotFoundException e
        end local 2 // java.io.File file
        end local 1 // java.lang.String name
        end local 0 // org.junit.internal.JUnitSystem system
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  system  Lorg/junit/internal/JUnitSystem;
            0    8     1    name  Ljava/lang/String;
            1    8     2    file  Ljava/io/File;
            2    4     3     fos  Ljava/io/FileOutputStream;
            5    8     3       e  Ljava/io/FileNotFoundException;
      Exception table:
        from    to  target  type
           1     3       4  Class java.io.FileNotFoundException
    MethodParameters:
        Name  Flags
      system  
      name    

  public static org.junit.runner.Result runRequest(org.junit.runner.JUnitCore, org.junit.internal.JUnitSystem, com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig, com.oracle.mxtool.junit.MxJUnitRequest);
    descriptor: (Lorg/junit/runner/JUnitCore;Lorg/junit/internal/JUnitSystem;Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;Lcom/oracle/mxtool/junit/MxJUnitRequest;)Lorg/junit/runner/Result;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=14, args_size=4
        start local 0 // org.junit.runner.JUnitCore junitCore
        start local 1 // org.junit.internal.JUnitSystem system
        start local 2 // com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig config
        start local 3 // com.oracle.mxtool.junit.MxJUnitRequest mxRequest
         0: .line 262
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.veryVerbose:Z
            ifeq 3
         1: .line 263
            new com.oracle.mxtool.junit.VerboseTextListener
            dup
            aload 1 /* system */
            aload 3 /* mxRequest */
            getfield com.oracle.mxtool.junit.MxJUnitRequest.classes:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            ldc 2147483647
            invokespecial com.oracle.mxtool.junit.VerboseTextListener.<init>:(Lorg/junit/internal/JUnitSystem;II)V
            astore 4 /* textListener */
        start local 4 // com.oracle.mxtool.junit.TextRunListener textListener
         2: .line 264
            goto 7
        end local 4 // com.oracle.mxtool.junit.TextRunListener textListener
      StackMap locals:
      StackMap stack:
         3: aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.verbose:Z
            ifeq 6
         4: .line 265
            new com.oracle.mxtool.junit.VerboseTextListener
            dup
            aload 1 /* system */
            aload 3 /* mxRequest */
            getfield com.oracle.mxtool.junit.MxJUnitRequest.classes:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            invokespecial com.oracle.mxtool.junit.VerboseTextListener.<init>:(Lorg/junit/internal/JUnitSystem;I)V
            astore 4 /* textListener */
        start local 4 // com.oracle.mxtool.junit.TextRunListener textListener
         5: .line 266
            goto 7
        end local 4 // com.oracle.mxtool.junit.TextRunListener textListener
         6: .line 267
      StackMap locals:
      StackMap stack:
            new com.oracle.mxtool.junit.TextRunListener
            dup
            aload 1 /* system */
            invokespecial com.oracle.mxtool.junit.TextRunListener.<init>:(Lorg/junit/internal/JUnitSystem;)V
            astore 4 /* textListener */
        start local 4 // com.oracle.mxtool.junit.TextRunListener textListener
         7: .line 269
      StackMap locals: com.oracle.mxtool.junit.TextRunListener
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
            ifeq 8
            new com.oracle.mxtool.junit.TimingDecorator
            dup
            aload 4 /* textListener */
            invokespecial com.oracle.mxtool.junit.TimingDecorator.<init>:(Lcom/oracle/mxtool/junit/MxRunListener;)V
            goto 9
      StackMap locals:
      StackMap stack:
         8: aconst_null
      StackMap locals:
      StackMap stack: com.oracle.mxtool.junit.TimingDecorator
         9: astore 5 /* timings */
        start local 5 // com.oracle.mxtool.junit.TimingDecorator timings
        10: .line 270
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
            ifeq 11
            aload 5 /* timings */
            goto 12
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator
      StackMap stack:
        11: aload 4 /* textListener */
      StackMap locals:
      StackMap stack: com.oracle.mxtool.junit.MxRunListener
        12: astore 6 /* mxListener */
        start local 6 // com.oracle.mxtool.junit.MxRunListener mxListener
        13: .line 271
            aconst_null
            astore 7 /* resultLoggerDecorator */
        start local 7 // com.oracle.mxtool.junit.ResultCollectorDecorator resultLoggerDecorator
        14: .line 274
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.failFast:Z
            ifeq 18
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
            ifne 18
        15: .line 275
            iconst_1
            istore 8 /* failingFast */
        start local 8 // boolean failingFast
        16: .line 276
            aload 2 /* config */
            iconst_1
            putfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
        17: .line 277
            goto 19
        end local 8 // boolean failingFast
        18: .line 278
      StackMap locals: com.oracle.mxtool.junit.MxRunListener com.oracle.mxtool.junit.ResultCollectorDecorator
      StackMap stack:
            iconst_0
            istore 8 /* failingFast */
        start local 8 // boolean failingFast
        19: .line 281
      StackMap locals: int
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.color:Z
            ifeq 21
        20: .line 282
            new com.oracle.mxtool.junit.AnsiTerminalDecorator
            dup
            aload 6 /* mxListener */
            invokespecial com.oracle.mxtool.junit.AnsiTerminalDecorator.<init>:(Lcom/oracle/mxtool/junit/MxRunListener;)V
            astore 6 /* mxListener */
        21: .line 284
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.eagerStackTrace:Z
            ifeq 23
        22: .line 285
            new com.oracle.mxtool.junit.EagerStackTraceDecorator
            dup
            aload 6 /* mxListener */
            invokespecial com.oracle.mxtool.junit.EagerStackTraceDecorator.<init>:(Lcom/oracle/mxtool/junit/MxRunListener;)V
            astore 6 /* mxListener */
        23: .line 287
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.gcAfterTest:Z
            ifeq 25
        24: .line 288
            new com.oracle.mxtool.junit.GCAfterTestDecorator
            dup
            aload 6 /* mxListener */
            invokespecial com.oracle.mxtool.junit.GCAfterTestDecorator.<init>:(Lcom/oracle/mxtool/junit/MxRunListener;)V
            astore 6 /* mxListener */
        25: .line 290
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordResults:Z
            ifeq 29
        26: .line 291
            aload 1 /* system */
            ldc "passed.txt"
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.openFile:(Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
            astore 9 /* passed */
        start local 9 // java.io.PrintStream passed
        27: .line 292
            aload 1 /* system */
            ldc "failed.txt"
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.openFile:(Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
            astore 10 /* failed */
        start local 10 // java.io.PrintStream failed
        28: .line 293
            new com.oracle.mxtool.junit.TestResultLoggerDecorator
            dup
            aload 9 /* passed */
            aload 10 /* failed */
            aload 6 /* mxListener */
            invokespecial com.oracle.mxtool.junit.TestResultLoggerDecorator.<init>:(Ljava/io/PrintStream;Ljava/io/PrintStream;Lcom/oracle/mxtool/junit/MxRunListener;)V
            astore 6 /* mxListener */
        end local 10 // java.io.PrintStream failed
        end local 9 // java.io.PrintStream passed
        29: .line 295
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordFailed:Ljava/lang/String;
            ifnonnull 30
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordPassed:Ljava/lang/String;
            ifnull 32
        30: .line 296
      StackMap locals:
      StackMap stack:
            new com.oracle.mxtool.junit.ResultCollectorDecorator
            dup
            aload 6 /* mxListener */
            invokespecial com.oracle.mxtool.junit.ResultCollectorDecorator.<init>:(Lcom/oracle/mxtool/junit/MxRunListener;)V
            astore 7 /* resultLoggerDecorator */
        31: .line 297
            aload 7 /* resultLoggerDecorator */
            astore 6 /* mxListener */
        32: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* junitCore */
            aload 6 /* mxListener */
            invokestatic com.oracle.mxtool.junit.TextRunListener.createRunListener:(Lcom/oracle/mxtool/junit/MxRunListener;)Lorg/junit/runner/notification/RunListener;
            invokevirtual org.junit.runner.JUnitCore.addListener:(Lorg/junit/runner/notification/RunListener;)V
        33: .line 302
            aload 3 /* mxRequest */
            invokevirtual com.oracle.mxtool.junit.MxJUnitRequest.getRequest:()Lorg/junit/runner/Request;
            astore 9 /* request */
        start local 9 // org.junit.runner.Request request
        34: .line 303
            aload 3 /* mxRequest */
            getfield com.oracle.mxtool.junit.MxJUnitRequest.methodName:Ljava/lang/String;
            ifnonnull 43
        35: .line 304
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
            ifle 45
        36: .line 305
            aload 9 /* request */
            invokevirtual org.junit.runner.Request.getRunner:()Lorg/junit/runner/Runner;
            astore 10 /* runner */
        start local 10 // org.junit.runner.Runner runner
        37: .line 306
            aload 10 /* runner */
            instanceof org.junit.runners.ParentRunner
            ifeq 41
        38: .line 307
            aload 10 /* runner */
            checkcast org.junit.runners.ParentRunner
            astore 11 /* parentRunner */
        start local 11 // org.junit.runners.ParentRunner parentRunner
        39: .line 308
            aload 11 /* parentRunner */
            new com.oracle.mxtool.junit.MxJUnitWrapper$1
            dup
            aload 4 /* textListener */
            aload 2 /* config */
            iload 8 /* failingFast */
            aload 1 /* system */
            invokespecial com.oracle.mxtool.junit.MxJUnitWrapper$1.<init>:(Lcom/oracle/mxtool/junit/TextRunListener;Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;ZLorg/junit/internal/JUnitSystem;)V
            invokevirtual org.junit.runners.ParentRunner.setScheduler:(Lorg/junit/runners/model/RunnerScheduler;)V
        end local 11 // org.junit.runners.ParentRunner parentRunner
        40: .line 331
            goto 45
        41: .line 332
      StackMap locals: org.junit.runner.Request org.junit.runner.Runner
      StackMap stack:
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Unexpected Runner subclass "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* runner */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " - fail fast not supported"
            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
        end local 10 // org.junit.runner.Runner runner
        42: .line 335
            goto 45
        43: .line 336
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.maxClassFailures:I
            ifeq 45
        44: .line 337
            aload 1 /* system */
            invokeinterface org.junit.internal.JUnitSystem.out:()Ljava/io/PrintStream;
            ldc "Single method selected - fail fast or max failure limit not supported"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        45: .line 341
      StackMap locals:
      StackMap stack:
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.repeatCount:I
            iconst_1
            if_icmpeq 47
        46: .line 342
            new com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRequest
            dup
            aload 9 /* request */
            aload 2 /* config */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.repeatCount:I
            invokespecial com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRequest.<init>:(Lorg/junit/runner/Request;I)V
            astore 9 /* request */
        47: .line 345
      StackMap locals:
      StackMap stack:
            aload 7 /* resultLoggerDecorator */
            astore 10 /* finalResultLoggerDecorator */
        start local 10 // com.oracle.mxtool.junit.ResultCollectorDecorator finalResultLoggerDecorator
        48: .line 346
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            new java.lang.Thread
            dup
            aload 2 /* config */
            aload 5 /* timings */
            aload 1 /* system */
            aload 10 /* finalResultLoggerDecorator */
            invokedynamic run(Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;Lcom/oracle/mxtool/junit/TimingDecorator;Lorg/junit/internal/JUnitSystem;Lcom/oracle/mxtool/junit/ResultCollectorDecorator;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  com/oracle/mxtool/junit/MxJUnitWrapper.lambda$0(Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;Lcom/oracle/mxtool/junit/TimingDecorator;Lorg/junit/internal/JUnitSystem;Lcom/oracle/mxtool/junit/ResultCollectorDecorator;)V (6)
                  ()V
            invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;)V
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        49: .line 357
            aload 0 /* junitCore */
            aload 9 /* request */
            invokevirtual org.junit.runner.JUnitCore.run:(Lorg/junit/runner/Request;)Lorg/junit/runner/Result;
            astore 11 /* result */
        start local 11 // org.junit.runner.Result result
        50: .line 358
            aload 3 /* mxRequest */
            getfield com.oracle.mxtool.junit.MxJUnitRequest.missingClasses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 53
      StackMap locals: org.junit.runner.JUnitCore org.junit.internal.JUnitSystem com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig com.oracle.mxtool.junit.MxJUnitRequest com.oracle.mxtool.junit.TextRunListener com.oracle.mxtool.junit.TimingDecorator com.oracle.mxtool.junit.MxRunListener com.oracle.mxtool.junit.ResultCollectorDecorator int org.junit.runner.Request com.oracle.mxtool.junit.ResultCollectorDecorator org.junit.runner.Result top java.util.Iterator
      StackMap stack:
        51: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.junit.runner.notification.Failure
            astore 12 /* each */
        start local 12 // org.junit.runner.notification.Failure each
        52: .line 359
            aload 11 /* result */
            invokevirtual org.junit.runner.Result.getFailures:()Ljava/util/List;
            aload 12 /* each */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 12 // org.junit.runner.notification.Failure each
        53: .line 358
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 51
        54: .line 362
            aload 11 /* result */
            areturn
        end local 11 // org.junit.runner.Result result
        end local 10 // com.oracle.mxtool.junit.ResultCollectorDecorator finalResultLoggerDecorator
        end local 9 // org.junit.runner.Request request
        end local 8 // boolean failingFast
        end local 7 // com.oracle.mxtool.junit.ResultCollectorDecorator resultLoggerDecorator
        end local 6 // com.oracle.mxtool.junit.MxRunListener mxListener
        end local 5 // com.oracle.mxtool.junit.TimingDecorator timings
        end local 4 // com.oracle.mxtool.junit.TextRunListener textListener
        end local 3 // com.oracle.mxtool.junit.MxJUnitRequest mxRequest
        end local 2 // com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig config
        end local 1 // org.junit.internal.JUnitSystem system
        end local 0 // org.junit.runner.JUnitCore junitCore
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   55     0                   junitCore  Lorg/junit/runner/JUnitCore;
            0   55     1                      system  Lorg/junit/internal/JUnitSystem;
            0   55     2                      config  Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;
            0   55     3                   mxRequest  Lcom/oracle/mxtool/junit/MxJUnitRequest;
            2    3     4                textListener  Lcom/oracle/mxtool/junit/TextRunListener;
            5    6     4                textListener  Lcom/oracle/mxtool/junit/TextRunListener;
            7   55     4                textListener  Lcom/oracle/mxtool/junit/TextRunListener;
           10   55     5                     timings  Lcom/oracle/mxtool/junit/TimingDecorator;
           13   55     6                  mxListener  Lcom/oracle/mxtool/junit/MxRunListener;
           14   55     7       resultLoggerDecorator  Lcom/oracle/mxtool/junit/ResultCollectorDecorator;
           16   18     8                 failingFast  Z
           19   55     8                 failingFast  Z
           27   29     9                      passed  Ljava/io/PrintStream;
           28   29    10                      failed  Ljava/io/PrintStream;
           34   55     9                     request  Lorg/junit/runner/Request;
           37   42    10                      runner  Lorg/junit/runner/Runner;
           39   40    11                parentRunner  Lorg/junit/runners/ParentRunner<*>;
           48   55    10  finalResultLoggerDecorator  Lcom/oracle/mxtool/junit/ResultCollectorDecorator;
           50   55    11                      result  Lorg/junit/runner/Result;
           52   53    12                        each  Lorg/junit/runner/notification/Failure;
    MethodParameters:
           Name  Flags
      junitCore  
      system     
      config     
      mxRequest  

  private static java.io.PrintStream getResultStream(org.junit.internal.JUnitSystem, java.lang.String);
    descriptor: (Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.junit.internal.JUnitSystem system
        start local 1 // java.lang.String file
         0: .line 366
            aload 1 /* file */
            ifnonnull 2
         1: .line 367
            aconst_null
            areturn
         2: .line 369
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 370
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            areturn
         4: .line 372
      StackMap locals:
      StackMap stack:
            aload 0 /* system */
            aload 1 /* file */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.openFile:(Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
            areturn
        end local 1 // java.lang.String file
        end local 0 // org.junit.internal.JUnitSystem system
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  system  Lorg/junit/internal/JUnitSystem;
            0    5     1    file  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      system  
      file    

  private static void printTimings(com.oracle.mxtool.junit.TimingDecorator);
    descriptor: (Lcom/oracle/mxtool/junit/TimingDecorator;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=12, args_size=1
        start local 0 // com.oracle.mxtool.junit.TimingDecorator timings
         0: .line 400
            getstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            ifeq 46
         1: .line 401
            new java.util.ArrayList
            dup
            aload 0 /* timings */
            getfield com.oracle.mxtool.junit.TimingDecorator.classTimes:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* classTimes */
        start local 1 // java.util.List classTimes
         2: .line 402
            new java.util.ArrayList
            dup
            aload 0 /* timings */
            getfield com.oracle.mxtool.junit.TimingDecorator.testTimes:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* testTimes */
        start local 2 // java.util.List testTimes
         3: .line 403
            aload 0 /* timings */
            getfield com.oracle.mxtool.junit.TimingDecorator.classTimes:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* e */
        start local 3 // java.util.Map$Entry e
         5: .line 404
            aload 1 /* classTimes */
            new com.oracle.mxtool.junit.MxJUnitWrapper$Timing
            dup
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Class
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            invokespecial com.oracle.mxtool.junit.MxJUnitWrapper$Timing.<init>:(Ljava/lang/Object;J)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.util.Map$Entry e
         6: .line 403
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 406
            aload 0 /* timings */
            getfield com.oracle.mxtool.junit.TimingDecorator.testTimes:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 10
      StackMap locals:
      StackMap stack:
         8: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* e */
        start local 3 // java.util.Map$Entry e
         9: .line 407
            aload 2 /* testTimes */
            new com.oracle.mxtool.junit.MxJUnitWrapper$Timing
            dup
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.junit.runner.Description
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            invokespecial com.oracle.mxtool.junit.MxJUnitWrapper$Timing.<init>:(Ljava/lang/Object;J)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.util.Map$Entry e
        10: .line 406
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 409
            aload 1 /* classTimes */
            invokestatic java.util.Collections.reverseOrder:()Ljava/util/Comparator;
            invokeinterface java.util.List.sort:(Ljava/util/Comparator;)V
        12: .line 410
            aload 2 /* testTimes */
            invokestatic java.util.Collections.reverseOrder:()Ljava/util/Comparator;
            invokeinterface java.util.List.sort:(Ljava/util/Comparator;)V
        13: .line 412
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        14: .line 413
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "%d longest running test classes:%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        15: .line 414
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        16: goto 20
        17: .line 415
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator java.util.List java.util.List int
      StackMap stack:
            aload 1 /* classTimes */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.mxtool.junit.MxJUnitWrapper$Timing
            astore 4 /* timing */
        start local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$Timing timing
        18: .line 416
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc " %,10d ms    %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* timing */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$Timing.value:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 4 /* timing */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$Timing.subject:Ljava/lang/Object;
            checkcast java.lang.Class
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$Timing timing
        19: .line 414
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 3 /* i */
            getstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            if_icmpge 21
            iload 3 /* i */
            aload 1 /* classTimes */
            invokeinterface java.util.List.size:()I
            if_icmplt 17
        end local 3 // int i
        21: .line 418
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "%d longest running tests:%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        22: .line 419
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        23: goto 27
        24: .line 420
      StackMap locals: int
      StackMap stack:
            aload 2 /* testTimes */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.mxtool.junit.MxJUnitWrapper$Timing
            astore 4 /* timing */
        start local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$Timing timing
        25: .line 421
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc " %,10d ms    %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* timing */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$Timing.value:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 4 /* timing */
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$Timing.subject:Ljava/lang/Object;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 4 // com.oracle.mxtool.junit.MxJUnitWrapper$Timing timing
        26: .line 419
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 3 /* i */
            getstatic com.oracle.mxtool.junit.MxJUnitWrapper.TIMINGS_TO_PRINT:I
            if_icmpge 28
            iload 3 /* i */
            aload 2 /* testTimes */
            invokeinterface java.util.List.size:()I
            if_icmplt 24
        end local 3 // int i
        28: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* timings */
            invokevirtual com.oracle.mxtool.junit.TimingDecorator.getCurrentTestDuration:()[Ljava/lang/Object;
            astore 3 /* current */
        start local 3 // java.lang.Object[] current
        29: .line 424
            aload 3 /* current */
            ifnull 46
        30: .line 425
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Test %s not finished after %d ms%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* current */
            iconst_0
            aaload
            aastore
            dup
            iconst_1
            aload 3 /* current */
            iconst_1
            aaload
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        31: .line 427
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        32: .line 428
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "---- DUMPING ALL THREADS ----"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        33: .line 429
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        34: .line 431
            invokestatic java.lang.Thread.getAllStackTraces:()Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 45
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator java.util.List java.util.List java.lang.Object[] top java.util.Iterator
      StackMap stack:
        35: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* e */
        start local 4 // java.util.Map$Entry e
        36: .line 432
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Thread
            astore 6 /* thread */
        start local 6 // java.lang.Thread thread
        37: .line 433
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.StackTraceElement[]
            astore 7 /* els */
        start local 7 // java.lang.StackTraceElement[] els
        38: .line 434
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 6 /* thread */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        39: .line 435
            aload 7 /* els */
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 43
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator java.util.List java.util.List java.lang.Object[] java.util.Map$Entry java.util.Iterator java.lang.Thread java.lang.StackTraceElement[] top int int java.lang.StackTraceElement[]
      StackMap stack:
        40: aload 11
            iload 9
            aaload
            astore 8 /* el */
        start local 8 // java.lang.StackTraceElement el
        41: .line 436
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "\tat "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* el */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 8 // java.lang.StackTraceElement el
        42: .line 435
            iinc 9 1
      StackMap locals:
      StackMap stack:
        43: iload 9
            iload 10
            if_icmplt 40
        44: .line 438
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        end local 7 // java.lang.StackTraceElement[] els
        end local 6 // java.lang.Thread thread
        end local 4 // java.util.Map$Entry e
        45: .line 431
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator java.util.List java.util.List java.lang.Object[] top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        end local 3 // java.lang.Object[] current
        end local 2 // java.util.List testTimes
        end local 1 // java.util.List classTimes
        46: .line 442
      StackMap locals: com.oracle.mxtool.junit.TimingDecorator
      StackMap stack:
            return
        end local 0 // com.oracle.mxtool.junit.TimingDecorator timings
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   47     0     timings  Lcom/oracle/mxtool/junit/TimingDecorator;
            2   46     1  classTimes  Ljava/util/List<Lcom/oracle/mxtool/junit/MxJUnitWrapper$Timing<Ljava/lang/Class<*>;>;>;
            3   46     2   testTimes  Ljava/util/List<Lcom/oracle/mxtool/junit/MxJUnitWrapper$Timing<Lorg/junit/runner/Description;>;>;
            5    6     3           e  Ljava/util/Map$Entry<Ljava/lang/Class<*>;Ljava/lang/Long;>;
            9   10     3           e  Ljava/util/Map$Entry<Lorg/junit/runner/Description;Ljava/lang/Long;>;
           16   21     3           i  I
           18   19     4      timing  Lcom/oracle/mxtool/junit/MxJUnitWrapper$Timing<Ljava/lang/Class<*>;>;
           23   28     3           i  I
           25   26     4      timing  Lcom/oracle/mxtool/junit/MxJUnitWrapper$Timing<Lorg/junit/runner/Description;>;
           29   46     3     current  [Ljava/lang/Object;
           36   45     4           e  Ljava/util/Map$Entry<Ljava/lang/Thread;[Ljava/lang/StackTraceElement;>;
           37   45     6      thread  Ljava/lang/Thread;
           38   45     7         els  [Ljava/lang/StackTraceElement;
           41   42     8          el  Ljava/lang/StackTraceElement;
    MethodParameters:
         Name  Flags
      timings  

  private static void printResult(com.oracle.mxtool.junit.ResultCollectorDecorator, java.io.PrintStream, java.io.PrintStream);
    descriptor: (Lcom/oracle/mxtool/junit/ResultCollectorDecorator;Ljava/io/PrintStream;Ljava/io/PrintStream;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.oracle.mxtool.junit.ResultCollectorDecorator results
        start local 1 // java.io.PrintStream passed
        start local 2 // java.io.PrintStream failed
         0: .line 445
            aload 1 /* passed */
            ifnull 8
            aload 0 /* results */
            invokevirtual com.oracle.mxtool.junit.ResultCollectorDecorator.getPassed:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 8
         1: .line 446
            aload 1 /* passed */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            istore 3 /* isStdOut */
        start local 3 // boolean isStdOut
         2: .line 447
            iload 3 /* isStdOut */
            ifeq 4
         3: .line 448
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Passed tests:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 450
      StackMap locals: int
      StackMap stack:
            iload 3 /* isStdOut */
            ifeq 5
            ldc "  "
            goto 6
      StackMap locals:
      StackMap stack:
         5: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
         6: astore 4 /* prefix */
        start local 4 // java.lang.String prefix
         7: .line 451
            aload 0 /* results */
            invokevirtual com.oracle.mxtool.junit.ResultCollectorDecorator.getPassed:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 4 /* prefix */
            invokedynamic apply(Ljava/lang/String;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/mxtool/junit/MxJUnitWrapper.lambda$1(Ljava/lang/String;Lorg/junit/runner/Description;)Ljava/lang/String; (6)
                  (Lorg/junit/runner/Description;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            aload 1 /* passed */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/io/PrintStream;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/io/PrintStream.println(Ljava/lang/String;)V (5)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        end local 4 // java.lang.String prefix
        end local 3 // boolean isStdOut
         8: .line 453
      StackMap locals:
      StackMap stack:
            aload 2 /* failed */
            ifnull 16
            aload 0 /* results */
            invokevirtual com.oracle.mxtool.junit.ResultCollectorDecorator.getFailed:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 16
         9: .line 454
            aload 2 /* failed */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            istore 3 /* isStdout */
        start local 3 // boolean isStdout
        10: .line 455
            iload 3 /* isStdout */
            ifeq 12
        11: .line 456
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Failing tests:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        12: .line 458
      StackMap locals: int
      StackMap stack:
            iload 3 /* isStdout */
            ifeq 13
            ldc "  "
            goto 14
      StackMap locals:
      StackMap stack:
        13: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
        14: astore 4 /* prefix */
        start local 4 // java.lang.String prefix
        15: .line 459
            aload 0 /* results */
            invokevirtual com.oracle.mxtool.junit.ResultCollectorDecorator.getFailed:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 4 /* prefix */
            invokedynamic apply(Ljava/lang/String;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/mxtool/junit/MxJUnitWrapper.lambda$3(Ljava/lang/String;Lorg/junit/runner/notification/Failure;)Ljava/lang/String; (6)
                  (Lorg/junit/runner/notification/Failure;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            aload 2 /* failed */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/io/PrintStream;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/io/PrintStream.println(Ljava/lang/String;)V (5)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        end local 4 // java.lang.String prefix
        end local 3 // boolean isStdout
        16: .line 461
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.io.PrintStream failed
        end local 1 // java.io.PrintStream passed
        end local 0 // com.oracle.mxtool.junit.ResultCollectorDecorator results
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0   results  Lcom/oracle/mxtool/junit/ResultCollectorDecorator;
            0   17     1    passed  Ljava/io/PrintStream;
            0   17     2    failed  Ljava/io/PrintStream;
            2    8     3  isStdOut  Z
            7    8     4    prefix  Ljava/lang/String;
           10   16     3  isStdout  Z
           15   16     4    prefix  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      results  
      passed   
      failed   

  private static java.lang.String getFormattedDescription(org.junit.runner.Description);
    descriptor: (Lorg/junit/runner/Description;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.junit.runner.Description description
         0: .line 464
            new java.lang.StringBuilder
            dup
            aload 0 /* description */
            invokevirtual org.junit.runner.Description.getClassName:()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 /* description */
            invokevirtual org.junit.runner.Description.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.junit.runner.Description description
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  description  Lorg/junit/runner/Description;
    MethodParameters:
             Name  Flags
      description  

  private static java.lang.String[] expandArgs(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 473
            aconst_null
            astore 1 /* result */
        start local 1 // java.util.List result
         1: .line 474
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 17
         3: .line 475
      StackMap locals: java.util.List int
      StackMap stack:
            aload 0 /* args */
            iload 2 /* i */
            aaload
            astore 3 /* arg */
        start local 3 // java.lang.String arg
         4: .line 476
            aload 3 /* arg */
            invokevirtual java.lang.String.length:()I
            ifle 14
            aload 3 /* arg */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 64
            if_icmpne 14
         5: .line 477
            aload 1 /* result */
            ifnonnull 16
         6: .line 478
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* result */
         7: .line 479
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         8: goto 11
         9: .line 480
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 1 /* result */
            aload 0 /* args */
            iload 4 /* j */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 479
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* j */
            iload 2 /* i */
            if_icmplt 9
        end local 4 // int j
        12: .line 482
            aload 3 /* arg */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 1 /* result */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.expandArg:(Ljava/lang/String;Ljava/util/List;)V
        13: .line 484
            goto 16
      StackMap locals:
      StackMap stack:
        14: aload 1 /* result */
            ifnull 16
        15: .line 485
            aload 1 /* result */
            aload 3 /* arg */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String arg
        16: .line 474
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 2 /* i */
            aload 0 /* args */
            arraylength
            if_icmplt 3
        end local 2 // int i
        18: .line 488
            aload 1 /* result */
            ifnull 19
            aload 1 /* result */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 0 /* args */
      StackMap locals:
      StackMap stack: java.lang.String[]
        20: areturn
        end local 1 // java.util.List result
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    args  [Ljava/lang/String;
            1   21     1  result  Ljava/util/List<Ljava/lang/String;>;
            2   18     2       i  I
            4   16     3     arg  Ljava/lang/String;
            8   12     4       j  I
    MethodParameters:
      Name  Flags
      args  

  private static void expandArg(java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // java.lang.String filename
        start local 1 // java.util.List args
         0: .line 495
            aconst_null
            astore 2 /* br */
        start local 2 // java.io.BufferedReader br
         1: .line 497
            new java.io.BufferedReader
            dup
            new java.io.FileReader
            dup
            aload 0 /* filename */
            invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 2 /* br */
         2: .line 500
            goto 4
        start local 3 // java.lang.String buf
         3: .line 501
      StackMap locals: java.io.BufferedReader java.lang.String
      StackMap stack:
            aload 1 /* args */
            aload 3 /* buf */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String buf
         4: .line 500
      StackMap locals:
      StackMap stack:
            aload 2 /* br */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            dup
            astore 3 /* buf */
        start local 3 // java.lang.String buf
         5: ifnonnull 3
         6: .line 503
            aload 2 /* br */
            invokevirtual java.io.BufferedReader.close:()V
        end local 3 // java.lang.String buf
         7: .line 504
            goto 26
      StackMap locals:
      StackMap stack: java.io.IOException
         8: astore 3 /* ioe */
        start local 3 // java.io.IOException ioe
         9: .line 505
            aload 3 /* ioe */
            invokevirtual java.io.IOException.printStackTrace:()V
        10: .line 506
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        end local 3 // java.io.IOException ioe
        11: .line 509
            aload 2 /* br */
            ifnull 32
        12: .line 510
            aload 2 /* br */
            invokevirtual java.io.BufferedReader.close:()V
        13: .line 512
            goto 32
      StackMap locals:
      StackMap stack: java.io.IOException
        14: astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        15: .line 513
            aload 5 /* ioe */
            invokevirtual java.io.IOException.printStackTrace:()V
        16: .line 514
            iconst_3
            invokestatic java.lang.System.exit:(I)V
        end local 5 // java.io.IOException ioe
        17: goto 32
        18: .line 507
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        19: .line 509
            aload 2 /* br */
            ifnull 25
        20: .line 510
            aload 2 /* br */
            invokevirtual java.io.BufferedReader.close:()V
        21: .line 512
            goto 25
      StackMap locals: java.lang.String java.util.List java.io.BufferedReader top java.lang.Throwable
      StackMap stack: java.io.IOException
        22: astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        23: .line 513
            aload 5 /* ioe */
            invokevirtual java.io.IOException.printStackTrace:()V
        24: .line 514
            iconst_3
            invokestatic java.lang.System.exit:(I)V
        end local 5 // java.io.IOException ioe
        25: .line 516
      StackMap locals:
      StackMap stack:
            aload 4
            athrow
        26: .line 509
      StackMap locals: java.lang.String java.util.List java.io.BufferedReader
      StackMap stack:
            aload 2 /* br */
            ifnull 32
        27: .line 510
            aload 2 /* br */
            invokevirtual java.io.BufferedReader.close:()V
        28: .line 512
            goto 32
      StackMap locals:
      StackMap stack: java.io.IOException
        29: astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        30: .line 513
            aload 5 /* ioe */
            invokevirtual java.io.IOException.printStackTrace:()V
        31: .line 514
            iconst_3
            invokestatic java.lang.System.exit:(I)V
        end local 5 // java.io.IOException ioe
        32: .line 517
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.io.BufferedReader br
        end local 1 // java.util.List args
        end local 0 // java.lang.String filename
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   33     0  filename  Ljava/lang/String;
            0   33     1      args  Ljava/util/List<Ljava/lang/String;>;
            1   33     2        br  Ljava/io/BufferedReader;
            3    4     3       buf  Ljava/lang/String;
            5    7     3       buf  Ljava/lang/String;
            9   11     3       ioe  Ljava/io/IOException;
           15   17     5       ioe  Ljava/io/IOException;
           23   25     5       ioe  Ljava/io/IOException;
           30   32     5       ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     7       8  Class java.io.IOException
          11    13      14  Class java.io.IOException
           1    11      18  any
          19    21      22  Class java.io.IOException
          26    28      29  Class java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
          Name  Flags
      filename  
      args      

  private static void lambda$0(com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig, com.oracle.mxtool.junit.TimingDecorator, org.junit.internal.JUnitSystem, com.oracle.mxtool.junit.ResultCollectorDecorator);
    descriptor: (Lcom/oracle/mxtool/junit/MxJUnitWrapper$MxJUnitConfig;Lcom/oracle/mxtool/junit/TimingDecorator;Lorg/junit/internal/JUnitSystem;Lcom/oracle/mxtool/junit/ResultCollectorDecorator;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=6, args_size=4
         0: .line 347
            aload 0
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.enableTiming:Z
            ifeq 2
         1: .line 348
            aload 1
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.printTimings:(Lcom/oracle/mxtool/junit/TimingDecorator;)V
         2: .line 350
      StackMap locals:
      StackMap stack:
            aload 0
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordFailed:Ljava/lang/String;
            ifnonnull 3
            aload 0
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordPassed:Ljava/lang/String;
            ifnull 6
         3: .line 351
      StackMap locals:
      StackMap stack:
            aload 2
            aload 0
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordPassed:Ljava/lang/String;
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.getResultStream:(Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
            astore 4 /* passed */
        start local 4 // java.io.PrintStream passed
         4: .line 352
            aload 2
            aload 0
            getfield com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig.recordFailed:Ljava/lang/String;
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.getResultStream:(Lorg/junit/internal/JUnitSystem;Ljava/lang/String;)Ljava/io/PrintStream;
            astore 5 /* failed */
        start local 5 // java.io.PrintStream failed
         5: .line 353
            aload 3
            aload 4 /* passed */
            aload 5 /* failed */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.printResult:(Lcom/oracle/mxtool/junit/ResultCollectorDecorator;Ljava/io/PrintStream;Ljava/io/PrintStream;)V
        end local 5 // java.io.PrintStream failed
        end local 4 // java.io.PrintStream passed
         6: .line 355
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            4    6     4  passed  Ljava/io/PrintStream;
            5    6     5  failed  Ljava/io/PrintStream;

  private static java.lang.String lambda$1(java.lang.String, org.junit.runner.Description);
    descriptor: (Ljava/lang/String;Lorg/junit/runner/Description;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.junit.runner.Description d
         0: .line 451
            new java.lang.StringBuilder
            dup
            aload 0
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* d */
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.getFormattedDescription:(Lorg/junit/runner/Description;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // org.junit.runner.Description d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     d  Lorg/junit/runner/Description;

  private static java.lang.String lambda$3(java.lang.String, org.junit.runner.notification.Failure);
    descriptor: (Ljava/lang/String;Lorg/junit/runner/notification/Failure;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.junit.runner.notification.Failure d
         0: .line 459
            new java.lang.StringBuilder
            dup
            aload 0
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* d */
            invokevirtual org.junit.runner.notification.Failure.getDescription:()Lorg/junit/runner/Description;
            invokestatic com.oracle.mxtool.junit.MxJUnitWrapper.getFormattedDescription:(Lorg/junit/runner/Description;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // org.junit.runner.notification.Failure d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     d  Lorg/junit/runner/notification/Failure;
}
SourceFile: "MxJUnitWrapper.java"
NestMembers:
  com.oracle.mxtool.junit.MxJUnitWrapper$1  com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig  com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRequest  com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRunner  com.oracle.mxtool.junit.MxJUnitWrapper$Timing
InnerClasses:
  public Builder = com.oracle.mxtool.junit.MxJUnitRequest$Builder of com.oracle.mxtool.junit.MxJUnitRequest
  public final BuilderException = com.oracle.mxtool.junit.MxJUnitRequest$BuilderException of com.oracle.mxtool.junit.MxJUnitRequest
  com.oracle.mxtool.junit.MxJUnitWrapper$1
  public MxJUnitConfig = com.oracle.mxtool.junit.MxJUnitWrapper$MxJUnitConfig of com.oracle.mxtool.junit.MxJUnitWrapper
  private RepeatingRequest = com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRequest of com.oracle.mxtool.junit.MxJUnitWrapper
  private RepeatingRunner = com.oracle.mxtool.junit.MxJUnitWrapper$RepeatingRunner of com.oracle.mxtool.junit.MxJUnitWrapper
  private Timing = com.oracle.mxtool.junit.MxJUnitWrapper$Timing of com.oracle.mxtool.junit.MxJUnitWrapper
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map