public class org.testng.TestNG
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.testng.TestNG
  super_class: java.lang.Object
{
  private static final org.testng.log4testng.Logger LOGGER;
    descriptor: Lorg/testng/log4testng/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final java.lang.String DEFAULT_COMMAND_LINE_SUITE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Command line suite"

  public static final java.lang.String DEFAULT_COMMAND_LINE_TEST_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Command line test"

  public static final java.lang.String DEFAULT_OUTPUTDIR;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "test-output"

  public static final java.lang.String SHOW_TESTNG_STACK_FRAMES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "testng.show.stack.frames"

  public static final java.lang.String TEST_CLASSPATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "testng.test.classpath"

  private static org.testng.TestNG m_instance;
    descriptor: Lorg/testng/TestNG;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static com.beust.jcommander.JCommander m_jCommander;
    descriptor: Lcom/beust/jcommander/JCommander;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  protected java.util.List<org.testng.xml.XmlSuite> m_suites;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Lorg/testng/xml/XmlSuite;>;

  private java.util.List<org.testng.xml.XmlSuite> m_cmdlineSuites;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/testng/xml/XmlSuite;>;

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

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

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

  private java.lang.Boolean m_isJUnit;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean m_isMixed;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  protected boolean m_useDefaultListeners;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  private org.testng.ITestRunnerFactory m_testRunnerFactory;
    descriptor: Lorg/testng/ITestRunnerFactory;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Map<java.lang.Class<? extends org.testng.IClassListener>, org.testng.IClassListener> m_classListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/IClassListener;>;Lorg/testng/IClassListener;>;

  private final java.util.Map<java.lang.Class<? extends org.testng.ITestListener>, org.testng.ITestListener> m_testListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/ITestListener;>;Lorg/testng/ITestListener;>;

  private final java.util.Map<java.lang.Class<? extends org.testng.ISuiteListener>, org.testng.ISuiteListener> m_suiteListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/ISuiteListener;>;Lorg/testng/ISuiteListener;>;

  private final java.util.Map<java.lang.Class<? extends org.testng.IReporter>, org.testng.IReporter> m_reporters;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/IReporter;>;Lorg/testng/IReporter;>;

  private final java.util.Map<java.lang.Class<? extends org.testng.IDataProviderListener>, org.testng.IDataProviderListener> m_dataProviderListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/IDataProviderListener;>;Lorg/testng/IDataProviderListener;>;

  public static final java.lang.Integer DEFAULT_VERBOSE;
    descriptor: Ljava/lang/Integer;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

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

  private org.testng.xml.XmlSuite$ParallelMode m_parallelMode;
    descriptor: Lorg/testng/xml/XmlSuite$ParallelMode;
    flags: (0x0002) ACC_PRIVATE

  private org.testng.xml.XmlSuite$FailurePolicy m_configFailurePolicy;
    descriptor: Lorg/testng/xml/XmlSuite$FailurePolicy;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Class[] m_commandLineTestClasses;
    descriptor: [Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.util.Map<java.lang.String, java.lang.Integer> m_methodDescriptors;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private java.util.Set<org.testng.xml.XmlMethodSelector> m_selectors;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Lorg/testng/xml/XmlMethodSelector;>;

  private org.testng.ITestObjectFactory m_objectFactory;
    descriptor: Lorg/testng/ITestObjectFactory;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Map<java.lang.Class<? extends org.testng.IInvokedMethodListener>, org.testng.IInvokedMethodListener> m_invokedMethodListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/IInvokedMethodListener;>;Lorg/testng/IInvokedMethodListener;>;

  private java.lang.Integer m_dataProviderThreadCount;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private org.testng.IHookable m_hookable;
    descriptor: Lorg/testng/IHookable;
    flags: (0x0002) ACC_PRIVATE

  private org.testng.IConfigurable m_configurable;
    descriptor: Lorg/testng/IConfigurable;
    flags: (0x0002) ACC_PRIVATE

  protected long m_end;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

  protected long m_start;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

  private final java.util.Map<java.lang.Class<? extends org.testng.IAlterSuiteListener>, org.testng.IAlterSuiteListener> m_alterSuiteListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/IAlterSuiteListener;>;Lorg/testng/IAlterSuiteListener;>;

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

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

  private org.testng.internal.ExitCodeListener exitCodeListener;
    descriptor: Lorg/testng/internal/ExitCodeListener;
    flags: (0x0002) ACC_PRIVATE

  private org.testng.internal.ExitCode exitCode;
    descriptor: Lorg/testng/internal/ExitCode;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Integer m_verbose;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

  private final org.testng.IAnnotationTransformer m_defaultAnnoProcessor;
    descriptor: Lorg/testng/IAnnotationTransformer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.testng.IAnnotationTransformer m_annotationTransformer;
    descriptor: Lorg/testng/IAnnotationTransformer;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean m_skipFailedInvocationCounts;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<org.testng.IMethodInterceptor> m_methodInterceptors;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/testng/IMethodInterceptor;>;

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

  private java.lang.Integer m_suiteThreadPoolSize;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

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

  private java.lang.Boolean m_preserveOrder;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean m_groupByInstances;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private org.testng.internal.IConfiguration m_configuration;
    descriptor: Lorg/testng/internal/IConfiguration;
    flags: (0x0002) ACC_PRIVATE

  private java.net.URLClassLoader m_serviceLoaderClassLoader;
    descriptor: Ljava/net/URLClassLoader;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<java.lang.Class<? extends org.testng.ITestNGListener>, org.testng.ITestNGListener> serviceLoaderListeners;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/Class<+Lorg/testng/ITestNGListener;>;Lorg/testng/ITestNGListener;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 104
            ldc Lorg/testng/TestNG;
            invokestatic org.testng.log4testng.Logger.getLogger:(Ljava/lang/Class;)Lorg/testng/log4testng/Logger;
            putstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
         1: .line 145
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putstatic org.testng.TestNG.DEFAULT_VERBOSE:Ljava/lang/Integer;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 189
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 124
            aload 0 /* this */
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            putfield org.testng.TestNG.m_suites:Ljava/util/List;
         2: .line 126
            aload 0 /* this */
            ldc "test-output"
            putfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
         3: .line 131
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_JUNIT:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
         4: .line 132
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_MIXED:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_isMixed:Ljava/lang/Boolean;
         5: .line 133
            aload 0 /* this */
            iconst_1
            putfield org.testng.TestNG.m_useDefaultListeners:Z
         6: .line 138
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_classListeners:Ljava/util/Map;
         7: .line 139
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_testListeners:Ljava/util/Map;
         8: .line 140
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_suiteListeners:Ljava/util/Map;
         9: .line 141
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_reporters:Ljava/util/Map;
        10: .line 142
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_dataProviderListeners:Ljava/util/Map;
        11: .line 148
            aload 0 /* this */
            iconst_m1
            putfield org.testng.TestNG.m_threadCount:I
        12: .line 149
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
        13: .line 153
            aload 0 /* this */
            ldc "Command line suite"
            putfield org.testng.TestNG.m_defaultSuiteName:Ljava/lang/String;
        14: .line 154
            aload 0 /* this */
            ldc "Command line test"
            putfield org.testng.TestNG.m_defaultTestName:Ljava/lang/String;
        15: .line 156
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_methodDescriptors:Ljava/util/Map;
        16: .line 158
            aload 0 /* this */
            invokestatic org.testng.collections.Sets.newLinkedHashSet:()Ljava/util/Set;
            putfield org.testng.TestNG.m_selectors:Ljava/util/Set;
        17: .line 162
            aload 0 /* this */
        18: .line 163
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_invokedMethodListeners:Ljava/util/Map;
        19: .line 165
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_dataProviderThreadCount:Ljava/lang/Integer;
        20: .line 169
            aload 0 /* this */
            ldc "testng.xml"
            putfield org.testng.TestNG.m_xmlPathInJar:Ljava/lang/String;
        21: .line 171
            aload 0 /* this */
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            putfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
        22: .line 179
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_alterSuiteListeners:Ljava/util/Map;
        23: .line 181
            aload 0 /* this */
            iconst_0
            putfield org.testng.TestNG.m_isInitialized:Z
        24: .line 182
            aload 0 /* this */
            iconst_0
            putfield org.testng.TestNG.isSuiteInitialized:Z
        25: .line 775
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
        26: .line 777
            aload 0 /* this */
            new org.testng.internal.annotations.DefaultAnnotationTransformer
            dup
            invokespecial org.testng.internal.annotations.DefaultAnnotationTransformer.<init>:()V
            putfield org.testng.TestNG.m_defaultAnnoProcessor:Lorg/testng/IAnnotationTransformer;
        27: .line 778
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.m_defaultAnnoProcessor:Lorg/testng/IAnnotationTransformer;
            putfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
        28: .line 780
            aload 0 /* this */
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_skipFailedInvocationCounts:Ljava/lang/Boolean;
        29: .line 782
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.testng.TestNG.m_methodInterceptors:Ljava/util/List;
        30: .line 787
            aload 0 /* this */
            getstatic org.testng.CommandLineArgs.SUITE_THREAD_POOL_SIZE_DEFAULT:Ljava/lang/Integer;
            putfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
        31: .line 789
            aload 0 /* this */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putfield org.testng.TestNG.m_randomizeSuites:Z
        32: .line 791
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_PRESERVE_ORDER:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_preserveOrder:Ljava/lang/Boolean;
        33: .line 1954
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.serviceLoaderListeners:Ljava/util/Map;
        34: .line 190
            aload 0 /* this */
            iconst_1
            invokevirtual org.testng.TestNG.init:(Z)V
        35: .line 191
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   36     0  this  Lorg/testng/TestNG;

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean useDefaultListeners
         0: .line 199
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 124
            aload 0 /* this */
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            putfield org.testng.TestNG.m_suites:Ljava/util/List;
         2: .line 126
            aload 0 /* this */
            ldc "test-output"
            putfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
         3: .line 131
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_JUNIT:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
         4: .line 132
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_MIXED:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_isMixed:Ljava/lang/Boolean;
         5: .line 133
            aload 0 /* this */
            iconst_1
            putfield org.testng.TestNG.m_useDefaultListeners:Z
         6: .line 138
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_classListeners:Ljava/util/Map;
         7: .line 139
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_testListeners:Ljava/util/Map;
         8: .line 140
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_suiteListeners:Ljava/util/Map;
         9: .line 141
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_reporters:Ljava/util/Map;
        10: .line 142
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_dataProviderListeners:Ljava/util/Map;
        11: .line 148
            aload 0 /* this */
            iconst_m1
            putfield org.testng.TestNG.m_threadCount:I
        12: .line 149
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
        13: .line 153
            aload 0 /* this */
            ldc "Command line suite"
            putfield org.testng.TestNG.m_defaultSuiteName:Ljava/lang/String;
        14: .line 154
            aload 0 /* this */
            ldc "Command line test"
            putfield org.testng.TestNG.m_defaultTestName:Ljava/lang/String;
        15: .line 156
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_methodDescriptors:Ljava/util/Map;
        16: .line 158
            aload 0 /* this */
            invokestatic org.testng.collections.Sets.newLinkedHashSet:()Ljava/util/Set;
            putfield org.testng.TestNG.m_selectors:Ljava/util/Set;
        17: .line 162
            aload 0 /* this */
        18: .line 163
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_invokedMethodListeners:Ljava/util/Map;
        19: .line 165
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_dataProviderThreadCount:Ljava/lang/Integer;
        20: .line 169
            aload 0 /* this */
            ldc "testng.xml"
            putfield org.testng.TestNG.m_xmlPathInJar:Ljava/lang/String;
        21: .line 171
            aload 0 /* this */
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            putfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
        22: .line 179
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.m_alterSuiteListeners:Ljava/util/Map;
        23: .line 181
            aload 0 /* this */
            iconst_0
            putfield org.testng.TestNG.m_isInitialized:Z
        24: .line 182
            aload 0 /* this */
            iconst_0
            putfield org.testng.TestNG.isSuiteInitialized:Z
        25: .line 775
            aload 0 /* this */
            aconst_null
            putfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
        26: .line 777
            aload 0 /* this */
            new org.testng.internal.annotations.DefaultAnnotationTransformer
            dup
            invokespecial org.testng.internal.annotations.DefaultAnnotationTransformer.<init>:()V
            putfield org.testng.TestNG.m_defaultAnnoProcessor:Lorg/testng/IAnnotationTransformer;
        27: .line 778
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.m_defaultAnnoProcessor:Lorg/testng/IAnnotationTransformer;
            putfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
        28: .line 780
            aload 0 /* this */
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_skipFailedInvocationCounts:Ljava/lang/Boolean;
        29: .line 782
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.testng.TestNG.m_methodInterceptors:Ljava/util/List;
        30: .line 787
            aload 0 /* this */
            getstatic org.testng.CommandLineArgs.SUITE_THREAD_POOL_SIZE_DEFAULT:Ljava/lang/Integer;
            putfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
        31: .line 789
            aload 0 /* this */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putfield org.testng.TestNG.m_randomizeSuites:Z
        32: .line 791
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite.DEFAULT_PRESERVE_ORDER:Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_preserveOrder:Ljava/lang/Boolean;
        33: .line 1954
            aload 0 /* this */
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            putfield org.testng.TestNG.serviceLoaderListeners:Ljava/util/Map;
        34: .line 200
            aload 0 /* this */
            iload 1 /* useDefaultListeners */
            invokevirtual org.testng.TestNG.init:(Z)V
        35: .line 201
            return
        end local 1 // boolean useDefaultListeners
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   36     0                 this  Lorg/testng/TestNG;
            0   36     1  useDefaultListeners  Z
    MethodParameters:
                     Name  Flags
      useDefaultListeners  

  private void init(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean useDefaultListeners
         0: .line 204
            aload 0 /* this */
            putstatic org.testng.TestNG.m_instance:Lorg/testng/TestNG;
         1: .line 206
            aload 0 /* this */
            iload 1 /* useDefaultListeners */
            putfield org.testng.TestNG.m_useDefaultListeners:Z
         2: .line 207
            aload 0 /* this */
            new org.testng.internal.Configuration
            dup
            invokespecial org.testng.internal.Configuration.<init>:()V
            putfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
         3: .line 208
            return
        end local 1 // boolean useDefaultListeners
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lorg/testng/TestNG;
            0    4     1  useDefaultListeners  Z
    MethodParameters:
                     Name  Flags
      useDefaultListeners  

  public int getStatus();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 211
            aload 0 /* this */
            getfield org.testng.TestNG.exitCodeListener:Lorg/testng/internal/ExitCodeListener;
            invokevirtual org.testng.internal.ExitCodeListener.hasTests:()Z
            ifne 2
         1: .line 212
            bipush 8
            ireturn
         2: .line 214
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
            invokevirtual org.testng.internal.ExitCode.getExitCode:()I
            ireturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/testng/TestNG;

  public void setOutputDirectory(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String outputdir
         0: .line 222
            aload 1 /* outputdir */
            invokestatic org.testng.internal.Utils.isStringNotEmpty:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 223
            aload 0 /* this */
            aload 1 /* outputdir */
            putfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
         2: .line 225
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String outputdir
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/testng/TestNG;
            0    3     1  outputdir  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      outputdir  final

  public void setUseDefaultListeners(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean useDefaultListeners
         0: .line 241
            aload 0 /* this */
            iload 1 /* useDefaultListeners */
            putfield org.testng.TestNG.m_useDefaultListeners:Z
         1: .line 242
            return
        end local 1 // boolean useDefaultListeners
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lorg/testng/TestNG;
            0    2     1  useDefaultListeners  Z
    MethodParameters:
                     Name  Flags
      useDefaultListeners  

  public void setTestJar(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String jarPath
         0: .line 250
            aload 0 /* this */
            aload 1 /* jarPath */
            putfield org.testng.TestNG.m_jarPath:Ljava/lang/String;
         1: .line 251
            return
        end local 1 // java.lang.String jarPath
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/testng/TestNG;
            0    2     1  jarPath  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      jarPath  

  public void setXmlPathInJar(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String xmlPathInJar
         0: .line 257
            aload 0 /* this */
            aload 1 /* xmlPathInJar */
            putfield org.testng.TestNG.m_xmlPathInJar:Ljava/lang/String;
         1: .line 258
            return
        end local 1 // java.lang.String xmlPathInJar
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/testng/TestNG;
            0    2     1  xmlPathInJar  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      xmlPathInJar  

  private void parseSuiteFiles();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=10, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 261
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getProcessor:()Lorg/testng/internal/OverrideProcessor;
            astore 1 /* processor */
        start local 1 // org.testng.xml.IPostProcessor processor
         1: .line 262
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 20
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 2 /* s */
        start local 2 // org.testng.xml.XmlSuite s
         3: .line 263
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.isParsed:()Z
            ifeq 5
         4: .line 264
            goto 20
         5: .line 266
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator
      StackMap stack:
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getSuiteFiles:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 19
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* suiteFile */
        start local 4 // java.lang.String suiteFile
         7: .line 268
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getFileName:()Ljava/lang/String;
            astore 6 /* fileNameToUse */
        start local 6 // java.lang.String fileNameToUse
         8: .line 269
            aload 6 /* fileNameToUse */
            ifnull 9
            aload 6 /* fileNameToUse */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 10
         9: .line 270
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator java.lang.String java.util.Iterator java.lang.String
      StackMap stack:
            aload 4 /* suiteFile */
            astore 6 /* fileNameToUse */
        10: .line 272
      StackMap locals:
      StackMap stack:
            aload 6 /* fileNameToUse */
            aload 1 /* processor */
            invokestatic org.testng.xml.Parser.parse:(Ljava/lang/String;Lorg/testng/xml/IPostProcessor;)Ljava/util/Collection;
            astore 7 /* childSuites */
        start local 7 // java.util.Collection childSuites
        11: .line 273
            aload 7 /* childSuites */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 9
            goto 15
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator java.lang.String java.util.Iterator java.lang.String java.util.Collection top java.util.Iterator
      StackMap stack:
        12: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 8 /* cSuite */
        start local 8 // org.testng.xml.XmlSuite cSuite
        13: .line 274
            aload 8 /* cSuite */
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.setParentSuite:(Lorg/testng/xml/XmlSuite;)V
        14: .line 275
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            aload 8 /* cSuite */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.testng.xml.XmlSuite cSuite
        15: .line 273
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 7 // java.util.Collection childSuites
        end local 6 // java.lang.String fileNameToUse
        16: .line 277
            goto 19
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator java.lang.String java.util.Iterator
      StackMap stack: java.io.IOException
        17: astore 6 /* e */
        start local 6 // java.io.IOException e
        18: .line 278
            aload 6 /* e */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.IOException.printStackTrace:(Ljava/io/PrintStream;)V
        end local 6 // java.io.IOException e
        end local 4 // java.lang.String suiteFile
        19: .line 266
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor org.testng.xml.XmlSuite java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 2 // org.testng.xml.XmlSuite s
        20: .line 262
      StackMap locals: org.testng.TestNG org.testng.xml.IPostProcessor top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        21: .line 284
            return
        end local 1 // org.testng.xml.IPostProcessor processor
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   22     0           this  Lorg/testng/TestNG;
            1   22     1      processor  Lorg/testng/xml/IPostProcessor;
            3   20     2              s  Lorg/testng/xml/XmlSuite;
            7   19     4      suiteFile  Ljava/lang/String;
            8   16     6  fileNameToUse  Ljava/lang/String;
           11   16     7    childSuites  Ljava/util/Collection<Lorg/testng/xml/XmlSuite;>;
           13   15     8         cSuite  Lorg/testng/xml/XmlSuite;
           18   19     6              e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           7    16      17  Class java.io.IOException

  private org.testng.internal.OverrideProcessor getProcessor();
    descriptor: ()Lorg/testng/internal/OverrideProcessor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 287
            new org.testng.internal.OverrideProcessor
            dup
            aload 0 /* this */
            getfield org.testng.TestNG.m_includedGroups:[Ljava/lang/String;
            aload 0 /* this */
            getfield org.testng.TestNG.m_excludedGroups:[Ljava/lang/String;
            invokespecial org.testng.internal.OverrideProcessor.<init>:([Ljava/lang/String;[Ljava/lang/String;)V
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  private void parseSuite(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String suitePath
         0: .line 291
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            invokevirtual org.testng.log4testng.Logger.isDebugEnabled:()Z
            ifeq 2
         1: .line 292
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            new java.lang.StringBuilder
            dup
            ldc "suiteXmlPath: \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* suitePath */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.testng.log4testng.Logger.debug:(Ljava/lang/Object;)V
         2: .line 295
      StackMap locals:
      StackMap stack:
            aload 1 /* suitePath */
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getProcessor:()Lorg/testng/internal/OverrideProcessor;
            invokestatic org.testng.xml.Parser.parse:(Ljava/lang/String;Lorg/testng/xml/IPostProcessor;)Ljava/util/Collection;
            astore 2 /* allSuites */
        start local 2 // java.util.Collection allSuites
         3: .line 297
            aload 2 /* allSuites */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals: org.testng.TestNG java.lang.String java.util.Collection top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 3 /* s */
        start local 3 // org.testng.xml.XmlSuite s
         5: .line 298
            aload 0 /* this */
            getfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            ifnull 7
         6: .line 299
            aload 3 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            invokevirtual org.testng.xml.XmlSuite.setParallel:(Lorg/testng/xml/XmlSuite$ParallelMode;)V
         7: .line 301
      StackMap locals: org.testng.TestNG java.lang.String java.util.Collection org.testng.xml.XmlSuite java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_threadCount:I
            ifle 9
         8: .line 302
            aload 3 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_threadCount:I
            invokevirtual org.testng.xml.XmlSuite.setThreadCount:(I)V
         9: .line 304
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_testNames:Ljava/util/List;
            ifnonnull 12
        10: .line 305
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 3 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 306
            goto 17
        12: .line 309
      StackMap locals:
      StackMap stack:
            new org.testng.xml.internal.TestNamesMatcher
            dup
            aload 3 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_testNames:Ljava/util/List;
            invokespecial org.testng.xml.internal.TestNamesMatcher.<init>:(Lorg/testng/xml/XmlSuite;Ljava/util/List;)V
            astore 5 /* testNamesMatcher */
        start local 5 // org.testng.xml.internal.TestNamesMatcher testNamesMatcher
        13: .line 310
            aload 5 /* testNamesMatcher */
            invokevirtual org.testng.xml.internal.TestNamesMatcher.getMissMatchedTestNames:()Ljava/util/List;
            astore 6 /* missMatchedTestname */
        start local 6 // java.util.List missMatchedTestname
        14: .line 311
            aload 6 /* missMatchedTestname */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 16
        15: .line 312
            new org.testng.TestNGException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The test(s) <"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* missMatchedTestname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "> cannot be found."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 314
      StackMap locals: org.testng.xml.internal.TestNamesMatcher java.util.List
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 5 /* testNamesMatcher */
            invokevirtual org.testng.xml.internal.TestNamesMatcher.getSuitesMatchingTestNames:()Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 6 // java.util.List missMatchedTestname
        end local 5 // org.testng.xml.internal.TestNamesMatcher testNamesMatcher
        end local 3 // org.testng.xml.XmlSuite s
        17: .line 297
      StackMap locals: org.testng.TestNG java.lang.String java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 2 // java.util.Collection allSuites
        18: .line 316
            goto 30
      StackMap locals: org.testng.TestNG java.lang.String
      StackMap stack: java.io.IOException
        19: astore 2 /* e */
        start local 2 // java.io.IOException e
        20: .line 317
            aload 2 /* e */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.io.IOException.printStackTrace:(Ljava/io/PrintStream;)V
        end local 2 // java.io.IOException e
        21: goto 30
        22: .line 318
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* ex */
        start local 2 // java.lang.Exception ex
        23: .line 320
            aload 2 /* ex */
            astore 3 /* t */
        start local 3 // java.lang.Throwable t
        24: .line 321
            goto 26
        25: .line 322
      StackMap locals: java.lang.Exception java.lang.Throwable
      StackMap stack:
            aload 3 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 3 /* t */
        26: .line 321
      StackMap locals:
      StackMap stack:
            aload 3 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            ifnonnull 25
        27: .line 324
            aload 3 /* t */
            instanceof org.testng.TestNGException
            ifeq 29
        28: .line 325
            aload 3 /* t */
            checkcast org.testng.TestNGException
            athrow
        29: .line 327
      StackMap locals:
      StackMap stack:
            new org.testng.TestNGException
            dup
            aload 3 /* t */
            invokespecial org.testng.TestNGException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable t
        end local 2 // java.lang.Exception ex
        30: .line 330
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String suitePath
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   31     0                 this  Lorg/testng/TestNG;
            0   31     1            suitePath  Ljava/lang/String;
            3   18     2            allSuites  Ljava/util/Collection<Lorg/testng/xml/XmlSuite;>;
            5   17     3                    s  Lorg/testng/xml/XmlSuite;
           13   17     5     testNamesMatcher  Lorg/testng/xml/internal/TestNamesMatcher;
           14   17     6  missMatchedTestname  Ljava/util/List<Ljava/lang/String;>;
           20   21     2                    e  Ljava/io/IOException;
           23   30     2                   ex  Ljava/lang/Exception;
           24   30     3                    t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2    18      19  Class java.io.IOException
           2    18      22  Class java.lang.Exception
    MethodParameters:
           Name  Flags
      suitePath  

  public void initializeSuitesAndJarFile();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 334
            aload 0 /* this */
            getfield org.testng.TestNG.isSuiteInitialized:Z
            ifeq 2
         1: .line 335
            return
         2: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.testng.TestNG.isSuiteInitialized:Z
         3: .line 339
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 6
         4: .line 340
            aload 0 /* this */
            invokevirtual org.testng.TestNG.parseSuiteFiles:()V
         5: .line 341
            return
         6: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 9
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
         7: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* suitePath */
        start local 1 // java.lang.String suitePath
         8: .line 348
            aload 0 /* this */
            aload 1 /* suitePath */
            invokevirtual org.testng.TestNG.parseSuite:(Ljava/lang/String;)V
        end local 1 // java.lang.String suitePath
         9: .line 347
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 356
            aload 0 /* this */
            getfield org.testng.TestNG.m_jarPath:Ljava/lang/String;
            ifnull 20
            aload 0 /* this */
            getfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 20
        11: .line 357
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* suites */
        start local 1 // java.lang.StringBuilder suites
        12: .line 358
            aload 0 /* this */
            getfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 15
      StackMap locals: org.testng.TestNG java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
        13: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* s */
        start local 2 // java.lang.String s
        14: .line 359
            aload 1 /* suites */
            aload 2 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.String s
        15: .line 358
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        16: .line 361
            ldc "TestNG"
            iconst_2
            new java.lang.StringBuilder
            dup
            ldc "Ignoring the XML file inside "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.testng.TestNG.m_jarPath:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " and using "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 362
            aload 1 /* suites */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 361
            invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
        19: .line 363
            return
        end local 1 // java.lang.StringBuilder suites
        20: .line 365
      StackMap locals: org.testng.TestNG
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_jarPath:Ljava/lang/String;
            invokestatic org.testng.internal.Utils.isStringEmpty:(Ljava/lang/String;)Z
            ifeq 22
        21: .line 366
            return
        22: .line 370
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.testng.TestNG.m_jarPath:Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* jarFile */
        start local 1 // java.io.File jarFile
        23: .line 372
            new org.testng.JarFileUtils
            dup
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getProcessor:()Lorg/testng/internal/OverrideProcessor;
            aload 0 /* this */
            getfield org.testng.TestNG.m_xmlPathInJar:Ljava/lang/String;
            aload 0 /* this */
            getfield org.testng.TestNG.m_testNames:Ljava/util/List;
            invokespecial org.testng.JarFileUtils.<init>:(Lorg/testng/xml/IPostProcessor;Ljava/lang/String;Ljava/util/List;)V
            astore 2 /* utils */
        start local 2 // org.testng.JarFileUtils utils
        24: .line 374
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 2 /* utils */
            aload 1 /* jarFile */
            invokevirtual org.testng.JarFileUtils.extractSuitesFrom:(Ljava/io/File;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        25: .line 375
            return
        end local 2 // org.testng.JarFileUtils utils
        end local 1 // java.io.File jarFile
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   26     0       this  Lorg/testng/TestNG;
            8    9     1  suitePath  Ljava/lang/String;
           12   20     1     suites  Ljava/lang/StringBuilder;
           14   15     2          s  Ljava/lang/String;
           23   26     1    jarFile  Ljava/io/File;
           24   26     2      utils  Lorg/testng/JarFileUtils;

  public void setThreadCount(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // int threadCount
         0: .line 381
            iload 1 /* threadCount */
            iconst_1
            if_icmpge 2
         1: .line 382
            new java.lang.StringBuilder
            dup
            ldc "Cannot use a threadCount parameter less than 1; 1 > "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* threadCount */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.testng.TestNG.exitWithError:(Ljava/lang/String;)V
         2: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* threadCount */
            putfield org.testng.TestNG.m_threadCount:I
         3: .line 386
            return
        end local 1 // int threadCount
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/testng/TestNG;
            0    4     1  threadCount  I
    MethodParameters:
             Name  Flags
      threadCount  

  public void setParallel(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String parallel
         0: .line 394
            aload 1 /* parallel */
            ifnonnull 3
         1: .line 395
            aload 0 /* this */
            getstatic org.testng.xml.XmlSuite$ParallelMode.NONE:Lorg/testng/xml/XmlSuite$ParallelMode;
            invokevirtual org.testng.TestNG.setParallel:(Lorg/testng/xml/XmlSuite$ParallelMode;)V
         2: .line 396
            goto 4
         3: .line 397
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* parallel */
            invokestatic org.testng.xml.XmlSuite$ParallelMode.getValidParallel:(Ljava/lang/String;)Lorg/testng/xml/XmlSuite$ParallelMode;
            invokevirtual org.testng.TestNG.setParallel:(Lorg/testng/xml/XmlSuite$ParallelMode;)V
         4: .line 399
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String parallel
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/testng/TestNG;
            0    5     1  parallel  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      parallel  

  public void setParallel(org.testng.xml.XmlSuite$ParallelMode);
    descriptor: (Lorg/testng/xml/XmlSuite$ParallelMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite$ParallelMode parallel
         0: .line 402
            aload 0 /* this */
            aload 1 /* parallel */
            invokestatic org.testng.xml.XmlSuite$ParallelMode.skipDeprecatedValues:(Lorg/testng/xml/XmlSuite$ParallelMode;)Lorg/testng/xml/XmlSuite$ParallelMode;
            putfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
         1: .line 403
            return
        end local 1 // org.testng.xml.XmlSuite$ParallelMode parallel
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  parallel  Lorg/testng/xml/XmlSuite$ParallelMode;
    MethodParameters:
          Name  Flags
      parallel  

  public void setCommandLineSuite(org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/xml/XmlSuite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite suite
         0: .line 406
            aload 0 /* this */
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            putfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
         1: .line 407
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            aload 1 /* suite */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 408
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 1 /* suite */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 409
            return
        end local 1 // org.testng.xml.XmlSuite suite
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/testng/TestNG;
            0    4     1  suite  Lorg/testng/xml/XmlSuite;
    MethodParameters:
       Name  Flags
      suite  

  public void setTestClasses(java.lang.Class[]);
    descriptor: ([Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Class[] classes
         0: .line 421
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         1: .line 422
            aload 0 /* this */
            aload 1 /* classes */
            putfield org.testng.TestNG.m_commandLineTestClasses:[Ljava/lang/Class;
         2: .line 423
            return
        end local 1 // java.lang.Class[] classes
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/testng/TestNG;
            0    3     1  classes  [Ljava/lang/Class;
    MethodParameters:
         Name  Flags
      classes  

  private java.lang.String[] splitMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String m
         0: .line 430
            aload 1 /* m */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 2 /* index */
        start local 2 // int index
         1: .line 431
            iload 2 /* index */
            ifge 5
         2: .line 432
            new org.testng.TestNGException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad format for command line method:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* m */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 433
            ldc ", expected <class>.<method>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 432
            invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 436
      StackMap locals: int
      StackMap stack:
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* m */
            iconst_0
            iload 2 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* m */
            iload 2 /* index */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            ldc "\\*"
            ldc "\\.\\*"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
            areturn
        end local 2 // int index
        end local 1 // java.lang.String m
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/testng/TestNG;
            0    6     1      m  Ljava/lang/String;
            1    6     2  index  I
    MethodParameters:
      Name  Flags
      m     

  private java.util.List<org.testng.xml.XmlSuite> createCommandLineSuitesForMethods(java.util.List<java.lang.String>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=12, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List commandLineMethods
         0: .line 449
            invokestatic org.testng.collections.Sets.newHashSet:()Ljava/util/Set;
            astore 2 /* classes */
        start local 2 // java.util.Set classes
         1: .line 450
            aload 1 /* commandLineMethods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: org.testng.TestNG java.util.List java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* m */
        start local 3 // java.lang.String m
         3: .line 451
            aload 0 /* this */
            aload 3 /* m */
            invokevirtual org.testng.TestNG.splitMethod:(Ljava/lang/String;)[Ljava/lang/String;
            iconst_0
            aaload
            invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 5 /* c */
        start local 5 // java.lang.Class c
         4: .line 452
            aload 5 /* c */
            ifnull 6
         5: .line 453
            aload 2 /* classes */
            aload 5 /* c */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Class c
        end local 3 // java.lang.String m
         6: .line 450
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 457
            aload 0 /* this */
            aload 2 /* classes */
            iconst_0
            anewarray java.lang.Class
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            invokevirtual org.testng.TestNG.createCommandLineSuitesForClasses:([Ljava/lang/Class;)Ljava/util/List;
            astore 3 /* result */
        start local 3 // java.util.List result
         8: .line 462
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            astore 4 /* xmlClasses */
        start local 4 // java.util.List xmlClasses
         9: .line 463
            aload 3 /* result */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 15
      StackMap locals: org.testng.TestNG java.util.List java.util.Set java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        10: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 5 /* s */
        start local 5 // org.testng.xml.XmlSuite s
        11: .line 464
            aload 5 /* s */
            invokevirtual org.testng.xml.XmlSuite.getTests:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 14
      StackMap locals: org.testng.TestNG java.util.List java.util.Set java.util.List java.util.List org.testng.xml.XmlSuite java.util.Iterator top java.util.Iterator
      StackMap stack:
        12: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlTest
            astore 7 /* t */
        start local 7 // org.testng.xml.XmlTest t
        13: .line 465
            aload 4 /* xmlClasses */
            aload 7 /* t */
            invokevirtual org.testng.xml.XmlTest.getClasses:()Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 7 // org.testng.xml.XmlTest t
        14: .line 464
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 5 // org.testng.xml.XmlSuite s
        15: .line 463
      StackMap locals: org.testng.TestNG java.util.List java.util.Set java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        16: .line 469
            aload 4 /* xmlClasses */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 26
      StackMap locals:
      StackMap stack:
        17: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlClass
            astore 5 /* xc */
        start local 5 // org.testng.xml.XmlClass xc
        18: .line 470
            aload 1 /* commandLineMethods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 25
      StackMap locals: org.testng.TestNG java.util.List java.util.Set java.util.List java.util.List org.testng.xml.XmlClass java.util.Iterator top java.util.Iterator
      StackMap stack:
        19: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* m */
        start local 7 // java.lang.String m
        20: .line 471
            aload 0 /* this */
            aload 7 /* m */
            invokevirtual org.testng.TestNG.splitMethod:(Ljava/lang/String;)[Ljava/lang/String;
            astore 9 /* split */
        start local 9 // java.lang.String[] split
        21: .line 472
            aload 9 /* split */
            iconst_0
            aaload
            astore 10 /* className */
        start local 10 // java.lang.String className
        22: .line 473
            aload 5 /* xc */
            invokevirtual org.testng.xml.XmlClass.getName:()Ljava/lang/String;
            aload 10 /* className */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 25
        23: .line 474
            new org.testng.xml.XmlInclude
            dup
            aload 9 /* split */
            iconst_1
            aaload
            invokespecial org.testng.xml.XmlInclude.<init>:(Ljava/lang/String;)V
            astore 11 /* includedMethod */
        start local 11 // org.testng.xml.XmlInclude includedMethod
        24: .line 475
            aload 5 /* xc */
            invokevirtual org.testng.xml.XmlClass.getIncludedMethods:()Ljava/util/List;
            aload 11 /* includedMethod */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // org.testng.xml.XmlInclude includedMethod
        end local 10 // java.lang.String className
        end local 9 // java.lang.String[] split
        end local 7 // java.lang.String m
        25: .line 470
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        end local 5 // org.testng.xml.XmlClass xc
        26: .line 469
      StackMap locals: org.testng.TestNG java.util.List java.util.Set java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        27: .line 480
            aload 3 /* result */
            areturn
        end local 4 // java.util.List xmlClasses
        end local 3 // java.util.List result
        end local 2 // java.util.Set classes
        end local 1 // java.util.List commandLineMethods
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   28     0                this  Lorg/testng/TestNG;
            0   28     1  commandLineMethods  Ljava/util/List<Ljava/lang/String;>;
            1   28     2             classes  Ljava/util/Set<Ljava/lang/Class;>;
            3    6     3                   m  Ljava/lang/String;
            4    6     5                   c  Ljava/lang/Class;
            8   28     3              result  Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
            9   28     4          xmlClasses  Ljava/util/List<Lorg/testng/xml/XmlClass;>;
           11   15     5                   s  Lorg/testng/xml/XmlSuite;
           13   14     7                   t  Lorg/testng/xml/XmlTest;
           18   26     5                  xc  Lorg/testng/xml/XmlClass;
           20   25     7                   m  Ljava/lang/String;
           21   25     9               split  [Ljava/lang/String;
           22   25    10           className  Ljava/lang/String;
           24   25    11      includedMethod  Lorg/testng/xml/XmlInclude;
    Signature: (Ljava/util/List<Ljava/lang/String;>;)Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
    MethodParameters:
                    Name  Flags
      commandLineMethods  

  private java.util.List<org.testng.xml.XmlSuite> createCommandLineSuitesForClasses(java.lang.Class[]);
    descriptor: ([Ljava/lang/Class;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=15, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Class[] classes
         0: .line 489
            aload 1 /* classes */
            invokestatic org.testng.internal.Utils.classesToXmlClasses:([Ljava/lang/Class;)[Lorg/testng/xml/XmlClass;
            astore 2 /* xmlClasses */
        start local 2 // org.testng.xml.XmlClass[] xmlClasses
         1: .line 490
            invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
            astore 3 /* suites */
        start local 3 // java.util.Map suites
         2: .line 491
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            invokeinterface org.testng.internal.IConfiguration.getAnnotationFinder:()Lorg/testng/internal/annotations/IAnnotationFinder;
            astore 4 /* finder */
        start local 4 // org.testng.internal.annotations.IAnnotationFinder finder
         3: .line 493
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 37
         5: .line 494
      StackMap locals: org.testng.TestNG java.lang.Class[] org.testng.xml.XmlClass[] java.util.Map org.testng.internal.annotations.IAnnotationFinder int
      StackMap stack:
            aload 1 /* classes */
            iload 5 /* i */
            aaload
            astore 6 /* c */
        start local 6 // java.lang.Class c
         6: .line 495
            aload 4 /* finder */
            aload 6 /* c */
            ldc Lorg/testng/annotations/ITestAnnotation;
            invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/Class;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
            checkcast org.testng.annotations.ITestAnnotation
            astore 7 /* test */
        start local 7 // org.testng.annotations.ITestAnnotation test
         7: .line 496
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getDefaultSuiteName:()Ljava/lang/String;
            astore 8 /* suiteName */
        start local 8 // java.lang.String suiteName
         8: .line 497
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getDefaultTestName:()Ljava/lang/String;
            astore 9 /* testName */
        start local 9 // java.lang.String testName
         9: .line 498
            iconst_0
            istore 10 /* isJUnit */
        start local 10 // boolean isJUnit
        10: .line 499
            aload 7 /* test */
            ifnull 14
        11: .line 500
            aload 7 /* test */
            invokeinterface org.testng.annotations.ITestAnnotation.getSuiteName:()Ljava/lang/String;
            aload 8 /* suiteName */
            invokestatic org.testng.internal.Utils.defaultIfStringEmpty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* suiteName */
        12: .line 501
            aload 7 /* test */
            invokeinterface org.testng.annotations.ITestAnnotation.getTestName:()Ljava/lang/String;
            aload 9 /* testName */
            invokestatic org.testng.internal.Utils.defaultIfStringEmpty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* testName */
        13: .line 502
            goto 17
        14: .line 503
      StackMap locals: org.testng.TestNG java.lang.Class[] org.testng.xml.XmlClass[] java.util.Map org.testng.internal.annotations.IAnnotationFinder int java.lang.Class org.testng.annotations.ITestAnnotation java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_isMixed:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 17
            aload 6 /* c */
            invokestatic org.testng.junit.JUnitTestFinder.isJUnitTest:(Ljava/lang/Class;)Z
            ifeq 17
        15: .line 504
            iconst_1
            istore 10 /* isJUnit */
        16: .line 505
            aload 6 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 9 /* testName */
        17: .line 508
      StackMap locals:
      StackMap stack:
            aload 3 /* suites */
            aload 8 /* suiteName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 11 /* xmlSuite */
        start local 11 // org.testng.xml.XmlSuite xmlSuite
        18: .line 509
            aload 11 /* xmlSuite */
            ifnonnull 22
        19: .line 510
            new org.testng.xml.XmlSuite
            dup
            invokespecial org.testng.xml.XmlSuite.<init>:()V
            astore 11 /* xmlSuite */
        20: .line 511
            aload 11 /* xmlSuite */
            aload 8 /* suiteName */
            invokevirtual org.testng.xml.XmlSuite.setName:(Ljava/lang/String;)V
        21: .line 512
            aload 3 /* suites */
            aload 8 /* suiteName */
            aload 11 /* xmlSuite */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 515
      StackMap locals: org.testng.xml.XmlSuite
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_dataProviderThreadCount:Ljava/lang/Integer;
            ifnull 24
        23: .line 516
            aload 11 /* xmlSuite */
            aload 0 /* this */
            getfield org.testng.TestNG.m_dataProviderThreadCount:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual org.testng.xml.XmlSuite.setDataProviderThreadCount:(I)V
        24: .line 518
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 12 /* xmlTest */
        start local 12 // org.testng.xml.XmlTest xmlTest
        25: .line 519
            aload 11 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getTests:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 30
      StackMap locals: org.testng.TestNG java.lang.Class[] org.testng.xml.XmlClass[] java.util.Map org.testng.internal.annotations.IAnnotationFinder int java.lang.Class org.testng.annotations.ITestAnnotation java.lang.String java.lang.String int org.testng.xml.XmlSuite org.testng.xml.XmlTest top java.util.Iterator
      StackMap stack:
        26: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlTest
            astore 13 /* xt */
        start local 13 // org.testng.xml.XmlTest xt
        27: .line 520
            aload 13 /* xt */
            invokevirtual org.testng.xml.XmlTest.getName:()Ljava/lang/String;
            aload 9 /* testName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 30
        28: .line 521
            aload 13 /* xt */
            astore 12 /* xmlTest */
        29: .line 522
            goto 31
        end local 13 // org.testng.xml.XmlTest xt
        30: .line 519
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 26
        31: .line 526
      StackMap locals: org.testng.TestNG java.lang.Class[] org.testng.xml.XmlClass[] java.util.Map org.testng.internal.annotations.IAnnotationFinder int java.lang.Class org.testng.annotations.ITestAnnotation java.lang.String java.lang.String int org.testng.xml.XmlSuite org.testng.xml.XmlTest
      StackMap stack:
            aload 12 /* xmlTest */
            ifnonnull 35
        32: .line 527
            new org.testng.xml.XmlTest
            dup
            aload 11 /* xmlSuite */
            invokespecial org.testng.xml.XmlTest.<init>:(Lorg/testng/xml/XmlSuite;)V
            astore 12 /* xmlTest */
        33: .line 528
            aload 12 /* xmlTest */
            aload 9 /* testName */
            invokevirtual org.testng.xml.XmlTest.setName:(Ljava/lang/String;)V
        34: .line 529
            aload 12 /* xmlTest */
            iload 10 /* isJUnit */
            invokevirtual org.testng.xml.XmlTest.setJUnit:(Z)V
        35: .line 532
      StackMap locals:
      StackMap stack:
            aload 12 /* xmlTest */
            invokevirtual org.testng.xml.XmlTest.getXmlClasses:()Ljava/util/List;
            aload 2 /* xmlClasses */
            iload 5 /* i */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 12 // org.testng.xml.XmlTest xmlTest
        end local 11 // org.testng.xml.XmlSuite xmlSuite
        end local 10 // boolean isJUnit
        end local 9 // java.lang.String testName
        end local 8 // java.lang.String suiteName
        end local 7 // org.testng.annotations.ITestAnnotation test
        end local 6 // java.lang.Class c
        36: .line 493
            iinc 5 /* i */ 1
      StackMap locals: org.testng.TestNG java.lang.Class[] org.testng.xml.XmlClass[] java.util.Map org.testng.internal.annotations.IAnnotationFinder int
      StackMap stack:
        37: iload 5 /* i */
            aload 1 /* classes */
            arraylength
            if_icmplt 5
        end local 5 // int i
        38: .line 535
            new java.util.ArrayList
            dup
            aload 3 /* suites */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            areturn
        end local 4 // org.testng.internal.annotations.IAnnotationFinder finder
        end local 3 // java.util.Map suites
        end local 2 // org.testng.xml.XmlClass[] xmlClasses
        end local 1 // java.lang.Class[] classes
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   39     0        this  Lorg/testng/TestNG;
            0   39     1     classes  [Ljava/lang/Class;
            1   39     2  xmlClasses  [Lorg/testng/xml/XmlClass;
            2   39     3      suites  Ljava/util/Map<Ljava/lang/String;Lorg/testng/xml/XmlSuite;>;
            3   39     4      finder  Lorg/testng/internal/annotations/IAnnotationFinder;
            4   38     5           i  I
            6   36     6           c  Ljava/lang/Class;
            7   36     7        test  Lorg/testng/annotations/ITestAnnotation;
            8   36     8   suiteName  Ljava/lang/String;
            9   36     9    testName  Ljava/lang/String;
           10   36    10     isJUnit  Z
           18   36    11    xmlSuite  Lorg/testng/xml/XmlSuite;
           25   36    12     xmlTest  Lorg/testng/xml/XmlTest;
           27   30    13          xt  Lorg/testng/xml/XmlTest;
    Signature: ([Ljava/lang/Class;)Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
    MethodParameters:
         Name  Flags
      classes  

  public void addMethodSelector(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String className
        start local 2 // int priority
         0: .line 539
            aload 1 /* className */
            invokestatic org.testng.util.Strings.isNotNullAndNotEmpty:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 540
            aload 0 /* this */
            getfield org.testng.TestNG.m_methodDescriptors:Ljava/util/Map;
            aload 1 /* className */
            iload 2 /* priority */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 542
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int priority
        end local 1 // java.lang.String className
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/testng/TestNG;
            0    3     1  className  Ljava/lang/String;
            0    3     2   priority  I
    MethodParameters:
           Name  Flags
      className  
      priority   

  public void addMethodSelector(org.testng.xml.XmlMethodSelector);
    descriptor: (Lorg/testng/xml/XmlMethodSelector;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlMethodSelector selector
         0: .line 545
            aload 0 /* this */
            getfield org.testng.TestNG.m_selectors:Ljava/util/Set;
            aload 1 /* selector */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 546
            return
        end local 1 // org.testng.xml.XmlMethodSelector selector
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  selector  Lorg/testng/xml/XmlMethodSelector;
    MethodParameters:
          Name  Flags
      selector  

  public void setTestSuites(java.util.List<java.lang.String>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List suites
         0: .line 564
            aload 0 /* this */
            aload 1 /* suites */
            putfield org.testng.TestNG.m_stringSuites:Ljava/util/List;
         1: .line 565
            return
        end local 1 // java.util.List suites
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/testng/TestNG;
            0    2     1  suites  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
        Name  Flags
      suites  

  public void setXmlSuites(java.util.List<org.testng.xml.XmlSuite>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List suites
         0: .line 573
            aload 0 /* this */
            aload 1 /* suites */
            putfield org.testng.TestNG.m_suites:Ljava/util/List;
         1: .line 574
            return
        end local 1 // java.util.List suites
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/testng/TestNG;
            0    2     1  suites  Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
    Signature: (Ljava/util/List<Lorg/testng/xml/XmlSuite;>;)V
    MethodParameters:
        Name  Flags
      suites  

  public void setExcludedGroups(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String groups
         0: .line 582
            aload 0 /* this */
            aload 1 /* groups */
            ldc ","
            invokestatic org.testng.internal.Utils.split:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            putfield org.testng.TestNG.m_excludedGroups:[Ljava/lang/String;
         1: .line 583
            return
        end local 1 // java.lang.String groups
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/testng/TestNG;
            0    2     1  groups  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      groups  

  public void setGroups(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String groups
         0: .line 592
            aload 0 /* this */
            aload 1 /* groups */
            ldc ","
            invokestatic org.testng.internal.Utils.split:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            putfield org.testng.TestNG.m_includedGroups:[Ljava/lang/String;
         1: .line 593
            return
        end local 1 // java.lang.String groups
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/testng/TestNG;
            0    2     1  groups  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      groups  

  private void setTestRunnerFactoryClass(java.lang.Class);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Class testRunnerFactoryClass
         0: .line 597
            aload 0 /* this */
            aload 1 /* testRunnerFactoryClass */
            invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.testng.ITestRunnerFactory
            invokevirtual org.testng.TestNG.setTestRunnerFactory:(Lorg/testng/ITestRunnerFactory;)V
         1: .line 598
            return
        end local 1 // java.lang.Class testRunnerFactoryClass
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/testng/TestNG;
            0    2     1  testRunnerFactoryClass  Ljava/lang/Class;
    MethodParameters:
                        Name  Flags
      testRunnerFactoryClass  

  protected void setTestRunnerFactory(org.testng.ITestRunnerFactory);
    descriptor: (Lorg/testng/ITestRunnerFactory;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ITestRunnerFactory itrf
         0: .line 602
            aload 0 /* this */
            aload 1 /* itrf */
            putfield org.testng.TestNG.m_testRunnerFactory:Lorg/testng/ITestRunnerFactory;
         1: .line 603
            return
        end local 1 // org.testng.ITestRunnerFactory itrf
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1  itrf  Lorg/testng/ITestRunnerFactory;
    MethodParameters:
      Name  Flags
      itrf  

  public void setObjectFactory(java.lang.Class);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Class c
         0: .line 606
            aload 0 /* this */
            aload 1 /* c */
            invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.testng.ITestObjectFactory
            putfield org.testng.TestNG.m_objectFactory:Lorg/testng/ITestObjectFactory;
         1: .line 607
            return
        end local 1 // java.lang.Class c
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1     c  Ljava/lang/Class;
    MethodParameters:
      Name  Flags
      c     

  public void setObjectFactory(org.testng.ITestObjectFactory);
    descriptor: (Lorg/testng/ITestObjectFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ITestObjectFactory factory
         0: .line 610
            aload 0 /* this */
            aload 1 /* factory */
            putfield org.testng.TestNG.m_objectFactory:Lorg/testng/ITestObjectFactory;
         1: .line 611
            return
        end local 1 // org.testng.ITestObjectFactory factory
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/testng/TestNG;
            0    2     1  factory  Lorg/testng/ITestObjectFactory;
    MethodParameters:
         Name  Flags
      factory  

  public void setListenerClasses(java.util.List<java.lang.Class<? extends org.testng.ITestNGListener>>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List classes
         0: .line 620
            aload 1 /* classes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: org.testng.TestNG java.util.List top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 2 /* cls */
        start local 2 // java.lang.Class cls
         2: .line 621
            aload 0 /* this */
            aload 2 /* cls */
            invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.testng.ITestNGListener
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
        end local 2 // java.lang.Class cls
         3: .line 620
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 623
            return
        end local 1 // java.util.List classes
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/testng/TestNG;
            0    5     1  classes  Ljava/util/List<Ljava/lang/Class<+Lorg/testng/ITestNGListener;>;>;
            2    3     2      cls  Ljava/lang/Class<+Lorg/testng/ITestNGListener;>;
    Signature: (Ljava/util/List<Ljava/lang/Class<+Lorg/testng/ITestNGListener;>;>;)V
    MethodParameters:
         Name  Flags
      classes  

  public void addListener(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Object listener
         0: .line 631
            aload 1 /* listener */
            instanceof org.testng.ITestNGListener
            ifne 5
         1: .line 633
            new java.lang.StringBuilder
            dup
            ldc "Listener "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         2: .line 634
            ldc " must be one of ITestListener, ISuiteListener, IReporter, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 635
            ldc " IAnnotationTransformer, IMethodInterceptor or IInvokedMethodListener"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 633
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.testng.TestNG.exitWithError:(Ljava/lang/String;)V
         5: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* listener */
            checkcast org.testng.ITestNGListener
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         6: .line 638
            return
        end local 1 // java.lang.Object listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/testng/TestNG;
            0    7     1  listener  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  private static <E> void maybeAddListener(java.util.Map<java.lang.Class<? extends E>, E>, );
    descriptor: (Ljava/util/Map;Ljava/lang/Object;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // java.lang.Object value
         0: .line 641
            aload 0 /* map */
            aload 1 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* value */
            iconst_0
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Object;Z)V
         1: .line 642
            return
        end local 1 // java.lang.Object value
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0    map  Ljava/util/Map<Ljava/lang/Class<+TE;>;TE;>;
            0    2     1  value  TE;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Map<Ljava/lang/Class<+TE;>;TE;>;TE;)V
    MethodParameters:
       Name  Flags
      map    
      value  

  private static <E> void maybeAddListener(java.util.Map<java.lang.Class<? extends E>, E>, java.lang.Class<? extends E>, E, );
    descriptor: (Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Object;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // java.util.Map map
        start local 1 // java.lang.Class type
        start local 2 // java.lang.Object value
        start local 3 // boolean quiet
         0: .line 645
            aload 0 /* map */
            aload 1 /* type */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 4
         1: .line 646
            iload 3 /* quiet */
            ifne 5
         2: .line 647
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Ignoring duplicate listener : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.testng.log4testng.Logger.warn:(Ljava/lang/Object;)V
         3: .line 649
            goto 5
         4: .line 650
      StackMap locals:
      StackMap stack:
            aload 0 /* map */
            aload 1 /* type */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 652
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean quiet
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Class type
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0    map  Ljava/util/Map<Ljava/lang/Class<+TE;>;TE;>;
            0    6     1   type  Ljava/lang/Class<+TE;>;
            0    6     2  value  TE;
            0    6     3  quiet  Z
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Map<Ljava/lang/Class<+TE;>;TE;>;Ljava/lang/Class<+TE;>;TE;Z)V
    MethodParameters:
       Name  Flags
      map    
      type   
      value  
      quiet  

  public void addListener(org.testng.ITestNGListener);
    descriptor: (Lorg/testng/ITestNGListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ITestNGListener listener
         0: .line 655
            aload 1 /* listener */
            ifnonnull 2
         1: .line 656
            return
         2: .line 658
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.ISuiteListener
            ifeq 5
         3: .line 659
            aload 1 /* listener */
            checkcast org.testng.ISuiteListener
            astore 2 /* suite */
        start local 2 // org.testng.ISuiteListener suite
         4: .line 660
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteListeners:Ljava/util/Map;
            aload 2 /* suite */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.ISuiteListener suite
         5: .line 662
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.ITestListener
            ifeq 8
         6: .line 663
            aload 1 /* listener */
            checkcast org.testng.ITestListener
            astore 2 /* test */
        start local 2 // org.testng.ITestListener test
         7: .line 664
            aload 0 /* this */
            getfield org.testng.TestNG.m_testListeners:Ljava/util/Map;
            aload 2 /* test */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.ITestListener test
         8: .line 666
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IClassListener
            ifeq 11
         9: .line 667
            aload 1 /* listener */
            checkcast org.testng.IClassListener
            astore 2 /* clazz */
        start local 2 // org.testng.IClassListener clazz
        10: .line 668
            aload 0 /* this */
            getfield org.testng.TestNG.m_classListeners:Ljava/util/Map;
            aload 2 /* clazz */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.IClassListener clazz
        11: .line 670
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IReporter
            ifeq 14
        12: .line 671
            aload 1 /* listener */
            checkcast org.testng.IReporter
            astore 2 /* reporter */
        start local 2 // org.testng.IReporter reporter
        13: .line 672
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            aload 2 /* reporter */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.IReporter reporter
        14: .line 674
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IAnnotationTransformer
            ifeq 16
        15: .line 675
            aload 0 /* this */
            aload 1 /* listener */
            checkcast org.testng.IAnnotationTransformer
            invokevirtual org.testng.TestNG.setAnnotationTransformer:(Lorg/testng/IAnnotationTransformer;)V
        16: .line 677
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IMethodInterceptor
            ifeq 18
        17: .line 678
            aload 0 /* this */
            getfield org.testng.TestNG.m_methodInterceptors:Ljava/util/List;
            aload 1 /* listener */
            checkcast org.testng.IMethodInterceptor
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 680
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IInvokedMethodListener
            ifeq 21
        19: .line 681
            aload 1 /* listener */
            checkcast org.testng.IInvokedMethodListener
            astore 2 /* method */
        start local 2 // org.testng.IInvokedMethodListener method
        20: .line 682
            aload 0 /* this */
            getfield org.testng.TestNG.m_invokedMethodListeners:Ljava/util/Map;
            aload 2 /* method */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.IInvokedMethodListener method
        21: .line 684
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IHookable
            ifeq 23
        22: .line 685
            aload 0 /* this */
            aload 1 /* listener */
            checkcast org.testng.IHookable
            invokevirtual org.testng.TestNG.setHookable:(Lorg/testng/IHookable;)V
        23: .line 687
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IConfigurable
            ifeq 25
        24: .line 688
            aload 0 /* this */
            aload 1 /* listener */
            checkcast org.testng.IConfigurable
            invokevirtual org.testng.TestNG.setConfigurable:(Lorg/testng/IConfigurable;)V
        25: .line 690
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IExecutionListener
            ifeq 27
        26: .line 691
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            aload 1 /* listener */
            checkcast org.testng.IExecutionListener
            invokeinterface org.testng.internal.IConfiguration.addExecutionListener:(Lorg/testng/IExecutionListener;)V
        27: .line 693
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IConfigurationListener
            ifeq 29
        28: .line 694
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            aload 1 /* listener */
            checkcast org.testng.IConfigurationListener
            invokeinterface org.testng.internal.IConfiguration.addConfigurationListener:(Lorg/testng/IConfigurationListener;)V
        29: .line 696
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IAlterSuiteListener
            ifeq 32
        30: .line 697
            aload 1 /* listener */
            checkcast org.testng.IAlterSuiteListener
            astore 2 /* alter */
        start local 2 // org.testng.IAlterSuiteListener alter
        31: .line 698
            aload 0 /* this */
            getfield org.testng.TestNG.m_alterSuiteListeners:Ljava/util/Map;
            aload 2 /* alter */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.IAlterSuiteListener alter
        32: .line 700
      StackMap locals:
      StackMap stack:
            aload 1 /* listener */
            instanceof org.testng.IDataProviderListener
            ifeq 35
        33: .line 701
            aload 1 /* listener */
            checkcast org.testng.IDataProviderListener
            astore 2 /* dataProvider */
        start local 2 // org.testng.IDataProviderListener dataProvider
        34: .line 702
            aload 0 /* this */
            getfield org.testng.TestNG.m_dataProviderListeners:Ljava/util/Map;
            aload 2 /* dataProvider */
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Object;)V
        end local 2 // org.testng.IDataProviderListener dataProvider
        35: .line 704
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.testng.ITestNGListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   36     0          this  Lorg/testng/TestNG;
            0   36     1      listener  Lorg/testng/ITestNGListener;
            4    5     2         suite  Lorg/testng/ISuiteListener;
            7    8     2          test  Lorg/testng/ITestListener;
           10   11     2         clazz  Lorg/testng/IClassListener;
           13   14     2      reporter  Lorg/testng/IReporter;
           20   21     2        method  Lorg/testng/IInvokedMethodListener;
           31   32     2         alter  Lorg/testng/IAlterSuiteListener;
           34   35     2  dataProvider  Lorg/testng/IDataProviderListener;
    MethodParameters:
          Name  Flags
      listener  

  public void addListener(org.testng.IInvokedMethodListener);
    descriptor: (Lorg/testng/IInvokedMethodListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IInvokedMethodListener listener
         0: .line 712
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 713
            return
        end local 1 // org.testng.IInvokedMethodListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/IInvokedMethodListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public void addListener(org.testng.ISuiteListener);
    descriptor: (Lorg/testng/ISuiteListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ISuiteListener listener
         0: .line 721
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 722
            return
        end local 1 // org.testng.ISuiteListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/ISuiteListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public void addListener(org.testng.ITestListener);
    descriptor: (Lorg/testng/ITestListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ITestListener listener
         0: .line 730
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 731
            return
        end local 1 // org.testng.ITestListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/ITestListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public void addListener(org.testng.IClassListener);
    descriptor: (Lorg/testng/IClassListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IClassListener listener
         0: .line 739
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 740
            return
        end local 1 // org.testng.IClassListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/IClassListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public void addListener(org.testng.IReporter);
    descriptor: (Lorg/testng/IReporter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IReporter listener
         0: .line 748
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 749
            return
        end local 1 // org.testng.IReporter listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/IReporter;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public void addInvokedMethodListener(org.testng.IInvokedMethodListener);
    descriptor: (Lorg/testng/IInvokedMethodListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IInvokedMethodListener listener
         0: .line 757
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 758
            return
        end local 1 // org.testng.IInvokedMethodListener listener
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/testng/TestNG;
            0    2     1  listener  Lorg/testng/IInvokedMethodListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      listener  

  public java.util.Set<org.testng.IReporter> getReporters();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 763
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Sets.newHashSet:(Ljava/util/Collection;)Ljava/util/Set;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
    Signature: ()Ljava/util/Set<Lorg/testng/IReporter;>;

  public java.util.List<org.testng.ITestListener> getTestListeners();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 767
            aload 0 /* this */
            getfield org.testng.TestNG.m_testListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Lists.newArrayList:(Ljava/util/Collection;)Ljava/util/List;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
    Signature: ()Ljava/util/List<Lorg/testng/ITestListener;>;

  public java.util.List<org.testng.ISuiteListener> getSuiteListeners();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 771
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Lists.newArrayList:(Ljava/util/Collection;)Ljava/util/List;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
    Signature: ()Ljava/util/List<Lorg/testng/ISuiteListener;>;

  public void setVerbose(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // int verbose
         0: .line 805
            aload 0 /* this */
            iload 1 /* verbose */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
         1: .line 806
            return
        end local 1 // int verbose
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/testng/TestNG;
            0    2     1  verbose  I
    MethodParameters:
         Name  Flags
      verbose  

  private void initializeCommandLineSuites();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 809
            aload 0 /* this */
            getfield org.testng.TestNG.m_commandLineTestClasses:[Ljava/lang/Class;
            ifnonnull 1
            aload 0 /* this */
            getfield org.testng.TestNG.m_commandLineMethods:Ljava/util/List;
            ifnull 15
         1: .line 810
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_commandLineMethods:Ljava/util/List;
            ifnull 4
         2: .line 811
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.m_commandLineMethods:Ljava/util/List;
            invokevirtual org.testng.TestNG.createCommandLineSuitesForMethods:(Ljava/util/List;)Ljava/util/List;
            putfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
         3: .line 812
            goto 5
         4: .line 814
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.m_commandLineTestClasses:[Ljava/lang/Class;
            invokevirtual org.testng.TestNG.createCommandLineSuitesForClasses:([Ljava/lang/Class;)Ljava/util/List;
            putfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
         5: .line 817
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 14
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
         6: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 1 /* s */
        start local 1 // org.testng.xml.XmlSuite s
         7: .line 818
            aload 1 /* s */
            invokevirtual org.testng.xml.XmlSuite.getTests:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 10
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite java.util.Iterator top java.util.Iterator
      StackMap stack:
         8: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlTest
            astore 3 /* t */
        start local 3 // org.testng.xml.XmlTest t
         9: .line 819
            aload 3 /* t */
            aload 0 /* this */
            getfield org.testng.TestNG.m_preserveOrder:Ljava/lang/Boolean;
            invokevirtual org.testng.xml.XmlTest.setPreserveOrder:(Ljava/lang/Boolean;)V
        end local 3 // org.testng.xml.XmlTest t
        10: .line 818
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 821
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 1 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 822
            aload 0 /* this */
            getfield org.testng.TestNG.m_groupByInstances:Ljava/lang/Boolean;
            ifnull 14
        13: .line 823
            aload 1 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_groupByInstances:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual org.testng.xml.XmlSuite.setGroupByInstances:(Z)V
        end local 1 // org.testng.xml.XmlSuite s
        14: .line 817
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        15: .line 827
      StackMap locals: org.testng.TestNG
      StackMap stack:
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/testng/TestNG;
            7   14     1     s  Lorg/testng/xml/XmlSuite;
            9   10     3     t  Lorg/testng/xml/XmlTest;

  private void initializeCommandLineSuitesParams();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 830
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            ifnonnull 2
         1: .line 831
            return
         2: .line 834
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 10
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 1 /* s */
        start local 1 // org.testng.xml.XmlSuite s
         4: .line 835
            aload 0 /* this */
            getfield org.testng.TestNG.m_threadCount:I
            iconst_m1
            if_icmpeq 6
         5: .line 836
            aload 1 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_threadCount:I
            invokevirtual org.testng.xml.XmlSuite.setThreadCount:(I)V
         6: .line 838
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            ifnull 8
         7: .line 839
            aload 1 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            invokevirtual org.testng.xml.XmlSuite.setParallel:(Lorg/testng/xml/XmlSuite$ParallelMode;)V
         8: .line 841
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
            ifnull 10
         9: .line 842
            aload 1 /* s */
            aload 0 /* this */
            getfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
            invokevirtual org.testng.xml.XmlSuite.setConfigFailurePolicy:(Lorg/testng/xml/XmlSuite$FailurePolicy;)V
        end local 1 // org.testng.xml.XmlSuite s
        10: .line 834
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        11: .line 846
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/testng/TestNG;
            4   10     1     s  Lorg/testng/xml/XmlSuite;

  private void initializeCommandLineSuitesGroups();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 851
            aload 0 /* this */
            getfield org.testng.TestNG.m_includedGroups:[Ljava/lang/String;
            ifnull 1
            aload 0 /* this */
            getfield org.testng.TestNG.m_includedGroups:[Ljava/lang/String;
            arraylength
            ifle 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* hasIncludedGroups */
        start local 1 // boolean hasIncludedGroups
         3: .line 852
            aload 0 /* this */
            getfield org.testng.TestNG.m_excludedGroups:[Ljava/lang/String;
            ifnull 4
            aload 0 /* this */
            getfield org.testng.TestNG.m_excludedGroups:[Ljava/lang/String;
            arraylength
            ifle 4
            iconst_1
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 2 /* hasExcludedGroups */
        start local 2 // boolean hasExcludedGroups
         6: .line 853
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            ifnull 7
            aload 0 /* this */
            getfield org.testng.TestNG.m_cmdlineSuites:Ljava/util/List;
            goto 8
      StackMap locals: int
      StackMap stack:
         7: aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.List
         8: astore 3 /* suites */
        start local 3 // java.util.List suites
         9: .line 854
            iload 1 /* hasIncludedGroups */
            ifne 10
            iload 2 /* hasExcludedGroups */
            ifeq 14
        10: .line 855
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* suites */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals: org.testng.TestNG int int java.util.List top java.util.Iterator
      StackMap stack:
        11: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 4 /* s */
        start local 4 // org.testng.xml.XmlSuite s
        12: .line 856
            aload 4 /* s */
            iload 1 /* hasIncludedGroups */
            aload 0 /* this */
            getfield org.testng.TestNG.m_includedGroups:[Ljava/lang/String;
            iload 2 /* hasExcludedGroups */
            aload 0 /* this */
            getfield org.testng.TestNG.m_excludedGroups:[Ljava/lang/String;
            invokestatic org.testng.TestNG.initializeCommandLineSuitesGroups:(Lorg/testng/xml/XmlSuite;Z[Ljava/lang/String;Z[Ljava/lang/String;)V
        end local 4 // org.testng.xml.XmlSuite s
        13: .line 855
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 859
      StackMap locals: org.testng.TestNG int int java.util.List
      StackMap stack:
            return
        end local 3 // java.util.List suites
        end local 2 // boolean hasExcludedGroups
        end local 1 // boolean hasIncludedGroups
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   15     0               this  Lorg/testng/TestNG;
            3   15     1  hasIncludedGroups  Z
            6   15     2  hasExcludedGroups  Z
            9   15     3             suites  Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
           12   13     4                  s  Lorg/testng/xml/XmlSuite;

  private static void initializeCommandLineSuitesGroups(org.testng.xml.XmlSuite, boolean, java.lang.String[], boolean, java.lang.String[]);
    descriptor: (Lorg/testng/xml/XmlSuite;Z[Ljava/lang/String;Z[Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.testng.xml.XmlSuite s
        start local 1 // boolean hasIncludedGroups
        start local 2 // java.lang.String[] m_includedGroups
        start local 3 // boolean hasExcludedGroups
        start local 4 // java.lang.String[] m_excludedGroups
         0: .line 864
            iload 1 /* hasIncludedGroups */
            ifeq 2
         1: .line 865
            aload 0 /* s */
            aload 2 /* m_includedGroups */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual org.testng.xml.XmlSuite.setIncludedGroups:(Ljava/util/List;)V
         2: .line 867
      StackMap locals:
      StackMap stack:
            iload 3 /* hasExcludedGroups */
            ifeq 4
         3: .line 868
            aload 0 /* s */
            aload 4 /* m_excludedGroups */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual org.testng.xml.XmlSuite.setExcludedGroups:(Ljava/util/List;)V
         4: .line 870
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: org.testng.xml.XmlSuite int java.lang.String[] int java.lang.String[] top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 5 /* child */
        start local 5 // org.testng.xml.XmlSuite child
         6: .line 871
            aload 5 /* child */
            iload 1 /* hasIncludedGroups */
            aload 2 /* m_includedGroups */
            iload 3 /* hasExcludedGroups */
            aload 4 /* m_excludedGroups */
            invokestatic org.testng.TestNG.initializeCommandLineSuitesGroups:(Lorg/testng/xml/XmlSuite;Z[Ljava/lang/String;Z[Ljava/lang/String;)V
        end local 5 // org.testng.xml.XmlSuite child
         7: .line 870
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 873
            return
        end local 4 // java.lang.String[] m_excludedGroups
        end local 3 // boolean hasExcludedGroups
        end local 2 // java.lang.String[] m_includedGroups
        end local 1 // boolean hasIncludedGroups
        end local 0 // org.testng.xml.XmlSuite s
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0                  s  Lorg/testng/xml/XmlSuite;
            0    9     1  hasIncludedGroups  Z
            0    9     2   m_includedGroups  [Ljava/lang/String;
            0    9     3  hasExcludedGroups  Z
            0    9     4   m_excludedGroups  [Ljava/lang/String;
            6    7     5              child  Lorg/testng/xml/XmlSuite;
    MethodParameters:
                   Name  Flags
      s                  
      hasIncludedGroups  
      m_includedGroups   
      hasExcludedGroups  
      m_excludedGroups   

  private void addReporter(java.lang.Class<? extends org.testng.IReporter>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Class r
         0: .line 875
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            aload 1 /* r */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 876
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            aload 1 /* r */
            aload 1 /* r */
            invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.testng.IReporter
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 878
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class r
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/testng/TestNG;
            0    3     1     r  Ljava/lang/Class<+Lorg/testng/IReporter;>;
    Signature: (Ljava/lang/Class<+Lorg/testng/IReporter;>;)V
    MethodParameters:
      Name  Flags
      r     

  private void initializeDefaultListeners();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 881
            aload 0 /* this */
            new org.testng.internal.ExitCodeListener
            dup
            invokespecial org.testng.internal.ExitCodeListener.<init>:()V
            putfield org.testng.TestNG.exitCodeListener:Lorg/testng/internal/ExitCodeListener;
         1: .line 882
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.exitCodeListener:Lorg/testng/internal/ExitCodeListener;
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         2: .line 883
            aload 0 /* this */
            getfield org.testng.TestNG.m_useDefaultListeners:Z
            ifeq 15
         3: .line 884
            aload 0 /* this */
            ldc Lorg/testng/reporters/SuiteHTMLReporter;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
         4: .line 885
            aload 0 /* this */
            ldc Lorg/testng/reporters/jq/Main;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
         5: .line 886
            aload 0 /* this */
            ldc Lorg/testng/reporters/FailedReporter;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
         6: .line 887
            aload 0 /* this */
            ldc Lorg/testng/reporters/XMLReporter;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
         7: .line 888
            ldc "oldTestngEmailableReporter"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            ifnull 10
         8: .line 889
            aload 0 /* this */
            ldc Lorg/testng/reporters/EmailableReporter;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
         9: .line 890
            goto 12
      StackMap locals:
      StackMap stack:
        10: ldc "noEmailableReporter"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 12
        11: .line 891
            aload 0 /* this */
            ldc Lorg/testng/reporters/EmailableReporter2;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
        12: .line 893
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Lorg/testng/reporters/JUnitReportReporter;
            invokevirtual org.testng.TestNG.addReporter:(Ljava/lang/Class;)V
        13: .line 894
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            ifnull 15
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iconst_4
            if_icmple 15
        14: .line 895
            aload 0 /* this */
            new org.testng.reporters.VerboseReporter
            dup
            ldc "[TestNG] "
            invokespecial org.testng.reporters.VerboseReporter.<init>:(Ljava/lang/String;)V
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestListener;)V
        15: .line 898
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/testng/TestNG;

  private void initializeConfiguration();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 901
            aload 0 /* this */
            getfield org.testng.TestNG.m_objectFactory:Lorg/testng/ITestObjectFactory;
            astore 1 /* factory */
        start local 1 // org.testng.ITestObjectFactory factory
         1: .line 906
            aload 0 /* this */
            invokevirtual org.testng.TestNG.addServiceLoaderListeners:()V
         2: .line 911
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 15
      StackMap locals: org.testng.TestNG org.testng.ITestObjectFactory top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 2 /* s */
        start local 2 // org.testng.xml.XmlSuite s
         4: .line 912
            aload 0 /* this */
            aload 2 /* s */
            invokevirtual org.testng.TestNG.addListeners:(Lorg/testng/xml/XmlSuite;)V
         5: .line 917
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getMethodSelectors:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: org.testng.TestNG org.testng.ITestObjectFactory org.testng.xml.XmlSuite java.util.Iterator top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlMethodSelector
            astore 4 /* methodSelector */
        start local 4 // org.testng.xml.XmlMethodSelector methodSelector
         7: .line 918
            aload 0 /* this */
            aload 4 /* methodSelector */
            invokevirtual org.testng.xml.XmlMethodSelector.getClassName:()Ljava/lang/String;
            aload 4 /* methodSelector */
            invokevirtual org.testng.xml.XmlMethodSelector.getPriority:()I
            invokevirtual org.testng.TestNG.addMethodSelector:(Ljava/lang/String;I)V
         8: .line 919
            aload 0 /* this */
            aload 4 /* methodSelector */
            invokevirtual org.testng.TestNG.addMethodSelector:(Lorg/testng/xml/XmlMethodSelector;)V
        end local 4 // org.testng.xml.XmlMethodSelector methodSelector
         9: .line 917
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 925
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getObjectFactory:()Lorg/testng/ITestObjectFactory;
            ifnull 15
        11: .line 926
            aload 1 /* factory */
            ifnonnull 14
        12: .line 927
            aload 2 /* s */
            invokevirtual org.testng.xml.XmlSuite.getObjectFactory:()Lorg/testng/ITestObjectFactory;
            astore 1 /* factory */
        13: .line 928
            goto 15
        14: .line 929
      StackMap locals: org.testng.TestNG org.testng.ITestObjectFactory org.testng.xml.XmlSuite java.util.Iterator
      StackMap stack:
            new org.testng.TestNGException
            dup
            ldc "Found more than one object-factory tag in your suites"
            invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.testng.xml.XmlSuite s
        15: .line 911
      StackMap locals: org.testng.TestNG org.testng.ITestObjectFactory top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        16: .line 934
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            new org.testng.internal.annotations.JDK15AnnotationFinder
            dup
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getAnnotationTransformer:()Lorg/testng/IAnnotationTransformer;
            invokespecial org.testng.internal.annotations.JDK15AnnotationFinder.<init>:(Lorg/testng/IAnnotationTransformer;)V
            invokeinterface org.testng.internal.IConfiguration.setAnnotationFinder:(Lorg/testng/internal/annotations/IAnnotationFinder;)V
        17: .line 935
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            aload 0 /* this */
            getfield org.testng.TestNG.m_hookable:Lorg/testng/IHookable;
            invokeinterface org.testng.internal.IConfiguration.setHookable:(Lorg/testng/IHookable;)V
        18: .line 936
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            aload 0 /* this */
            getfield org.testng.TestNG.m_configurable:Lorg/testng/IConfigurable;
            invokeinterface org.testng.internal.IConfiguration.setConfigurable:(Lorg/testng/IConfigurable;)V
        19: .line 937
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            aload 1 /* factory */
            invokeinterface org.testng.internal.IConfiguration.setObjectFactory:(Lorg/testng/ITestObjectFactory;)V
        20: .line 938
            return
        end local 1 // org.testng.ITestObjectFactory factory
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   21     0            this  Lorg/testng/TestNG;
            1   21     1         factory  Lorg/testng/ITestObjectFactory;
            4   15     2               s  Lorg/testng/xml/XmlSuite;
            7    9     4  methodSelector  Lorg/testng/xml/XmlMethodSelector;

  private void addListeners(org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/xml/XmlSuite;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite s
         0: .line 941
            aload 1 /* s */
            invokevirtual org.testng.xml.XmlSuite.getListeners:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* listenerName */
        start local 2 // java.lang.String listenerName
         2: .line 942
            aload 2 /* listenerName */
            invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 4 /* listenerClass */
        start local 4 // java.lang.Class listenerClass
         3: .line 945
            aload 4 /* listenerClass */
            ifnonnull 5
         4: .line 946
            new org.testng.TestNGException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Listener "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* listenerName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was not found in project's classpath"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 949
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite java.lang.String java.util.Iterator java.lang.Class
      StackMap stack:
            aload 4 /* listenerClass */
            invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.testng.ITestNGListener
            astore 5 /* listener */
        start local 5 // org.testng.ITestNGListener listener
         6: .line 950
            aload 0 /* this */
            aload 5 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
        end local 5 // org.testng.ITestNGListener listener
        end local 4 // java.lang.Class listenerClass
        end local 2 // java.lang.String listenerName
         7: .line 941
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 954
            aload 1 /* s */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            astore 2 /* childSuites */
        start local 2 // java.util.List childSuites
         9: .line 955
            aload 2 /* childSuites */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite java.util.List top java.util.Iterator
      StackMap stack:
        10: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 3 /* c */
        start local 3 // org.testng.xml.XmlSuite c
        11: .line 956
            aload 0 /* this */
            aload 3 /* c */
            invokevirtual org.testng.TestNG.addListeners:(Lorg/testng/xml/XmlSuite;)V
        end local 3 // org.testng.xml.XmlSuite c
        12: .line 955
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        13: .line 958
            return
        end local 2 // java.util.List childSuites
        end local 1 // org.testng.xml.XmlSuite s
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lorg/testng/TestNG;
            0   14     1              s  Lorg/testng/xml/XmlSuite;
            2    7     2   listenerName  Ljava/lang/String;
            3    7     4  listenerClass  Ljava/lang/Class<*>;
            6    7     5       listener  Lorg/testng/ITestNGListener;
            9   14     2    childSuites  Ljava/util/List<Lorg/testng/xml/XmlSuite;>;
           11   12     3              c  Lorg/testng/xml/XmlSuite;
    MethodParameters:
      Name  Flags
      s     

  private void addServiceLoaderListeners();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 964
            aload 0 /* this */
            getfield org.testng.TestNG.m_serviceLoaderClassLoader:Ljava/net/URLClassLoader;
            ifnull 2
         1: .line 965
            ldc Lorg/testng/ITestNGListener;
            aload 0 /* this */
            getfield org.testng.TestNG.m_serviceLoaderClassLoader:Ljava/net/URLClassLoader;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
            goto 3
         2: .line 966
      StackMap locals:
      StackMap stack:
            ldc Lorg/testng/ITestNGListener;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
         3: .line 964
      StackMap locals:
      StackMap stack: java.util.ServiceLoader
            astore 1 /* loader */
        start local 1 // java.lang.Iterable loader
         4: .line 967
            aload 1 /* loader */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: org.testng.TestNG java.lang.Iterable top java.util.Iterator
      StackMap stack:
         5: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.ITestNGListener
            astore 2 /* l */
        start local 2 // org.testng.ITestNGListener l
         6: .line 968
            ldc "[TestNG]"
            iconst_2
            new java.lang.StringBuilder
            dup
            ldc "Adding ServiceLoader listener:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* l */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
         7: .line 969
            aload 0 /* this */
            aload 2 /* l */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         8: .line 970
            aload 0 /* this */
            aload 2 /* l */
            invokevirtual org.testng.TestNG.addServiceLoaderListener:(Lorg/testng/ITestNGListener;)V
        end local 2 // org.testng.ITestNGListener l
         9: .line 967
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        10: .line 972
            return
        end local 1 // java.lang.Iterable loader
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/testng/TestNG;
            4   11     1  loader  Ljava/lang/Iterable<Lorg/testng/ITestNGListener;>;
            6    9     2       l  Lorg/testng/ITestNGListener;

  private void sanityCheck();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 981
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokestatic org.testng.xml.internal.XmlSuiteUtils.validateIfSuitesContainDuplicateTests:(Ljava/util/List;)V
         1: .line 982
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokestatic org.testng.xml.internal.XmlSuiteUtils.adjustSuiteNamesToEnsureUniqueness:(Ljava/util/List;)V
         2: .line 983
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/testng/TestNG;

  public void initializeEverything();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 991
            aload 0 /* this */
            getfield org.testng.TestNG.m_isInitialized:Z
            ifeq 2
         1: .line 992
            return
         2: .line 995
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeSuitesAndJarFile:()V
         3: .line 996
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeConfiguration:()V
         4: .line 997
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeDefaultListeners:()V
         5: .line 998
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeCommandLineSuites:()V
         6: .line 999
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeCommandLineSuitesParams:()V
         7: .line 1000
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeCommandLineSuitesGroups:()V
         8: .line 1002
            aload 0 /* this */
            iconst_1
            putfield org.testng.TestNG.m_isInitialized:Z
         9: .line 1003
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/testng/TestNG;

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1009
            aload 0 /* this */
            invokevirtual org.testng.TestNG.initializeEverything:()V
         1: .line 1010
            aload 0 /* this */
            invokevirtual org.testng.TestNG.sanityCheck:()V
         2: .line 1012
            aload 0 /* this */
            iconst_1
            invokevirtual org.testng.TestNG.runExecutionListeners:(Z)V
         3: .line 1014
            aload 0 /* this */
            invokevirtual org.testng.TestNG.runSuiteAlterationListeners:()V
         4: .line 1016
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield org.testng.TestNG.m_start:J
         5: .line 1017
            aload 0 /* this */
            invokevirtual org.testng.TestNG.runSuites:()Ljava/util/List;
            astore 1 /* suiteRunners */
        start local 1 // java.util.List suiteRunners
         6: .line 1019
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield org.testng.TestNG.m_end:J
         7: .line 1021
            aload 1 /* suiteRunners */
            ifnull 9
         8: .line 1022
            aload 0 /* this */
            aload 1 /* suiteRunners */
            invokevirtual org.testng.TestNG.generateReports:(Ljava/util/List;)V
         9: .line 1025
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual org.testng.TestNG.runExecutionListeners:(Z)V
        10: .line 1026
            aload 0 /* this */
            aload 0 /* this */
            getfield org.testng.TestNG.exitCodeListener:Lorg/testng/internal/ExitCodeListener;
            invokevirtual org.testng.internal.ExitCodeListener.getStatus:()Lorg/testng/internal/ExitCode;
            putfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
        11: .line 1028
            aload 0 /* this */
            getfield org.testng.TestNG.exitCodeListener:Lorg/testng/internal/ExitCodeListener;
            invokevirtual org.testng.internal.ExitCodeListener.hasTests:()Z
            ifne 15
        12: .line 1029
            invokestatic org.testng.TestRunner.getVerbose:()I
            iconst_1
            if_icmple 15
        13: .line 1030
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "[TestNG] No tests found. Nothing was run"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        14: .line 1031
            invokestatic org.testng.TestNG.usage:()V
        15: .line 1035
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic org.testng.TestNG.m_instance:Lorg/testng/TestNG;
        16: .line 1036
            aconst_null
            putstatic org.testng.TestNG.m_jCommander:Lcom/beust/jcommander/JCommander;
        17: .line 1037
            return
        end local 1 // java.util.List suiteRunners
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/testng/TestNG;
            6   18     1  suiteRunners  Ljava/util/List<Lorg/testng/ISuite;>;

  protected java.util.List<org.testng.ISuite> runSuites();
    descriptor: ()Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1049
            aload 0 /* this */
            invokevirtual org.testng.TestNG.runSuitesLocally:()Ljava/util/List;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
    Signature: ()Ljava/util/List<Lorg/testng/ISuite;>;

  private void runSuiteAlterationListeners();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1053
            aload 0 /* this */
            getfield org.testng.TestNG.m_alterSuiteListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.testng.TestNG top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.IAlterSuiteListener
            astore 1 /* l */
        start local 1 // org.testng.IAlterSuiteListener l
         2: .line 1054
            aload 1 /* l */
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface org.testng.IAlterSuiteListener.alter:(Ljava/util/List;)V
        end local 1 // org.testng.IAlterSuiteListener l
         3: .line 1053
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1056
            return
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/testng/TestNG;
            2    3     1     l  Lorg/testng/IAlterSuiteListener;

  private void runExecutionListeners(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=4, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean start
         0: .line 1059
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            invokeinterface org.testng.internal.IConfiguration.getExecutionListeners:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: org.testng.TestNG int top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.IExecutionListener
            astore 2 /* l */
        start local 2 // org.testng.IExecutionListener l
         2: .line 1060
            iload 1 /* start */
            ifeq 5
         3: .line 1061
            aload 2 /* l */
            invokeinterface org.testng.IExecutionListener.onExecutionStart:()V
         4: .line 1062
            goto 6
         5: .line 1063
      StackMap locals: org.testng.TestNG int org.testng.IExecutionListener java.util.Iterator
      StackMap stack:
            aload 2 /* l */
            invokeinterface org.testng.IExecutionListener.onExecutionFinish:()V
        end local 2 // org.testng.IExecutionListener l
         6: .line 1059
      StackMap locals: org.testng.TestNG int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         7: .line 1066
            return
        end local 1 // boolean start
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/testng/TestNG;
            0    8     1  start  Z
            2    6     2      l  Lorg/testng/IExecutionListener;
    MethodParameters:
       Name  Flags
      start  

  public void addAlterSuiteListener(org.testng.IAlterSuiteListener);
    descriptor: (Lorg/testng/IAlterSuiteListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IAlterSuiteListener l
         0: .line 1074
            aload 0 /* this */
            aload 1 /* l */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 1075
            return
        end local 1 // org.testng.IAlterSuiteListener l
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1     l  Lorg/testng/IAlterSuiteListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      l     

  public void addExecutionListener(org.testng.IExecutionListener);
    descriptor: (Lorg/testng/IExecutionListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IExecutionListener l
         0: .line 1083
            aload 0 /* this */
            aload 1 /* l */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/ITestNGListener;)V
         1: .line 1084
            return
        end local 1 // org.testng.IExecutionListener l
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1     l  Lorg/testng/IExecutionListener;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      l     

  private static void usage();
    descriptor: ()V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 1087
            getstatic org.testng.TestNG.m_jCommander:Lcom/beust/jcommander/JCommander;
            ifnonnull 2
         1: .line 1088
            new com.beust.jcommander.JCommander
            dup
            new org.testng.CommandLineArgs
            dup
            invokespecial org.testng.CommandLineArgs.<init>:()V
            invokespecial com.beust.jcommander.JCommander.<init>:(Ljava/lang/Object;)V
            putstatic org.testng.TestNG.m_jCommander:Lcom/beust/jcommander/JCommander;
         2: .line 1090
      StackMap locals:
      StackMap stack:
            getstatic org.testng.TestNG.m_jCommander:Lcom/beust/jcommander/JCommander;
            invokevirtual com.beust.jcommander.JCommander.usage:()V
         3: .line 1091
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void generateReports(java.util.List<org.testng.ISuite>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List suiteRunners
         0: .line 1094
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 11
      StackMap locals: org.testng.TestNG java.util.List top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.IReporter
            astore 2 /* reporter */
        start local 2 // org.testng.IReporter reporter
         2: .line 1096
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 4 /* start */
        start local 4 // long start
         3: .line 1097
            aload 2 /* reporter */
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            aload 1 /* suiteRunners */
            aload 0 /* this */
            getfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
            invokeinterface org.testng.IReporter.generateReport:(Ljava/util/List;Ljava/util/List;Ljava/lang/String;)V
         4: .line 1098
            ldc "TestNG"
            iconst_2
            new java.lang.StringBuilder
            dup
            ldc "Time taken by "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* reporter */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 1099
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 4 /* start */
            lsub
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1098
            invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
        end local 4 // long start
         7: .line 1100
            goto 11
         8: .line 1101
      StackMap locals: org.testng.TestNG java.util.List org.testng.IReporter java.util.Iterator
      StackMap stack: java.lang.Exception
            astore 4 /* ex */
        start local 4 // java.lang.Exception ex
         9: .line 1102
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "[TestNG] Reporter "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* reporter */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " failed"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 1103
            aload 4 /* ex */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        end local 4 // java.lang.Exception ex
        end local 2 // org.testng.IReporter reporter
        11: .line 1094
      StackMap locals: org.testng.TestNG java.util.List top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        12: .line 1106
            return
        end local 1 // java.util.List suiteRunners
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lorg/testng/TestNG;
            0   13     1  suiteRunners  Ljava/util/List<Lorg/testng/ISuite;>;
            2   11     2      reporter  Lorg/testng/IReporter;
            3    7     4         start  J
            9   11     4            ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     7       8  Class java.lang.Exception
    Signature: (Ljava/util/List<Lorg/testng/ISuite;>;)V
    MethodParameters:
              Name  Flags
      suiteRunners  

  public java.util.List<org.testng.ISuite> runSuitesLocally();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=6, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1113
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 4
         1: .line 1114
            ldc "No test suite found. Nothing to run"
            invokestatic org.testng.TestNG.error:(Ljava/lang/String;)V
         2: .line 1115
            invokestatic org.testng.TestNG.usage:()V
         3: .line 1116
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         4: .line 1119
      StackMap locals:
      StackMap stack:
            new org.testng.internal.SuiteRunnerMap
            dup
            invokespecial org.testng.internal.SuiteRunnerMap.<init>:()V
            astore 1 /* suiteRunnerMap */
        start local 1 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
         5: .line 1121
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            invokevirtual org.testng.xml.XmlSuite.getVerbose:()Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iconst_2
            if_icmplt 7
         6: .line 1122
            invokestatic org.testng.internal.Version.displayBanner:()V
         7: .line 1127
      StackMap locals: org.testng.internal.SuiteRunnerMap
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 10
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap top java.util.Iterator
      StackMap stack:
         8: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 2 /* xmlSuite */
        start local 2 // org.testng.xml.XmlSuite xmlSuite
         9: .line 1128
            aload 0 /* this */
            aload 1 /* suiteRunnerMap */
            aload 2 /* xmlSuite */
            invokevirtual org.testng.TestNG.createSuiteRunners:(Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
        end local 2 // org.testng.xml.XmlSuite xmlSuite
        10: .line 1127
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 1134
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            if_icmpne 19
            aload 0 /* this */
            getfield org.testng.TestNG.m_randomizeSuites:Z
            ifne 19
        12: .line 1136
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        13: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 2 /* xmlSuite */
        start local 2 // org.testng.xml.XmlSuite xmlSuite
        14: .line 1137
            aload 0 /* this */
            aload 2 /* xmlSuite */
            aload 1 /* suiteRunnerMap */
            aload 0 /* this */
            aload 2 /* xmlSuite */
            invokevirtual org.testng.TestNG.getVerbose:(Lorg/testng/xml/XmlSuite;)I
        15: .line 1138
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getDefaultSuiteName:()Ljava/lang/String;
        16: .line 1137
            invokevirtual org.testng.TestNG.runSuitesSequentially:(Lorg/testng/xml/XmlSuite;Lorg/testng/internal/SuiteRunnerMap;ILjava/lang/String;)V
        end local 2 // org.testng.xml.XmlSuite xmlSuite
        17: .line 1136
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        18: .line 1143
            aload 1 /* suiteRunnerMap */
            invokevirtual org.testng.internal.SuiteRunnerMap.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Lists.newArrayList:(Ljava/util/Collection;)Ljava/util/List;
            areturn
        19: .line 1148
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap
      StackMap stack:
            new org.testng.internal.DynamicGraph
            dup
            invokespecial org.testng.internal.DynamicGraph.<init>:()V
            astore 2 /* suiteGraph */
        start local 2 // org.testng.internal.DynamicGraph suiteGraph
        20: .line 1149
            aload 0 /* this */
            getfield org.testng.TestNG.m_suites:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 23
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap org.testng.internal.DynamicGraph top java.util.Iterator
      StackMap stack:
        21: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 3 /* xmlSuite */
        start local 3 // org.testng.xml.XmlSuite xmlSuite
        22: .line 1150
            aload 0 /* this */
            aload 2 /* suiteGraph */
            aload 1 /* suiteRunnerMap */
            aload 3 /* xmlSuite */
            invokevirtual org.testng.TestNG.populateSuiteGraph:(Lorg/testng/internal/DynamicGraph;Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
        end local 3 // org.testng.xml.XmlSuite xmlSuite
        23: .line 1149
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        24: .line 1153
            new org.testng.internal.thread.graph.SuiteWorkerFactory
            dup
            aload 1 /* suiteRunnerMap */
        25: .line 1154
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getDefaultSuiteName:()Ljava/lang/String;
        26: .line 1153
            invokespecial org.testng.internal.thread.graph.SuiteWorkerFactory.<init>:(Lorg/testng/internal/SuiteRunnerMap;Ljava/lang/Integer;Ljava/lang/String;)V
            astore 3 /* factory */
        start local 3 // org.testng.internal.thread.graph.IThreadWorkerFactory factory
        27: .line 1156
            new org.testng.internal.thread.graph.GraphThreadPoolExecutor
            dup
            ldc "suites"
            aload 2 /* suiteGraph */
            aload 3 /* factory */
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
        28: .line 1157
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            ldc 2147483647
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
        29: .line 1158
            new java.util.concurrent.LinkedBlockingQueue
            dup
            invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
        30: .line 1156
            invokespecial org.testng.internal.thread.graph.GraphThreadPoolExecutor.<init>:(Ljava/lang/String;Lorg/testng/internal/DynamicGraph;Lorg/testng/internal/thread/graph/IThreadWorkerFactory;IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
        31: .line 1155
            astore 4 /* pooledExecutor */
        start local 4 // org.testng.internal.thread.graph.GraphThreadPoolExecutor pooledExecutor
        32: .line 1160
            ldc "TestNG"
            iconst_2
            ldc "Starting executor for all suites"
            invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
        33: .line 1162
            aload 4 /* pooledExecutor */
            invokevirtual org.testng.internal.thread.graph.GraphThreadPoolExecutor.run:()V
        34: .line 1164
            aload 4 /* pooledExecutor */
            ldc 9223372036854775807
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual org.testng.internal.thread.graph.GraphThreadPoolExecutor.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        35: .line 1165
            aload 4 /* pooledExecutor */
            invokevirtual org.testng.internal.thread.graph.GraphThreadPoolExecutor.shutdownNow:()Ljava/util/List;
            pop
        36: .line 1166
            goto 40
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap org.testng.internal.DynamicGraph org.testng.internal.thread.graph.IThreadWorkerFactory org.testng.internal.thread.graph.GraphThreadPoolExecutor
      StackMap stack: java.lang.InterruptedException
        37: astore 5 /* handled */
        start local 5 // java.lang.InterruptedException handled
        38: .line 1167
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        39: .line 1168
            new java.lang.StringBuilder
            dup
            ldc "Error waiting for concurrent executors to finish "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* handled */
            invokevirtual java.lang.InterruptedException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.testng.TestNG.error:(Ljava/lang/String;)V
        end local 5 // java.lang.InterruptedException handled
        40: .line 1174
      StackMap locals:
      StackMap stack:
            aload 1 /* suiteRunnerMap */
            invokevirtual org.testng.internal.SuiteRunnerMap.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Lists.newArrayList:(Ljava/util/Collection;)Ljava/util/List;
            areturn
        end local 4 // org.testng.internal.thread.graph.GraphThreadPoolExecutor pooledExecutor
        end local 3 // org.testng.internal.thread.graph.IThreadWorkerFactory factory
        end local 2 // org.testng.internal.DynamicGraph suiteGraph
        end local 1 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   41     0            this  Lorg/testng/TestNG;
            5   41     1  suiteRunnerMap  Lorg/testng/internal/SuiteRunnerMap;
            9   10     2        xmlSuite  Lorg/testng/xml/XmlSuite;
           14   17     2        xmlSuite  Lorg/testng/xml/XmlSuite;
           20   41     2      suiteGraph  Lorg/testng/internal/DynamicGraph<Lorg/testng/ISuite;>;
           22   23     3        xmlSuite  Lorg/testng/xml/XmlSuite;
           27   41     3         factory  Lorg/testng/internal/thread/graph/IThreadWorkerFactory<Lorg/testng/ISuite;>;
           32   41     4  pooledExecutor  Lorg/testng/internal/thread/graph/GraphThreadPoolExecutor<Lorg/testng/ISuite;>;
           38   40     5         handled  Ljava/lang/InterruptedException;
      Exception table:
        from    to  target  type
          34    36      37  Class java.lang.InterruptedException
    Signature: ()Ljava/util/List<Lorg/testng/ISuite;>;

  private static void error(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 1178
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            aload 0 /* s */
            invokevirtual org.testng.log4testng.Logger.error:(Ljava/lang/Object;)V
         1: .line 1179
            return
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private int getVerbose(org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/xml/XmlSuite;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite xmlSuite
         0: .line 1186
            aload 1 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getVerbose:()Ljava/lang/Integer;
            ifnull 1
            aload 1 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getVerbose:()Ljava/lang/Integer;
            goto 3
         1: .line 1187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            ifnull 2
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            goto 3
      StackMap locals:
      StackMap stack:
         2: getstatic org.testng.TestNG.DEFAULT_VERBOSE:Ljava/lang/Integer;
         3: .line 1186
      StackMap locals:
      StackMap stack: java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 2 /* result */
        start local 2 // int result
         4: .line 1188
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // org.testng.xml.XmlSuite xmlSuite
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/testng/TestNG;
            0    5     1  xmlSuite  Lorg/testng/xml/XmlSuite;
            4    5     2    result  I
    MethodParameters:
          Name  Flags
      xmlSuite  

  private void runSuitesSequentially(org.testng.xml.XmlSuite, org.testng.internal.SuiteRunnerMap, int, java.lang.String);
    descriptor: (Lorg/testng/xml/XmlSuite;Lorg/testng/internal/SuiteRunnerMap;ILjava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite xmlSuite
        start local 2 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        start local 3 // int verbose
        start local 4 // java.lang.String defaultSuiteName
         0: .line 1203
            aload 1 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 3
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite org.testng.internal.SuiteRunnerMap int java.lang.String top java.util.Iterator
      StackMap stack:
         1: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 5 /* childSuite */
        start local 5 // org.testng.xml.XmlSuite childSuite
         2: .line 1204
            aload 0 /* this */
            aload 5 /* childSuite */
            aload 2 /* suiteRunnerMap */
            iload 3 /* verbose */
            aload 4 /* defaultSuiteName */
            invokevirtual org.testng.TestNG.runSuitesSequentially:(Lorg/testng/xml/XmlSuite;Lorg/testng/internal/SuiteRunnerMap;ILjava/lang/String;)V
        end local 5 // org.testng.xml.XmlSuite childSuite
         3: .line 1203
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1206
            new org.testng.SuiteRunnerWorker
            dup
            aload 2 /* suiteRunnerMap */
            aload 1 /* xmlSuite */
            invokevirtual org.testng.internal.SuiteRunnerMap.get:(Lorg/testng/xml/XmlSuite;)Lorg/testng/ISuite;
            aload 2 /* suiteRunnerMap */
         5: .line 1207
            iload 3 /* verbose */
            aload 4 /* defaultSuiteName */
         6: .line 1206
            invokespecial org.testng.SuiteRunnerWorker.<init>:(Lorg/testng/ISuite;Lorg/testng/internal/SuiteRunnerMap;ILjava/lang/String;)V
            astore 5 /* srw */
        start local 5 // org.testng.SuiteRunnerWorker srw
         7: .line 1208
            aload 5 /* srw */
            invokevirtual org.testng.SuiteRunnerWorker.run:()V
         8: .line 1209
            return
        end local 5 // org.testng.SuiteRunnerWorker srw
        end local 4 // java.lang.String defaultSuiteName
        end local 3 // int verbose
        end local 2 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        end local 1 // org.testng.xml.XmlSuite xmlSuite
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lorg/testng/TestNG;
            0    9     1          xmlSuite  Lorg/testng/xml/XmlSuite;
            0    9     2    suiteRunnerMap  Lorg/testng/internal/SuiteRunnerMap;
            0    9     3           verbose  I
            0    9     4  defaultSuiteName  Ljava/lang/String;
            2    3     5        childSuite  Lorg/testng/xml/XmlSuite;
            7    9     5               srw  Lorg/testng/SuiteRunnerWorker;
    MethodParameters:
                  Name  Flags
      xmlSuite          
      suiteRunnerMap    
      verbose           
      defaultSuiteName  

  private void populateSuiteGraph(org.testng.internal.DynamicGraph<org.testng.ISuite>, org.testng.internal.SuiteRunnerMap, org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/internal/DynamicGraph;Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.internal.DynamicGraph suiteGraph
        start local 2 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        start local 3 // org.testng.xml.XmlSuite xmlSuite
         0: .line 1222
            aload 2 /* suiteRunnerMap */
            aload 3 /* xmlSuite */
            invokevirtual org.testng.internal.SuiteRunnerMap.get:(Lorg/testng/xml/XmlSuite;)Lorg/testng/ISuite;
            astore 4 /* parentSuiteRunner */
        start local 4 // org.testng.ISuite parentSuiteRunner
         1: .line 1223
            aload 3 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 4
         2: .line 1224
            aload 1 /* suiteGraph */
            aload 4 /* parentSuiteRunner */
            invokevirtual org.testng.internal.DynamicGraph.addNode:(Ljava/lang/Object;)Z
            pop
         3: .line 1225
            goto 9
         4: .line 1227
      StackMap locals: org.testng.ISuite
      StackMap stack:
            aload 3 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: org.testng.TestNG org.testng.internal.DynamicGraph org.testng.internal.SuiteRunnerMap org.testng.xml.XmlSuite org.testng.ISuite top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 5 /* childSuite */
        start local 5 // org.testng.xml.XmlSuite childSuite
         6: .line 1228
            aload 1 /* suiteGraph */
            iconst_0
            aload 4 /* parentSuiteRunner */
            aload 2 /* suiteRunnerMap */
            aload 5 /* childSuite */
            invokevirtual org.testng.internal.SuiteRunnerMap.get:(Lorg/testng/xml/XmlSuite;)Lorg/testng/ISuite;
            invokevirtual org.testng.internal.DynamicGraph.addEdge:(ILjava/lang/Object;Ljava/lang/Object;)V
         7: .line 1229
            aload 0 /* this */
            aload 1 /* suiteGraph */
            aload 2 /* suiteRunnerMap */
            aload 5 /* childSuite */
            invokevirtual org.testng.TestNG.populateSuiteGraph:(Lorg/testng/internal/DynamicGraph;Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
        end local 5 // org.testng.xml.XmlSuite childSuite
         8: .line 1227
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 1232
      StackMap locals: org.testng.TestNG org.testng.internal.DynamicGraph org.testng.internal.SuiteRunnerMap org.testng.xml.XmlSuite org.testng.ISuite
      StackMap stack:
            return
        end local 4 // org.testng.ISuite parentSuiteRunner
        end local 3 // org.testng.xml.XmlSuite xmlSuite
        end local 2 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        end local 1 // org.testng.internal.DynamicGraph suiteGraph
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lorg/testng/TestNG;
            0   10     1         suiteGraph  Lorg/testng/internal/DynamicGraph<Lorg/testng/ISuite;>;
            0   10     2     suiteRunnerMap  Lorg/testng/internal/SuiteRunnerMap;
            0   10     3           xmlSuite  Lorg/testng/xml/XmlSuite;
            1   10     4  parentSuiteRunner  Lorg/testng/ISuite;
            6    8     5         childSuite  Lorg/testng/xml/XmlSuite;
    Signature: (Lorg/testng/internal/DynamicGraph<Lorg/testng/ISuite;>;Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
    MethodParameters:
                Name  Flags
      suiteGraph      
      suiteRunnerMap  
      xmlSuite        

  private void createSuiteRunners(org.testng.internal.SuiteRunnerMap, org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        start local 2 // org.testng.xml.XmlSuite xmlSuite
         0: .line 1242
            aload 0 /* this */
            getfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
            ifnull 2
            aload 0 /* this */
            getfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
            getstatic org.testng.xml.XmlSuite.DEFAULT_JUNIT:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 1243
            aload 2 /* xmlSuite */
            aload 0 /* this */
            getfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
            invokevirtual org.testng.xml.XmlSuite.setJUnit:(Ljava/lang/Boolean;)V
         2: .line 1248
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_skipFailedInvocationCounts:Ljava/lang/Boolean;
            ifnull 4
         3: .line 1249
            aload 2 /* xmlSuite */
            aload 0 /* this */
            getfield org.testng.TestNG.m_skipFailedInvocationCounts:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual org.testng.xml.XmlSuite.setSkipFailedInvocationCounts:(Z)V
         4: .line 1253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            ifnull 6
         5: .line 1254
            aload 2 /* xmlSuite */
            aload 0 /* this */
            getfield org.testng.TestNG.m_verbose:Ljava/lang/Integer;
            invokevirtual org.testng.xml.XmlSuite.setVerbose:(Ljava/lang/Integer;)V
         6: .line 1257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
            ifnull 8
         7: .line 1258
            aload 2 /* xmlSuite */
            aload 0 /* this */
            getfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
            invokevirtual org.testng.xml.XmlSuite.setConfigFailurePolicy:(Lorg/testng/xml/XmlSuite$FailurePolicy;)V
         8: .line 1261
      StackMap locals:
      StackMap stack:
            aload 2 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getTests:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 21
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap org.testng.xml.XmlSuite top java.util.Iterator
      StackMap stack:
         9: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlTest
            astore 3 /* t */
        start local 3 // org.testng.xml.XmlTest t
        10: .line 1262
            aload 0 /* this */
            getfield org.testng.TestNG.m_methodDescriptors:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 16
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap org.testng.xml.XmlSuite org.testng.xml.XmlTest java.util.Iterator top java.util.Iterator
      StackMap stack:
        11: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* ms */
        start local 5 // java.util.Map$Entry ms
        12: .line 1263
            new org.testng.xml.XmlMethodSelector
            dup
            invokespecial org.testng.xml.XmlMethodSelector.<init>:()V
            astore 7 /* xms */
        start local 7 // org.testng.xml.XmlMethodSelector xms
        13: .line 1264
            aload 7 /* xms */
            aload 5 /* ms */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual org.testng.xml.XmlMethodSelector.setName:(Ljava/lang/String;)V
        14: .line 1265
            aload 7 /* xms */
            aload 5 /* ms */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual org.testng.xml.XmlMethodSelector.setPriority:(I)V
        15: .line 1266
            aload 3 /* t */
            invokevirtual org.testng.xml.XmlTest.getMethodSelectors:()Ljava/util/List;
            aload 7 /* xms */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // org.testng.xml.XmlMethodSelector xms
        end local 5 // java.util.Map$Entry ms
        16: .line 1262
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        17: .line 1268
            aload 0 /* this */
            getfield org.testng.TestNG.m_selectors:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 20
      StackMap locals:
      StackMap stack:
        18: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlMethodSelector
            astore 5 /* selector */
        start local 5 // org.testng.xml.XmlMethodSelector selector
        19: .line 1269
            aload 3 /* t */
            invokevirtual org.testng.xml.XmlTest.getMethodSelectors:()Ljava/util/List;
            aload 5 /* selector */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.testng.xml.XmlMethodSelector selector
        20: .line 1268
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        end local 3 // org.testng.xml.XmlTest t
        21: .line 1261
      StackMap locals: org.testng.TestNG org.testng.internal.SuiteRunnerMap org.testng.xml.XmlSuite top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        22: .line 1273
            aload 1 /* suiteRunnerMap */
            aload 2 /* xmlSuite */
            aload 0 /* this */
            aload 2 /* xmlSuite */
            invokevirtual org.testng.TestNG.createSuiteRunner:(Lorg/testng/xml/XmlSuite;)Lorg/testng/SuiteRunner;
            invokevirtual org.testng.internal.SuiteRunnerMap.put:(Lorg/testng/xml/XmlSuite;Lorg/testng/ISuite;)V
        23: .line 1275
            aload 2 /* xmlSuite */
            invokevirtual org.testng.xml.XmlSuite.getChildSuites:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 26
      StackMap locals:
      StackMap stack:
        24: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.xml.XmlSuite
            astore 3 /* childSuite */
        start local 3 // org.testng.xml.XmlSuite childSuite
        25: .line 1276
            aload 0 /* this */
            aload 1 /* suiteRunnerMap */
            aload 3 /* childSuite */
            invokevirtual org.testng.TestNG.createSuiteRunners:(Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V
        end local 3 // org.testng.xml.XmlSuite childSuite
        26: .line 1275
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        27: .line 1278
            return
        end local 2 // org.testng.xml.XmlSuite xmlSuite
        end local 1 // org.testng.internal.SuiteRunnerMap suiteRunnerMap
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   28     0            this  Lorg/testng/TestNG;
            0   28     1  suiteRunnerMap  Lorg/testng/internal/SuiteRunnerMap;
            0   28     2        xmlSuite  Lorg/testng/xml/XmlSuite;
           10   21     3               t  Lorg/testng/xml/XmlTest;
           12   16     5              ms  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Integer;>;
           13   16     7             xms  Lorg/testng/xml/XmlMethodSelector;
           19   20     5        selector  Lorg/testng/xml/XmlMethodSelector;
           25   26     3      childSuite  Lorg/testng/xml/XmlSuite;
    MethodParameters:
                Name  Flags
      suiteRunnerMap  
      xmlSuite        

  private org.testng.SuiteRunner createSuiteRunner(org.testng.xml.XmlSuite);
    descriptor: (Lorg/testng/xml/XmlSuite;)Lorg/testng/SuiteRunner;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=5, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite xmlSuite
         0: .line 1286
            new org.testng.SuiteRunner
            dup
            aload 0 /* this */
            invokevirtual org.testng.TestNG.getConfiguration:()Lorg/testng/internal/IConfiguration;
            aload 1 /* xmlSuite */
         1: .line 1287
            aload 0 /* this */
            getfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
         2: .line 1288
            aload 0 /* this */
            getfield org.testng.TestNG.m_testRunnerFactory:Lorg/testng/ITestRunnerFactory;
         3: .line 1289
            aload 0 /* this */
            getfield org.testng.TestNG.m_useDefaultListeners:Z
         4: .line 1290
            aload 0 /* this */
            getfield org.testng.TestNG.m_methodInterceptors:Ljava/util/List;
         5: .line 1291
            aload 0 /* this */
            getfield org.testng.TestNG.m_invokedMethodListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
         6: .line 1292
            aload 0 /* this */
            getfield org.testng.TestNG.m_testListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
         7: .line 1293
            aload 0 /* this */
            getfield org.testng.TestNG.m_classListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
         8: .line 1294
            aload 0 /* this */
            getfield org.testng.TestNG.m_dataProviderListeners:Ljava/util/Map;
         9: .line 1295
            invokestatic org.testng.internal.Systematiser.getComparator:()Ljava/util/Comparator;
        10: .line 1286
            invokespecial org.testng.SuiteRunner.<init>:(Lorg/testng/internal/IConfiguration;Lorg/testng/xml/XmlSuite;Ljava/lang/String;Lorg/testng/ITestRunnerFactory;ZLjava/util/List;Ljava/util/Collection;Ljava/util/Collection;Ljava/util/Collection;Ljava/util/Map;Ljava/util/Comparator;)V
            astore 2 /* result */
        start local 2 // org.testng.SuiteRunner result
        11: .line 1297
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 14
      StackMap locals: org.testng.TestNG org.testng.xml.XmlSuite org.testng.SuiteRunner top java.util.Iterator
      StackMap stack:
        12: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.ISuiteListener
            astore 3 /* isl */
        start local 3 // org.testng.ISuiteListener isl
        13: .line 1298
            aload 2 /* result */
            aload 3 /* isl */
            invokevirtual org.testng.SuiteRunner.addListener:(Lorg/testng/ISuiteListener;)V
        end local 3 // org.testng.ISuiteListener isl
        14: .line 1297
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        15: .line 1301
            aload 2 /* result */
            invokevirtual org.testng.SuiteRunner.getReporters:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 18
      StackMap locals:
      StackMap stack:
        16: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.IReporter
            astore 3 /* r */
        start local 3 // org.testng.IReporter r
        17: .line 1302
            aload 0 /* this */
            getfield org.testng.TestNG.m_reporters:Ljava/util/Map;
            aload 3 /* r */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 3 /* r */
            iconst_1
            invokestatic org.testng.TestNG.maybeAddListener:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Object;Z)V
        end local 3 // org.testng.IReporter r
        18: .line 1301
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        19: .line 1305
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            invokeinterface org.testng.internal.IConfiguration.getConfigurationListeners:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 22
      StackMap locals:
      StackMap stack:
        20: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.testng.IConfigurationListener
            astore 3 /* cl */
        start local 3 // org.testng.IConfigurationListener cl
        21: .line 1306
            aload 2 /* result */
            aload 3 /* cl */
            invokevirtual org.testng.SuiteRunner.addConfigurationListener:(Lorg/testng/IConfigurationListener;)V
        end local 3 // org.testng.IConfigurationListener cl
        22: .line 1305
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        23: .line 1309
            aload 2 /* result */
            areturn
        end local 2 // org.testng.SuiteRunner result
        end local 1 // org.testng.xml.XmlSuite xmlSuite
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0      this  Lorg/testng/TestNG;
            0   24     1  xmlSuite  Lorg/testng/xml/XmlSuite;
           11   24     2    result  Lorg/testng/SuiteRunner;
           13   14     3       isl  Lorg/testng/ISuiteListener;
           17   18     3         r  Lorg/testng/IReporter;
           21   22     3        cl  Lorg/testng/IConfigurationListener;
    MethodParameters:
          Name  Flags
      xmlSuite  

  protected org.testng.internal.IConfiguration getConfiguration();
    descriptor: ()Lorg/testng/internal/IConfiguration;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1313
            aload 0 /* this */
            getfield org.testng.TestNG.m_configuration:Lorg/testng/internal/IConfiguration;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String[] argv
         0: .line 1323
            aload 0 /* argv */
            aconst_null
            invokestatic org.testng.TestNG.privateMain:([Ljava/lang/String;Lorg/testng/ITestListener;)Lorg/testng/TestNG;
            astore 1 /* testng */
        start local 1 // org.testng.TestNG testng
         1: .line 1324
            aload 1 /* testng */
            invokevirtual org.testng.TestNG.getStatus:()I
            invokestatic java.lang.System.exit:(I)V
         2: .line 1325
            return
        end local 1 // org.testng.TestNG testng
        end local 0 // java.lang.String[] argv
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    argv  [Ljava/lang/String;
            1    3     1  testng  Lorg/testng/TestNG;
    MethodParameters:
      Name  Flags
      argv  

  public static org.testng.TestNG privateMain(java.lang.String[], org.testng.ITestListener);
    descriptor: ([Ljava/lang/String;Lorg/testng/ITestListener;)Lorg/testng/TestNG;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.String[] argv
        start local 1 // org.testng.ITestListener listener
         0: .line 1331
            new org.testng.TestNG
            dup
            invokespecial org.testng.TestNG.<init>:()V
            astore 2 /* result */
        start local 2 // org.testng.TestNG result
         1: .line 1333
            aload 1 /* listener */
            ifnull 3
         2: .line 1334
            aload 2 /* result */
            aload 1 /* listener */
            invokevirtual org.testng.TestNG.addListener:(Ljava/lang/Object;)V
         3: .line 1341
      StackMap locals: org.testng.TestNG
      StackMap stack:
            new org.testng.CommandLineArgs
            dup
            invokespecial org.testng.CommandLineArgs.<init>:()V
            astore 3 /* cla */
        start local 3 // org.testng.CommandLineArgs cla
         4: .line 1342
            new com.beust.jcommander.JCommander
            dup
            aload 3 /* cla */
            aload 0 /* argv */
            invokespecial com.beust.jcommander.JCommander.<init>:(Ljava/lang/Object;[Ljava/lang/String;)V
            putstatic org.testng.TestNG.m_jCommander:Lcom/beust/jcommander/JCommander;
         5: .line 1343
            aload 3 /* cla */
            invokestatic org.testng.TestNG.validateCommandLineParameters:(Lorg/testng/CommandLineArgs;)V
         6: .line 1344
            aload 2 /* result */
            aload 3 /* cla */
            invokevirtual org.testng.TestNG.configure:(Lorg/testng/CommandLineArgs;)V
        end local 3 // org.testng.CommandLineArgs cla
         7: .line 1345
            goto 10
         8: .line 1346
      StackMap locals:
      StackMap stack: com.beust.jcommander.ParameterException
            astore 3 /* ex */
        start local 3 // com.beust.jcommander.ParameterException ex
         9: .line 1347
            aload 3 /* ex */
            invokevirtual com.beust.jcommander.ParameterException.getMessage:()Ljava/lang/String;
            invokestatic org.testng.TestNG.exitWithError:(Ljava/lang/String;)V
        end local 3 // com.beust.jcommander.ParameterException ex
        10: .line 1354
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            invokevirtual org.testng.TestNG.run:()V
        11: .line 1355
            goto 18
        12: .line 1356
      StackMap locals:
      StackMap stack: org.testng.TestNGException
            astore 3 /* ex */
        start local 3 // org.testng.TestNGException ex
        13: .line 1357
            invokestatic org.testng.TestRunner.getVerbose:()I
            iconst_1
            if_icmple 16
        14: .line 1358
            aload 3 /* ex */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual org.testng.TestNGException.printStackTrace:(Ljava/io/PrintStream;)V
        15: .line 1359
            goto 17
        16: .line 1361
      StackMap locals: org.testng.TestNGException
      StackMap stack:
            aload 3 /* ex */
            invokevirtual org.testng.TestNGException.getMessage:()Ljava/lang/String;
            invokestatic org.testng.TestNG.error:(Ljava/lang/String;)V
        17: .line 1363
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            invokestatic org.testng.internal.ExitCode.newExitCodeRepresentingFailure:()Lorg/testng/internal/ExitCode;
            putfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
        end local 3 // org.testng.TestNGException ex
        18: .line 1366
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // org.testng.TestNG result
        end local 1 // org.testng.ITestListener listener
        end local 0 // java.lang.String[] argv
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      argv  [Ljava/lang/String;
            0   19     1  listener  Lorg/testng/ITestListener;
            1   19     2    result  Lorg/testng/TestNG;
            4    7     3       cla  Lorg/testng/CommandLineArgs;
            9   10     3        ex  Lcom/beust/jcommander/ParameterException;
           13   18     3        ex  Lorg/testng/TestNGException;
      Exception table:
        from    to  target  type
           3     7       8  Class com.beust.jcommander.ParameterException
          10    11      12  Class org.testng.TestNGException
    MethodParameters:
          Name  Flags
      argv      
      listener  

  protected void configure(org.testng.CommandLineArgs);
    descriptor: (Lorg/testng/CommandLineArgs;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.CommandLineArgs cla
         0: .line 1373
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.verbose:Ljava/lang/Integer;
            ifnull 2
         1: .line 1374
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.verbose:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual org.testng.TestNG.setVerbose:(I)V
         2: .line 1376
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.outputDirectory:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setOutputDirectory:(Ljava/lang/String;)V
         3: .line 1378
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testClass:Ljava/lang/String;
            astore 2 /* testClasses */
        start local 2 // java.lang.String testClasses
         4: .line 1379
            aload 2 /* testClasses */
            ifnull 13
         5: .line 1380
            aload 2 /* testClasses */
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* strClasses */
        start local 3 // java.lang.String[] strClasses
         6: .line 1381
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            astore 4 /* classes */
        start local 4 // java.util.List classes
         7: .line 1382
            aload 3 /* strClasses */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 11
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String java.lang.String[] java.util.List top int int java.lang.String[]
      StackMap stack:
         8: aload 8
            iload 6
            aaload
            astore 5 /* c */
        start local 5 // java.lang.String c
         9: .line 1383
            aload 4 /* classes */
            aload 5 /* c */
            invokestatic org.testng.internal.ClassHelper.fileToClass:(Ljava/lang/String;)Ljava/lang/Class;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String c
        10: .line 1382
            iinc 6 1
      StackMap locals:
      StackMap stack:
        11: iload 6
            iload 7
            if_icmplt 8
        12: .line 1386
            aload 0 /* this */
            aload 4 /* classes */
            aload 4 /* classes */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.Class
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            invokevirtual org.testng.TestNG.setTestClasses:([Ljava/lang/Class;)V
        end local 4 // java.util.List classes
        end local 3 // java.lang.String[] strClasses
        13: .line 1389
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.outputDirectory:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setOutputDirectory:(Ljava/lang/String;)V
        14: .line 1391
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testNames:Ljava/lang/String;
            ifnull 16
        15: .line 1392
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testNames:Ljava/lang/String;
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual org.testng.TestNG.setTestNames:(Ljava/util/List;)V
        16: .line 1402
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.useDefaultListeners:Ljava/lang/String;
            ifnull 18
        17: .line 1403
            aload 0 /* this */
            ldc "true"
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.useDefaultListeners:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            invokevirtual org.testng.TestNG.setUseDefaultListeners:(Z)V
        18: .line 1406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.groups:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setGroups:(Ljava/lang/String;)V
        19: .line 1407
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.excludedGroups:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setExcludedGroups:(Ljava/lang/String;)V
        20: .line 1408
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testJar:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setTestJar:(Ljava/lang/String;)V
        21: .line 1409
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.xmlPathInJar:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setXmlPathInJar:(Ljava/lang/String;)V
        22: .line 1410
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.junit:Ljava/lang/Boolean;
            invokevirtual org.testng.TestNG.setJUnit:(Ljava/lang/Boolean;)V
        23: .line 1411
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.mixed:Ljava/lang/Boolean;
            invokevirtual org.testng.TestNG.setMixed:(Ljava/lang/Boolean;)V
        24: .line 1412
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.skipFailedInvocationCounts:Ljava/lang/Boolean;
            invokevirtual org.testng.TestNG.setSkipFailedInvocationCounts:(Ljava/lang/Boolean;)V
        25: .line 1413
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            ifnull 27
        26: .line 1414
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
            invokevirtual org.testng.TestNG.setParallel:(Lorg/testng/xml/XmlSuite$ParallelMode;)V
        27: .line 1416
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.configFailurePolicy:Ljava/lang/String;
            ifnull 29
        28: .line 1417
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.configFailurePolicy:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setConfigFailurePolicy:(Ljava/lang/String;)V
        29: .line 1419
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.threadCount:Ljava/lang/Integer;
            ifnull 31
        30: .line 1420
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.threadCount:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual org.testng.TestNG.setThreadCount:(I)V
        31: .line 1422
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.dataProviderThreadCount:Ljava/lang/Integer;
            ifnull 33
        32: .line 1423
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.dataProviderThreadCount:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual org.testng.TestNG.setDataProviderThreadCount:(I)V
        33: .line 1425
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.suiteName:Ljava/lang/String;
            ifnull 35
        34: .line 1426
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.suiteName:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setDefaultSuiteName:(Ljava/lang/String;)V
        35: .line 1428
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testName:Ljava/lang/String;
            ifnull 37
        36: .line 1429
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testName:Ljava/lang/String;
            invokevirtual org.testng.TestNG.setDefaultTestName:(Ljava/lang/String;)V
        37: .line 1431
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.listener:Ljava/lang/String;
            ifnull 51
        38: .line 1432
            ldc ";"
            astore 3 /* sep */
        start local 3 // java.lang.String sep
        39: .line 1433
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.listener:Ljava/lang/String;
            ldc ","
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 41
        40: .line 1434
            ldc ","
            astore 3 /* sep */
        41: .line 1436
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.listener:Ljava/lang/String;
            aload 3 /* sep */
            invokestatic org.testng.internal.Utils.split:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            astore 4 /* strs */
        start local 4 // java.lang.String[] strs
        42: .line 1437
            invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
            astore 5 /* classes */
        start local 5 // java.util.List classes
        43: .line 1439
            aload 4 /* strs */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 49
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String java.lang.String java.lang.String[] java.util.List top int int java.lang.String[]
      StackMap stack:
        44: aload 9
            iload 7
            aaload
            astore 6 /* cls */
        start local 6 // java.lang.String cls
        45: .line 1440
            aload 6 /* cls */
            invokestatic org.testng.internal.ClassHelper.fileToClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 10 /* clazz */
        start local 10 // java.lang.Class clazz
        46: .line 1441
            ldc Lorg/testng/ITestNGListener;
            aload 10 /* clazz */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 48
        47: .line 1442
            aload 5 /* classes */
            aload 10 /* clazz */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // java.lang.Class clazz
        end local 6 // java.lang.String cls
        48: .line 1439
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        49: iload 7
            iload 8
            if_icmplt 44
        50: .line 1446
            aload 0 /* this */
            aload 5 /* classes */
            invokevirtual org.testng.TestNG.setListenerClasses:(Ljava/util/List;)V
        end local 5 // java.util.List classes
        end local 4 // java.lang.String[] strs
        end local 3 // java.lang.String sep
        51: .line 1449
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.methodSelectors:Ljava/lang/String;
            ifnull 65
        52: .line 1450
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.methodSelectors:Ljava/lang/String;
            ldc ","
            invokestatic org.testng.internal.Utils.split:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* strs */
        start local 3 // java.lang.String[] strs
        53: .line 1451
            aload 3 /* strs */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 64
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        54: aload 7
            iload 5
            aaload
            astore 4 /* cls */
        start local 4 // java.lang.String cls
        55: .line 1452
            aload 4 /* cls */
            ldc ":"
            invokestatic org.testng.internal.Utils.split:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            astore 8 /* sel */
        start local 8 // java.lang.String[] sel
        56: .line 1454
            aload 8 /* sel */
            arraylength
            iconst_2
            if_icmpne 59
        57: .line 1455
            aload 0 /* this */
            aload 8 /* sel */
            iconst_0
            aaload
            aload 8 /* sel */
            iconst_1
            aaload
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            invokevirtual org.testng.TestNG.addMethodSelector:(Ljava/lang/String;I)V
        58: .line 1456
            goto 63
        59: .line 1457
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String java.lang.String[] java.lang.String int int java.lang.String[] java.lang.String[]
      StackMap stack:
            ldc "Method selector value was not in the format org.example.Selector:4"
            invokestatic org.testng.TestNG.error:(Ljava/lang/String;)V
        60: .line 1459
            goto 63
        61: .line 1460
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        62: .line 1461
            ldc "Method selector value was not in the format org.example.Selector:4"
            invokestatic org.testng.TestNG.error:(Ljava/lang/String;)V
        end local 8 // java.lang.String[] sel
        end local 4 // java.lang.String cls
        63: .line 1451
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        64: iload 5
            iload 6
            if_icmplt 54
        end local 3 // java.lang.String[] strs
        65: .line 1466
      StackMap locals: org.testng.TestNG org.testng.CommandLineArgs java.lang.String
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.objectFactory:Ljava/lang/String;
            ifnull 67
        66: .line 1467
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.objectFactory:Ljava/lang/String;
            invokestatic org.testng.internal.ClassHelper.fileToClass:(Ljava/lang/String;)Ljava/lang/Class;
            invokevirtual org.testng.TestNG.setObjectFactory:(Ljava/lang/Class;)V
        67: .line 1469
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testRunnerFactory:Ljava/lang/String;
            ifnull 71
        68: .line 1470
            aload 0 /* this */
        69: .line 1471
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.testRunnerFactory:Ljava/lang/String;
            invokestatic org.testng.internal.ClassHelper.fileToClass:(Ljava/lang/String;)Ljava/lang/Class;
        70: .line 1470
            invokevirtual org.testng.TestNG.setTestRunnerFactoryClass:(Ljava/lang/Class;)V
        71: .line 1474
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.reporter:Ljava/lang/String;
            ifnull 74
        72: .line 1475
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.reporter:Ljava/lang/String;
            invokestatic org.testng.ReporterConfig.deserialize:(Ljava/lang/String;)Lorg/testng/ReporterConfig;
            astore 3 /* reporterConfig */
        start local 3 // org.testng.ReporterConfig reporterConfig
        73: .line 1476
            aload 0 /* this */
            aload 3 /* reporterConfig */
            invokevirtual org.testng.TestNG.addReporter:(Lorg/testng/ReporterConfig;)V
        end local 3 // org.testng.ReporterConfig reporterConfig
        74: .line 1479
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.commandLineMethods:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 76
        75: .line 1480
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.commandLineMethods:Ljava/util/List;
            putfield org.testng.TestNG.m_commandLineMethods:Ljava/util/List;
        76: .line 1483
      StackMap locals:
      StackMap stack:
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.suiteFiles:Ljava/util/List;
            ifnull 78
        77: .line 1484
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.suiteFiles:Ljava/util/List;
            invokevirtual org.testng.TestNG.setTestSuites:(Ljava/util/List;)V
        78: .line 1487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.suiteThreadPoolSize:Ljava/lang/Integer;
            invokevirtual org.testng.TestNG.setSuiteThreadPoolSize:(Ljava/lang/Integer;)V
        79: .line 1488
            aload 0 /* this */
            aload 1 /* cla */
            getfield org.testng.CommandLineArgs.randomizeSuites:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual org.testng.TestNG.setRandomizeSuites:(Z)V
        80: .line 1489
            return
        end local 2 // java.lang.String testClasses
        end local 1 // org.testng.CommandLineArgs cla
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   81     0            this  Lorg/testng/TestNG;
            0   81     1             cla  Lorg/testng/CommandLineArgs;
            4   81     2     testClasses  Ljava/lang/String;
            6   13     3      strClasses  [Ljava/lang/String;
            7   13     4         classes  Ljava/util/List<Ljava/lang/Class;>;
            9   10     5               c  Ljava/lang/String;
           39   51     3             sep  Ljava/lang/String;
           42   51     4            strs  [Ljava/lang/String;
           43   51     5         classes  Ljava/util/List<Ljava/lang/Class<+Lorg/testng/ITestNGListener;>;>;
           45   48     6             cls  Ljava/lang/String;
           46   48    10           clazz  Ljava/lang/Class<*>;
           53   65     3            strs  [Ljava/lang/String;
           55   63     4             cls  Ljava/lang/String;
           56   63     8             sel  [Ljava/lang/String;
           73   74     3  reporterConfig  Lorg/testng/ReporterConfig;
      Exception table:
        from    to  target  type
          56    60      61  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      cla   

  public void setSuiteThreadPoolSize(java.lang.Integer);
    descriptor: (Ljava/lang/Integer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Integer suiteThreadPoolSize
         0: .line 1492
            aload 0 /* this */
            aload 1 /* suiteThreadPoolSize */
            putfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
         1: .line 1493
            return
        end local 1 // java.lang.Integer suiteThreadPoolSize
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lorg/testng/TestNG;
            0    2     1  suiteThreadPoolSize  Ljava/lang/Integer;
    MethodParameters:
                     Name  Flags
      suiteThreadPoolSize  

  public java.lang.Integer getSuiteThreadPoolSize();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1496
            aload 0 /* this */
            getfield org.testng.TestNG.m_suiteThreadPoolSize:Ljava/lang/Integer;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public void setRandomizeSuites(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean randomizeSuites
         0: .line 1500
            aload 0 /* this */
            iload 1 /* randomizeSuites */
            putfield org.testng.TestNG.m_randomizeSuites:Z
         1: .line 1501
            return
        end local 1 // boolean randomizeSuites
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/testng/TestNG;
            0    2     1  randomizeSuites  Z
    MethodParameters:
                 Name  Flags
      randomizeSuites  

  public void setSourcePath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String path
         0: .line 1509
            return
        end local 1 // java.lang.String path
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
            0    1     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public void configure(java.util.Map);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=19, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.Map cmdLineArgs
         0: .line 1521
            new org.testng.CommandLineArgs
            dup
            invokespecial org.testng.CommandLineArgs.<init>:()V
            astore 2 /* result */
        start local 2 // org.testng.CommandLineArgs result
         1: .line 1523
            aload 1 /* cmdLineArgs */
            ldc "-log"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 3 /* verbose */
        start local 3 // java.lang.Integer verbose
         2: .line 1524
            aload 3 /* verbose */
            ifnull 4
         3: .line 1525
            aload 2 /* result */
            aload 3 /* verbose */
            putfield org.testng.CommandLineArgs.verbose:Ljava/lang/Integer;
         4: .line 1527
      StackMap locals: org.testng.CommandLineArgs java.lang.Integer
      StackMap stack:
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-d"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.outputDirectory:Ljava/lang/String;
         5: .line 1529
            aload 1 /* cmdLineArgs */
            ldc "-testclass"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* testClasses */
        start local 4 // java.lang.String testClasses
         6: .line 1530
            aload 4 /* testClasses */
            ifnull 8
         7: .line 1531
            aload 2 /* result */
            aload 4 /* testClasses */
            putfield org.testng.CommandLineArgs.testClass:Ljava/lang/String;
         8: .line 1534
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-testnames"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* testNames */
        start local 5 // java.lang.String testNames
         9: .line 1535
            aload 5 /* testNames */
            ifnull 11
        10: .line 1536
            aload 2 /* result */
            aload 5 /* testNames */
            putfield org.testng.CommandLineArgs.testNames:Ljava/lang/String;
        11: .line 1539
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-usedefaultlisteners"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* useDefaultListeners */
        start local 6 // java.lang.String useDefaultListeners
        12: .line 1540
            aload 6 /* useDefaultListeners */
            ifnull 14
        13: .line 1541
            aload 2 /* result */
            aload 6 /* useDefaultListeners */
            putfield org.testng.CommandLineArgs.useDefaultListeners:Ljava/lang/String;
        14: .line 1544
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-groups"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.groups:Ljava/lang/String;
        15: .line 1545
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-excludegroups"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.excludedGroups:Ljava/lang/String;
        16: .line 1546
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-testjar"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.testJar:Ljava/lang/String;
        17: .line 1547
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-xmlpathinjar"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.xmlPathInJar:Ljava/lang/String;
        18: .line 1548
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-junit"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            putfield org.testng.CommandLineArgs.junit:Ljava/lang/Boolean;
        19: .line 1549
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
            ldc "-mixed"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            putfield org.testng.CommandLineArgs.mixed:Ljava/lang/Boolean;
        20: .line 1550
            aload 2 /* result */
            aload 1 /* cmdLineArgs */
        21: .line 1551
            ldc "-skipfailedinvocationcounts"
        22: .line 1550
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            putfield org.testng.CommandLineArgs.skipFailedInvocationCounts:Ljava/lang/Boolean;
        23: .line 1552
            aload 1 /* cmdLineArgs */
            ldc "-parallel"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* parallelMode */
        start local 7 // java.lang.String parallelMode
        24: .line 1553
            aload 7 /* parallelMode */
            ifnull 26
        25: .line 1554
            aload 2 /* result */
            aload 7 /* parallelMode */
            invokestatic org.testng.xml.XmlSuite$ParallelMode.getValidParallel:(Ljava/lang/String;)Lorg/testng/xml/XmlSuite$ParallelMode;
            putfield org.testng.CommandLineArgs.parallelMode:Lorg/testng/xml/XmlSuite$ParallelMode;
        26: .line 1557
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-threadcount"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* threadCount */
        start local 8 // java.lang.String threadCount
        27: .line 1558
            aload 8 /* threadCount */
            ifnull 29
        28: .line 1559
            aload 2 /* result */
            aload 8 /* threadCount */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield org.testng.CommandLineArgs.threadCount:Ljava/lang/Integer;
        29: .line 1563
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-dataproviderthreadcount"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 9 /* dptc */
        start local 9 // java.lang.Integer dptc
        30: .line 1564
            aload 9 /* dptc */
            ifnull 32
        31: .line 1565
            aload 2 /* result */
            aload 9 /* dptc */
            putfield org.testng.CommandLineArgs.dataProviderThreadCount:Ljava/lang/Integer;
        32: .line 1567
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-suitename"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* defaultSuiteName */
        start local 10 // java.lang.String defaultSuiteName
        33: .line 1568
            aload 10 /* defaultSuiteName */
            ifnull 35
        34: .line 1569
            aload 2 /* result */
            aload 10 /* defaultSuiteName */
            putfield org.testng.CommandLineArgs.suiteName:Ljava/lang/String;
        35: .line 1572
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-testname"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 11 /* defaultTestName */
        start local 11 // java.lang.String defaultTestName
        36: .line 1573
            aload 11 /* defaultTestName */
            ifnull 38
        37: .line 1574
            aload 2 /* result */
            aload 11 /* defaultTestName */
            putfield org.testng.CommandLineArgs.testName:Ljava/lang/String;
        38: .line 1577
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-listener"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 12 /* listeners */
        start local 12 // java.lang.Object listeners
        39: .line 1578
            aload 12 /* listeners */
            instanceof java.util.List
            ifeq 42
        40: .line 1579
            aload 2 /* result */
            aload 12 /* listeners */
            checkcast java.util.List
            ldc ","
            invokestatic org.testng.internal.Utils.join:(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String;
            putfield org.testng.CommandLineArgs.listener:Ljava/lang/String;
        41: .line 1580
            goto 43
        42: .line 1581
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* result */
            aload 12 /* listeners */
            checkcast java.lang.String
            putfield org.testng.CommandLineArgs.listener:Ljava/lang/String;
        43: .line 1584
      StackMap locals:
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-methodselectors"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 13 /* ms */
        start local 13 // java.lang.String ms
        44: .line 1585
            aload 13 /* ms */
            ifnull 46
        45: .line 1586
            aload 2 /* result */
            aload 13 /* ms */
            putfield org.testng.CommandLineArgs.methodSelectors:Ljava/lang/String;
        46: .line 1589
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-objectfactory"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 14 /* objectFactory */
        start local 14 // java.lang.String objectFactory
        47: .line 1590
            aload 14 /* objectFactory */
            ifnull 49
        48: .line 1591
            aload 2 /* result */
            aload 14 /* objectFactory */
            putfield org.testng.CommandLineArgs.objectFactory:Ljava/lang/String;
        49: .line 1594
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-testrunfactory"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 15 /* runnerFactory */
        start local 15 // java.lang.String runnerFactory
        50: .line 1595
            aload 15 /* runnerFactory */
            ifnull 52
        51: .line 1596
            aload 2 /* result */
            aload 15 /* runnerFactory */
            putfield org.testng.CommandLineArgs.testRunnerFactory:Ljava/lang/String;
        52: .line 1599
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-reporter"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 16 /* reporterConfigs */
        start local 16 // java.lang.String reporterConfigs
        53: .line 1600
            aload 16 /* reporterConfigs */
            ifnull 55
        54: .line 1601
            aload 2 /* result */
            aload 16 /* reporterConfigs */
            putfield org.testng.CommandLineArgs.reporter:Ljava/lang/String;
        55: .line 1604
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-configfailurepolicy"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 17 /* failurePolicy */
        start local 17 // java.lang.String failurePolicy
        56: .line 1605
            aload 17 /* failurePolicy */
            ifnull 58
        57: .line 1606
            aload 2 /* result */
            aload 17 /* failurePolicy */
            putfield org.testng.CommandLineArgs.configFailurePolicy:Ljava/lang/String;
        58: .line 1609
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cmdLineArgs */
            ldc "-suitethreadpoolsize"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 18 /* suiteThreadPoolSize */
        start local 18 // java.lang.Object suiteThreadPoolSize
        59: .line 1610
            aload 18 /* suiteThreadPoolSize */
            ifnull 64
        60: .line 1611
            aload 18 /* suiteThreadPoolSize */
            instanceof java.lang.String
            ifeq 62
        61: .line 1612
            aload 2 /* result */
            aload 18 /* suiteThreadPoolSize */
            checkcast java.lang.String
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield org.testng.CommandLineArgs.suiteThreadPoolSize:Ljava/lang/Integer;
        62: .line 1614
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 18 /* suiteThreadPoolSize */
            instanceof java.lang.Integer
            ifeq 64
        63: .line 1615
            aload 2 /* result */
            aload 18 /* suiteThreadPoolSize */
            checkcast java.lang.Integer
            putfield org.testng.CommandLineArgs.suiteThreadPoolSize:Ljava/lang/Integer;
        64: .line 1619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* result */
            invokevirtual org.testng.TestNG.configure:(Lorg/testng/CommandLineArgs;)V
        65: .line 1620
            return
        end local 18 // java.lang.Object suiteThreadPoolSize
        end local 17 // java.lang.String failurePolicy
        end local 16 // java.lang.String reporterConfigs
        end local 15 // java.lang.String runnerFactory
        end local 14 // java.lang.String objectFactory
        end local 13 // java.lang.String ms
        end local 12 // java.lang.Object listeners
        end local 11 // java.lang.String defaultTestName
        end local 10 // java.lang.String defaultSuiteName
        end local 9 // java.lang.Integer dptc
        end local 8 // java.lang.String threadCount
        end local 7 // java.lang.String parallelMode
        end local 6 // java.lang.String useDefaultListeners
        end local 5 // java.lang.String testNames
        end local 4 // java.lang.String testClasses
        end local 3 // java.lang.Integer verbose
        end local 2 // org.testng.CommandLineArgs result
        end local 1 // java.util.Map cmdLineArgs
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   66     0                 this  Lorg/testng/TestNG;
            0   66     1          cmdLineArgs  Ljava/util/Map;
            1   66     2               result  Lorg/testng/CommandLineArgs;
            2   66     3              verbose  Ljava/lang/Integer;
            6   66     4          testClasses  Ljava/lang/String;
            9   66     5            testNames  Ljava/lang/String;
           12   66     6  useDefaultListeners  Ljava/lang/String;
           24   66     7         parallelMode  Ljava/lang/String;
           27   66     8          threadCount  Ljava/lang/String;
           30   66     9                 dptc  Ljava/lang/Integer;
           33   66    10     defaultSuiteName  Ljava/lang/String;
           36   66    11      defaultTestName  Ljava/lang/String;
           39   66    12            listeners  Ljava/lang/Object;
           44   66    13                   ms  Ljava/lang/String;
           47   66    14        objectFactory  Ljava/lang/String;
           50   66    15        runnerFactory  Ljava/lang/String;
           53   66    16      reporterConfigs  Ljava/lang/String;
           56   66    17        failurePolicy  Ljava/lang/String;
           59   66    18  suiteThreadPoolSize  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      cmdLineArgs  

  public void setTestNames(java.util.List<java.lang.String>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.util.List testNames
         0: .line 1626
            aload 0 /* this */
            aload 1 /* testNames */
            putfield org.testng.TestNG.m_testNames:Ljava/util/List;
         1: .line 1627
            return
        end local 1 // java.util.List testNames
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/testng/TestNG;
            0    2     1  testNames  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
           Name  Flags
      testNames  

  public void setSkipFailedInvocationCounts(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Boolean skip
         0: .line 1630
            aload 0 /* this */
            aload 1 /* skip */
            putfield org.testng.TestNG.m_skipFailedInvocationCounts:Ljava/lang/Boolean;
         1: .line 1631
            return
        end local 1 // java.lang.Boolean skip
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1  skip  Ljava/lang/Boolean;
    MethodParameters:
      Name  Flags
      skip  

  private void addReporter(org.testng.ReporterConfig);
    descriptor: (Lorg/testng/ReporterConfig;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ReporterConfig reporterConfig
         0: .line 1634
            aload 1 /* reporterConfig */
            invokevirtual org.testng.ReporterConfig.newReporterInstance:()Lorg/testng/IReporter;
            astore 2 /* instance */
        start local 2 // org.testng.IReporter instance
         1: .line 1635
            aload 2 /* instance */
            ifnull 4
         2: .line 1636
            aload 0 /* this */
            aload 2 /* instance */
            invokevirtual org.testng.TestNG.addListener:(Lorg/testng/IReporter;)V
         3: .line 1637
            goto 5
         4: .line 1638
      StackMap locals: org.testng.IReporter
      StackMap stack:
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Could not find reporter class : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* reporterConfig */
            invokevirtual org.testng.ReporterConfig.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.testng.log4testng.Logger.warn:(Ljava/lang/Object;)V
         5: .line 1640
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.testng.IReporter instance
        end local 1 // org.testng.ReporterConfig reporterConfig
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/testng/TestNG;
            0    6     1  reporterConfig  Lorg/testng/ReporterConfig;
            1    6     2        instance  Lorg/testng/IReporter;
    MethodParameters:
                Name  Flags
      reporterConfig  

  public void setJUnit(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Boolean isJUnit
         0: .line 1648
            aload 0 /* this */
            aload 1 /* isJUnit */
            putfield org.testng.TestNG.m_isJUnit:Ljava/lang/Boolean;
         1: .line 1649
            return
        end local 1 // java.lang.Boolean isJUnit
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/testng/TestNG;
            0    2     1  isJUnit  Ljava/lang/Boolean;
    MethodParameters:
         Name  Flags
      isJUnit  

  public void setMixed(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.Boolean isMixed
         0: .line 1655
            aload 1 /* isMixed */
            ifnonnull 2
         1: .line 1656
            return
         2: .line 1658
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* isMixed */
            putfield org.testng.TestNG.m_isMixed:Ljava/lang/Boolean;
         3: .line 1659
            return
        end local 1 // java.lang.Boolean isMixed
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/testng/TestNG;
            0    4     1  isMixed  Ljava/lang/Boolean;
    MethodParameters:
         Name  Flags
      isMixed  

  public static void setTestNGVersion();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 1667
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            ldc "setTestNGVersion has been deprecated."
            invokevirtual org.testng.log4testng.Logger.info:(Ljava/lang/Object;)V
         1: .line 1668
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static boolean isJdk14();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1677
            iconst_0
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  protected static void validateCommandLineParameters(org.testng.CommandLineArgs);
    descriptor: (Lorg/testng/CommandLineArgs;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // org.testng.CommandLineArgs args
         0: .line 1684
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.testClass:Ljava/lang/String;
            astore 1 /* testClasses */
        start local 1 // java.lang.String testClasses
         1: .line 1685
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.suiteFiles:Ljava/util/List;
            astore 2 /* testNgXml */
        start local 2 // java.util.List testNgXml
         2: .line 1686
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.testJar:Ljava/lang/String;
            astore 3 /* testJar */
        start local 3 // java.lang.String testJar
         3: .line 1687
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.commandLineMethods:Ljava/util/List;
            astore 4 /* methods */
        start local 4 // java.util.List methods
         4: .line 1689
            aload 1 /* testClasses */
            ifnonnull 8
            aload 3 /* testJar */
            ifnonnull 8
         5: .line 1690
            aload 2 /* testNgXml */
            ifnull 6
            aload 2 /* testNgXml */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         6: .line 1691
      StackMap locals: org.testng.CommandLineArgs java.lang.String java.util.List java.lang.String java.util.List
      StackMap stack:
            aload 4 /* methods */
            ifnull 7
            aload 4 /* methods */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         7: .line 1692
      StackMap locals:
      StackMap stack:
            new com.beust.jcommander.ParameterException
            dup
            ldc "You need to specify at least one testng.xml, one class or one method"
            invokespecial com.beust.jcommander.ParameterException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1696
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.groups:Ljava/lang/String;
            astore 5 /* groups */
        start local 5 // java.lang.String groups
         9: .line 1697
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.excludedGroups:Ljava/lang/String;
            astore 6 /* excludedGroups */
        start local 6 // java.lang.String excludedGroups
        10: .line 1699
            aload 3 /* testJar */
            ifnonnull 15
        11: .line 1700
            aload 5 /* groups */
            ifnonnull 12
            aload 6 /* excludedGroups */
            ifnull 15
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
        12: aload 1 /* testClasses */
            ifnonnull 15
        13: .line 1701
            aload 2 /* testNgXml */
            ifnull 14
            aload 2 /* testNgXml */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 15
        14: .line 1702
      StackMap locals:
      StackMap stack:
            new com.beust.jcommander.ParameterException
            dup
            ldc "Groups option should be used with testclass option"
            invokespecial com.beust.jcommander.ParameterException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 1705
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.junit:Ljava/lang/Boolean;
            astore 7 /* junit */
        start local 7 // java.lang.Boolean junit
        16: .line 1706
            aload 0 /* args */
            getfield org.testng.CommandLineArgs.mixed:Ljava/lang/Boolean;
            astore 8 /* mixed */
        start local 8 // java.lang.Boolean mixed
        17: .line 1707
            aload 7 /* junit */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 19
            aload 8 /* mixed */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 19
        18: .line 1708
            new com.beust.jcommander.ParameterException
            dup
            ldc "-mixed can't be combined with -junit"
            invokespecial com.beust.jcommander.ParameterException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 1711
      StackMap locals: java.lang.Boolean java.lang.Boolean
      StackMap stack:
            return
        end local 8 // java.lang.Boolean mixed
        end local 7 // java.lang.Boolean junit
        end local 6 // java.lang.String excludedGroups
        end local 5 // java.lang.String groups
        end local 4 // java.util.List methods
        end local 3 // java.lang.String testJar
        end local 2 // java.util.List testNgXml
        end local 1 // java.lang.String testClasses
        end local 0 // org.testng.CommandLineArgs args
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   20     0            args  Lorg/testng/CommandLineArgs;
            1   20     1     testClasses  Ljava/lang/String;
            2   20     2       testNgXml  Ljava/util/List<Ljava/lang/String;>;
            3   20     3         testJar  Ljava/lang/String;
            4   20     4         methods  Ljava/util/List<Ljava/lang/String;>;
            9   20     5          groups  Ljava/lang/String;
           10   20     6  excludedGroups  Ljava/lang/String;
           16   20     7           junit  Ljava/lang/Boolean;
           17   20     8           mixed  Ljava/lang/Boolean;
    MethodParameters:
      Name  Flags
      args  

  public boolean hasFailure();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1717
            aload 0 /* this */
            getfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
            invokevirtual org.testng.internal.ExitCode.hasFailure:()Z
            ireturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public boolean hasFailureWithinSuccessPercentage();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1724
            aload 0 /* this */
            getfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
            invokevirtual org.testng.internal.ExitCode.hasFailureWithinSuccessPercentage:()Z
            ireturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public boolean hasSkip();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1731
            aload 0 /* this */
            getfield org.testng.TestNG.exitCode:Lorg/testng/internal/ExitCode;
            invokevirtual org.testng.internal.ExitCode.hasSkip:()Z
            ireturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  static void exitWithError(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String msg
         0: .line 1735
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 0 /* msg */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 1736
            invokestatic org.testng.TestNG.usage:()V
         2: .line 1737
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         3: .line 1738
            return
        end local 0 // java.lang.String msg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  public java.lang.String getOutputDirectory();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1741
            aload 0 /* this */
            getfield org.testng.TestNG.m_outputDir:Ljava/lang/String;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public org.testng.IAnnotationTransformer getAnnotationTransformer();
    descriptor: ()Lorg/testng/IAnnotationTransformer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1745
            aload 0 /* this */
            getfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public void setAnnotationTransformer(org.testng.IAnnotationTransformer);
    descriptor: (Lorg/testng/IAnnotationTransformer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IAnnotationTransformer t
         0: .line 1755
            aload 0 /* this */
            getfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
            aload 0 /* this */
            getfield org.testng.TestNG.m_defaultAnnoProcessor:Lorg/testng/IAnnotationTransformer;
            if_acmpeq 2
            aload 0 /* this */
            getfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
            aload 1 /* t */
            if_acmpeq 2
         1: .line 1756
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            ldc "AnnotationTransformer already set"
            invokevirtual org.testng.log4testng.Logger.warn:(Ljava/lang/Object;)V
         2: .line 1758
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* t */
            putfield org.testng.TestNG.m_annotationTransformer:Lorg/testng/IAnnotationTransformer;
         3: .line 1759
            return
        end local 1 // org.testng.IAnnotationTransformer t
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/testng/TestNG;
            0    4     1     t  Lorg/testng/IAnnotationTransformer;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      t     

  public java.lang.String getDefaultSuiteName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1765
            aload 0 /* this */
            getfield org.testng.TestNG.m_defaultSuiteName:Ljava/lang/String;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public void setDefaultSuiteName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String defaultSuiteName
         0: .line 1772
            aload 0 /* this */
            aload 1 /* defaultSuiteName */
            putfield org.testng.TestNG.m_defaultSuiteName:Ljava/lang/String;
         1: .line 1773
            return
        end local 1 // java.lang.String defaultSuiteName
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/testng/TestNG;
            0    2     1  defaultSuiteName  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      defaultSuiteName  

  public java.lang.String getDefaultTestName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1779
            aload 0 /* this */
            getfield org.testng.TestNG.m_defaultTestName:Ljava/lang/String;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public void setDefaultTestName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String defaultTestName
         0: .line 1786
            aload 0 /* this */
            aload 1 /* defaultTestName */
            putfield org.testng.TestNG.m_defaultTestName:Ljava/lang/String;
         1: .line 1787
            return
        end local 1 // java.lang.String defaultTestName
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/testng/TestNG;
            0    2     1  defaultTestName  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      defaultTestName  

  public void setConfigFailurePolicy(org.testng.xml.XmlSuite$FailurePolicy);
    descriptor: (Lorg/testng/xml/XmlSuite$FailurePolicy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.xml.XmlSuite$FailurePolicy failurePolicy
         0: .line 1796
            aload 0 /* this */
            aload 1 /* failurePolicy */
            putfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
         1: .line 1797
            return
        end local 1 // org.testng.xml.XmlSuite$FailurePolicy failurePolicy
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/testng/TestNG;
            0    2     1  failurePolicy  Lorg/testng/xml/XmlSuite$FailurePolicy;
    MethodParameters:
               Name  Flags
      failurePolicy  

  public void setConfigFailurePolicy(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.String failurePolicy
         0: .line 1804
            aload 0 /* this */
            aload 1 /* failurePolicy */
            invokestatic org.testng.xml.XmlSuite$FailurePolicy.getValidPolicy:(Ljava/lang/String;)Lorg/testng/xml/XmlSuite$FailurePolicy;
            invokevirtual org.testng.TestNG.setConfigFailurePolicy:(Lorg/testng/xml/XmlSuite$FailurePolicy;)V
         1: .line 1805
            return
        end local 1 // java.lang.String failurePolicy
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/testng/TestNG;
            0    2     1  failurePolicy  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
               Name  Flags
      failurePolicy  

  public org.testng.xml.XmlSuite$FailurePolicy getConfigFailurePolicy();
    descriptor: ()Lorg/testng/xml/XmlSuite$FailurePolicy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1812
            aload 0 /* this */
            getfield org.testng.TestNG.m_configFailurePolicy:Lorg/testng/xml/XmlSuite$FailurePolicy;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public static org.testng.TestNG getDefault();
    descriptor: ()Lorg/testng/TestNG;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1821
            getstatic org.testng.TestNG.m_instance:Lorg/testng/TestNG;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  private void setConfigurable(org.testng.IConfigurable);
    descriptor: (Lorg/testng/IConfigurable;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IConfigurable c
         0: .line 1904
            aload 0 /* this */
            getfield org.testng.TestNG.m_configurable:Lorg/testng/IConfigurable;
            ifnull 2
            aload 0 /* this */
            getfield org.testng.TestNG.m_configurable:Lorg/testng/IConfigurable;
            aload 1 /* c */
            if_acmpeq 2
         1: .line 1905
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            ldc "Configurable already set"
            invokevirtual org.testng.log4testng.Logger.warn:(Ljava/lang/Object;)V
         2: .line 1907
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            putfield org.testng.TestNG.m_configurable:Lorg/testng/IConfigurable;
         3: .line 1908
            return
        end local 1 // org.testng.IConfigurable c
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/testng/TestNG;
            0    4     1     c  Lorg/testng/IConfigurable;
    MethodParameters:
      Name  Flags
      c     

  private void setHookable(org.testng.IHookable);
    descriptor: (Lorg/testng/IHookable;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IHookable h
         0: .line 1912
            aload 0 /* this */
            getfield org.testng.TestNG.m_hookable:Lorg/testng/IHookable;
            ifnull 2
            aload 0 /* this */
            getfield org.testng.TestNG.m_hookable:Lorg/testng/IHookable;
            aload 1 /* h */
            if_acmpeq 2
         1: .line 1913
            getstatic org.testng.TestNG.LOGGER:Lorg/testng/log4testng/Logger;
            ldc "Hookable already set"
            invokevirtual org.testng.log4testng.Logger.warn:(Ljava/lang/Object;)V
         2: .line 1915
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* h */
            putfield org.testng.TestNG.m_hookable:Lorg/testng/IHookable;
         3: .line 1916
            return
        end local 1 // org.testng.IHookable h
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/testng/TestNG;
            0    4     1     h  Lorg/testng/IHookable;
    MethodParameters:
      Name  Flags
      h     

  public void setMethodInterceptor(org.testng.IMethodInterceptor);
    descriptor: (Lorg/testng/IMethodInterceptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.IMethodInterceptor methodInterceptor
         0: .line 1919
            aload 0 /* this */
            getfield org.testng.TestNG.m_methodInterceptors:Ljava/util/List;
            aload 1 /* methodInterceptor */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 1920
            return
        end local 1 // org.testng.IMethodInterceptor methodInterceptor
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/testng/TestNG;
            0    2     1  methodInterceptor  Lorg/testng/IMethodInterceptor;
    MethodParameters:
                   Name  Flags
      methodInterceptor  

  public void setDataProviderThreadCount(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // int count
         0: .line 1923
            aload 0 /* this */
            iload 1 /* count */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield org.testng.TestNG.m_dataProviderThreadCount:Ljava/lang/Integer;
         1: .line 1924
            return
        end local 1 // int count
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/testng/TestNG;
            0    2     1  count  I
    MethodParameters:
       Name  Flags
      count  

  public void addClassLoader(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.lang.ClassLoader loader
         0: .line 1928
            aload 1 /* loader */
            ifnull 2
         1: .line 1929
            aload 1 /* loader */
            invokestatic org.testng.internal.ClassHelper.addClassLoader:(Ljava/lang/ClassLoader;)V
         2: .line 1931
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.ClassLoader loader
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/testng/TestNG;
            0    3     1  loader  Ljava/lang/ClassLoader;
    MethodParameters:
        Name  Flags
      loader  final

  public void setPreserveOrder(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean b
         0: .line 1934
            aload 0 /* this */
            iload 1 /* b */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_preserveOrder:Ljava/lang/Boolean;
         1: .line 1935
            return
        end local 1 // boolean b
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1     b  Z
    MethodParameters:
      Name  Flags
      b     

  protected long getStart();
    descriptor: ()J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1938
            aload 0 /* this */
            getfield org.testng.TestNG.m_start:J
            lreturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  protected long getEnd();
    descriptor: ()J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1942
            aload 0 /* this */
            getfield org.testng.TestNG.m_end:J
            lreturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;

  public void setGroupByInstances(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // boolean b
         0: .line 1946
            aload 0 /* this */
            iload 1 /* b */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.testng.TestNG.m_groupByInstances:Ljava/lang/Boolean;
         1: .line 1947
            return
        end local 1 // boolean b
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1     b  Z
    MethodParameters:
      Name  Flags
      b     

  public void setServiceLoaderClassLoader(java.net.URLClassLoader);
    descriptor: (Ljava/net/URLClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // java.net.URLClassLoader ucl
         0: .line 1960
            aload 0 /* this */
            aload 1 /* ucl */
            putfield org.testng.TestNG.m_serviceLoaderClassLoader:Ljava/net/URLClassLoader;
         1: .line 1961
            return
        end local 1 // java.net.URLClassLoader ucl
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/testng/TestNG;
            0    2     1   ucl  Ljava/net/URLClassLoader;
    MethodParameters:
      Name  Flags
      ucl   

  private void addServiceLoaderListener(org.testng.ITestNGListener);
    descriptor: (Lorg/testng/ITestNGListener;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.testng.TestNG this
        start local 1 // org.testng.ITestNGListener l
         0: .line 1967
            aload 0 /* this */
            getfield org.testng.TestNG.serviceLoaderListeners:Ljava/util/Map;
            aload 1 /* l */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 1968
            aload 0 /* this */
            getfield org.testng.TestNG.serviceLoaderListeners:Ljava/util/Map;
            aload 1 /* l */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* l */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1970
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.testng.ITestNGListener l
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/testng/TestNG;
            0    3     1     l  Lorg/testng/ITestNGListener;
    MethodParameters:
      Name  Flags
      l     

  public java.util.List<org.testng.ITestNGListener> getServiceLoaderListeners();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.testng.TestNG this
         0: .line 1976
            aload 0 /* this */
            getfield org.testng.TestNG.serviceLoaderListeners:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokestatic org.testng.collections.Lists.newArrayList:(Ljava/util/Collection;)Ljava/util/List;
            areturn
        end local 0 // org.testng.TestNG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/testng/TestNG;
    Signature: ()Ljava/util/List<Lorg/testng/ITestNGListener;>;
}
SourceFile: "TestNG.java"
NestMembers:
  org.testng.TestNG$ExitCodeListener
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public ExitCodeListener = org.testng.TestNG$ExitCodeListener of org.testng.TestNG
  public final FailurePolicy = org.testng.xml.XmlSuite$FailurePolicy of org.testng.xml.XmlSuite
  public final ParallelMode = org.testng.xml.XmlSuite$ParallelMode of org.testng.xml.XmlSuite