class org.junit.jupiter.engine.discovery.ClassSelectorResolver implements org.junit.platform.engine.support.discovery.SelectorResolver
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.junit.jupiter.engine.discovery.ClassSelectorResolver
  super_class: java.lang.Object
{
  private static final org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests isTestClassWithTests;
    descriptor: Lorg/junit/jupiter/engine/discovery/predicates/IsTestClassWithTests;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass isNestedTestClass;
    descriptor: Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final java.util.function.Predicate<java.lang.String> classNameFilter;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Ljava/lang/String;>;

  private final org.junit.jupiter.engine.config.JupiterConfiguration configuration;
    descriptor: Lorg/junit/jupiter/engine/config/JupiterConfiguration;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 53
            new org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests
            dup
            invokespecial org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests.<init>:()V
            putstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isTestClassWithTests:Lorg/junit/jupiter/engine/discovery/predicates/IsTestClassWithTests;
         1: .line 54
            new org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass
            dup
            invokespecial org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass.<init>:()V
            putstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isNestedTestClass:Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.util.function.Predicate<java.lang.String>, org.junit.jupiter.engine.config.JupiterConfiguration);
    descriptor: (Ljava/util/function/Predicate;Lorg/junit/jupiter/engine/config/JupiterConfiguration;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // java.util.function.Predicate classNameFilter
        start local 2 // org.junit.jupiter.engine.config.JupiterConfiguration configuration
         0: .line 59
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 0 /* this */
            aload 1 /* classNameFilter */
            putfield org.junit.jupiter.engine.discovery.ClassSelectorResolver.classNameFilter:Ljava/util/function/Predicate;
         2: .line 61
            aload 0 /* this */
            aload 2 /* configuration */
            putfield org.junit.jupiter.engine.discovery.ClassSelectorResolver.configuration:Lorg/junit/jupiter/engine/config/JupiterConfiguration;
         3: .line 62
            return
        end local 2 // org.junit.jupiter.engine.config.JupiterConfiguration configuration
        end local 1 // java.util.function.Predicate classNameFilter
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1  classNameFilter  Ljava/util/function/Predicate<Ljava/lang/String;>;
            0    4     2    configuration  Lorg/junit/jupiter/engine/config/JupiterConfiguration;
    Signature: (Ljava/util/function/Predicate<Ljava/lang/String;>;Lorg/junit/jupiter/engine/config/JupiterConfiguration;)V
    MethodParameters:
                 Name  Flags
      classNameFilter  
      configuration    

  public org.junit.platform.engine.support.discovery.SelectorResolver$Resolution resolve(org.junit.platform.engine.discovery.ClassSelector, org.junit.platform.engine.support.discovery.SelectorResolver$Context);
    descriptor: (Lorg/junit/platform/engine/discovery/ClassSelector;Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.platform.engine.discovery.ClassSelector selector
        start local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
         0: .line 66
            aload 1 /* selector */
            invokevirtual org.junit.platform.engine.discovery.ClassSelector.getJavaClass:()Ljava/lang/Class;
            astore 3 /* testClass */
        start local 3 // java.lang.Class testClass
         1: .line 67
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isTestClassWithTests:Lorg/junit/jupiter/engine/discovery/predicates/IsTestClassWithTests;
            aload 3 /* testClass */
            invokevirtual org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests.test:(Ljava/lang/Class;)Z
            ifeq 6
         2: .line 69
            aload 0 /* this */
            getfield org.junit.jupiter.engine.discovery.ClassSelectorResolver.classNameFilter:Ljava/util/function/Predicate;
            aload 3 /* testClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 10
         3: .line 70
            aload 0 /* this */
         4: .line 71
            aload 2 /* context */
            aload 0 /* this */
            aload 3 /* testClass */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/lang/Class;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$0(Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional; (7)
                  (Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
            invokeinterface org.junit.platform.engine.support.discovery.SelectorResolver$Context.addToParent:(Ljava/util/function/Function;)Ljava/util/Optional;
         5: .line 70
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.toResolution:(Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
         6: .line 74
      StackMap locals: java.lang.Class
      StackMap stack:
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isNestedTestClass:Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
            aload 3 /* testClass */
            invokevirtual org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass.test:(Ljava/lang/Class;)Z
            ifeq 10
         7: .line 75
            aload 0 /* this */
            aload 2 /* context */
            aload 3 /* testClass */
            invokedynamic get(Ljava/lang/Class;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$1(Ljava/lang/Class;)Lorg/junit/platform/engine/DiscoverySelector; (6)
                  ()Lorg/junit/platform/engine/DiscoverySelector;
         8: .line 76
            aload 0 /* this */
            aload 3 /* testClass */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/lang/Class;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$2(Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional; (7)
                  (Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
         9: .line 75
            invokeinterface org.junit.platform.engine.support.discovery.SelectorResolver$Context.addToParent:(Ljava/util/function/Supplier;Ljava/util/function/Function;)Ljava/util/Optional;
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.toResolution:(Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        10: .line 78
      StackMap locals:
      StackMap stack:
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.unresolved:()Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        end local 3 // java.lang.Class testClass
        end local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
        end local 1 // org.junit.platform.engine.discovery.ClassSelector selector
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0   11     1   selector  Lorg/junit/platform/engine/discovery/ClassSelector;
            0   11     2    context  Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;
            1   11     3  testClass  Ljava/lang/Class<*>;
    MethodParameters:
          Name  Flags
      selector  
      context   

  public org.junit.platform.engine.support.discovery.SelectorResolver$Resolution resolve(org.junit.platform.engine.discovery.NestedClassSelector, org.junit.platform.engine.support.discovery.SelectorResolver$Context);
    descriptor: (Lorg/junit/platform/engine/discovery/NestedClassSelector;Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.platform.engine.discovery.NestedClassSelector selector
        start local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
         0: .line 83
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isNestedTestClass:Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
            aload 1 /* selector */
            invokevirtual org.junit.platform.engine.discovery.NestedClassSelector.getNestedClass:()Ljava/lang/Class;
            invokevirtual org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass.test:(Ljava/lang/Class;)Z
            ifeq 4
         1: .line 84
            aload 0 /* this */
            aload 2 /* context */
            aload 0 /* this */
            aload 1 /* selector */
            invokedynamic get(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Lorg/junit/platform/engine/discovery/NestedClassSelector;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$3(Lorg/junit/platform/engine/discovery/NestedClassSelector;)Lorg/junit/platform/engine/DiscoverySelector; (7)
                  ()Lorg/junit/platform/engine/DiscoverySelector;
         2: .line 85
            aload 0 /* this */
            aload 1 /* selector */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Lorg/junit/platform/engine/discovery/NestedClassSelector;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$4(Lorg/junit/platform/engine/discovery/NestedClassSelector;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional; (7)
                  (Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
         3: .line 84
            invokeinterface org.junit.platform.engine.support.discovery.SelectorResolver$Context.addToParent:(Ljava/util/function/Supplier;Ljava/util/function/Function;)Ljava/util/Optional;
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.toResolution:(Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
         4: .line 87
      StackMap locals:
      StackMap stack:
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.unresolved:()Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        end local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
        end local 1 // org.junit.platform.engine.discovery.NestedClassSelector selector
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    5     1  selector  Lorg/junit/platform/engine/discovery/NestedClassSelector;
            0    5     2   context  Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;
    MethodParameters:
          Name  Flags
      selector  
      context   

  public org.junit.platform.engine.support.discovery.SelectorResolver$Resolution resolve(org.junit.platform.engine.discovery.UniqueIdSelector, org.junit.platform.engine.support.discovery.SelectorResolver$Context);
    descriptor: (Lorg/junit/platform/engine/discovery/UniqueIdSelector;Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.platform.engine.discovery.UniqueIdSelector selector
        start local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
         0: .line 92
            aload 1 /* selector */
            invokevirtual org.junit.platform.engine.discovery.UniqueIdSelector.getUniqueId:()Lorg/junit/platform/engine/UniqueId;
            astore 3 /* uniqueId */
        start local 3 // org.junit.platform.engine.UniqueId uniqueId
         1: .line 93
            aload 3 /* uniqueId */
            invokevirtual org.junit.platform.engine.UniqueId.getLastSegment:()Lorg/junit/platform/engine/UniqueId$Segment;
            astore 4 /* lastSegment */
        start local 4 // org.junit.platform.engine.UniqueId$Segment lastSegment
         2: .line 94
            ldc "class"
            aload 4 /* lastSegment */
            invokevirtual org.junit.platform.engine.UniqueId$Segment.getType:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         3: .line 95
            aload 4 /* lastSegment */
            invokevirtual org.junit.platform.engine.UniqueId$Segment.getValue:()Ljava/lang/String;
            astore 5 /* className */
        start local 5 // java.lang.String className
         4: .line 96
            aload 5 /* className */
            invokestatic org.junit.platform.commons.util.ReflectionUtils.tryToLoadClass:(Ljava/lang/String;)Lorg/junit/platform/commons/function/Try;
            invokevirtual org.junit.platform.commons.function.Try.toOptional:()Ljava/util/Optional;
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isTestClassWithTests:Lorg/junit/jupiter/engine/discovery/predicates/IsTestClassWithTests;
            invokevirtual java.util.Optional.filter:(Ljava/util/function/Predicate;)Ljava/util/Optional;
         5: .line 97
            aload 0 /* this */
            aload 2 /* context */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$5(Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;Ljava/lang/Class;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution; (7)
                  (Ljava/lang/Class;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
         6: .line 96
            invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
         7: .line 99
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.unresolved:()Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
         8: .line 98
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.junit.platform.engine.support.discovery.SelectorResolver$Resolution
         9: .line 96
            areturn
        end local 5 // java.lang.String className
        10: .line 101
      StackMap locals: org.junit.platform.engine.UniqueId org.junit.platform.engine.UniqueId$Segment
      StackMap stack:
            ldc "nested-class"
            aload 4 /* lastSegment */
            invokevirtual org.junit.platform.engine.UniqueId$Segment.getType:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        11: .line 102
            aload 4 /* lastSegment */
            invokevirtual org.junit.platform.engine.UniqueId$Segment.getValue:()Ljava/lang/String;
            astore 5 /* simpleClassName */
        start local 5 // java.lang.String simpleClassName
        12: .line 103
            aload 0 /* this */
            aload 2 /* context */
            aload 3 /* uniqueId */
            invokedynamic get(Lorg/junit/platform/engine/UniqueId;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$7(Lorg/junit/platform/engine/UniqueId;)Lorg/junit/platform/engine/DiscoverySelector; (6)
                  ()Lorg/junit/platform/engine/DiscoverySelector;
            aload 0 /* this */
            aload 5 /* simpleClassName */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/lang/String;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$8(Ljava/lang/String;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional; (7)
                  (Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
            invokeinterface org.junit.platform.engine.support.discovery.SelectorResolver$Context.addToParent:(Ljava/util/function/Supplier;Ljava/util/function/Function;)Ljava/util/Optional;
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.toResolution:(Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        end local 5 // java.lang.String simpleClassName
        13: .line 114
      StackMap locals:
      StackMap stack:
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.unresolved:()Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        end local 4 // org.junit.platform.engine.UniqueId$Segment lastSegment
        end local 3 // org.junit.platform.engine.UniqueId uniqueId
        end local 2 // org.junit.platform.engine.support.discovery.SelectorResolver$Context context
        end local 1 // org.junit.platform.engine.discovery.UniqueIdSelector selector
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0   14     1         selector  Lorg/junit/platform/engine/discovery/UniqueIdSelector;
            0   14     2          context  Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;
            1   14     3         uniqueId  Lorg/junit/platform/engine/UniqueId;
            2   14     4      lastSegment  Lorg/junit/platform/engine/UniqueId$Segment;
            4   10     5        className  Ljava/lang/String;
           12   13     5  simpleClassName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      selector  
      context   

  private org.junit.jupiter.engine.descriptor.ClassTestDescriptor newClassTestDescriptor(org.junit.platform.engine.TestDescriptor, java.lang.Class<?>);
    descriptor: (Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/ClassTestDescriptor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.platform.engine.TestDescriptor parent
        start local 2 // java.lang.Class testClass
         0: .line 118
            new org.junit.jupiter.engine.descriptor.ClassTestDescriptor
            dup
         1: .line 119
            aload 1 /* parent */
            invokeinterface org.junit.platform.engine.TestDescriptor.getUniqueId:()Lorg/junit/platform/engine/UniqueId;
            ldc "class"
            aload 2 /* testClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.junit.platform.engine.UniqueId.append:(Ljava/lang/String;Ljava/lang/String;)Lorg/junit/platform/engine/UniqueId;
            aload 2 /* testClass */
         2: .line 120
            aload 0 /* this */
            getfield org.junit.jupiter.engine.discovery.ClassSelectorResolver.configuration:Lorg/junit/jupiter/engine/config/JupiterConfiguration;
         3: .line 118
            invokespecial org.junit.jupiter.engine.descriptor.ClassTestDescriptor.<init>:(Lorg/junit/platform/engine/UniqueId;Ljava/lang/Class;Lorg/junit/jupiter/engine/config/JupiterConfiguration;)V
            areturn
        end local 2 // java.lang.Class testClass
        end local 1 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1     parent  Lorg/junit/platform/engine/TestDescriptor;
            0    4     2  testClass  Ljava/lang/Class<*>;
    Signature: (Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class<*>;)Lorg/junit/jupiter/engine/descriptor/ClassTestDescriptor;
    MethodParameters:
           Name  Flags
      parent     
      testClass  

  private org.junit.jupiter.engine.descriptor.NestedClassTestDescriptor newNestedClassTestDescriptor(org.junit.platform.engine.TestDescriptor, java.lang.Class<?>);
    descriptor: (Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/NestedClassTestDescriptor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.platform.engine.TestDescriptor parent
        start local 2 // java.lang.Class testClass
         0: .line 124
            new org.junit.jupiter.engine.descriptor.NestedClassTestDescriptor
            dup
         1: .line 125
            aload 1 /* parent */
            invokeinterface org.junit.platform.engine.TestDescriptor.getUniqueId:()Lorg/junit/platform/engine/UniqueId;
            ldc "nested-class"
            aload 2 /* testClass */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual org.junit.platform.engine.UniqueId.append:(Ljava/lang/String;Ljava/lang/String;)Lorg/junit/platform/engine/UniqueId;
            aload 2 /* testClass */
         2: .line 126
            aload 0 /* this */
            getfield org.junit.jupiter.engine.discovery.ClassSelectorResolver.configuration:Lorg/junit/jupiter/engine/config/JupiterConfiguration;
         3: .line 124
            invokespecial org.junit.jupiter.engine.descriptor.NestedClassTestDescriptor.<init>:(Lorg/junit/platform/engine/UniqueId;Ljava/lang/Class;Lorg/junit/jupiter/engine/config/JupiterConfiguration;)V
            areturn
        end local 2 // java.lang.Class testClass
        end local 1 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1     parent  Lorg/junit/platform/engine/TestDescriptor;
            0    4     2  testClass  Ljava/lang/Class<*>;
    Signature: (Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class<*>;)Lorg/junit/jupiter/engine/descriptor/NestedClassTestDescriptor;
    MethodParameters:
           Name  Flags
      parent     
      testClass  

  private org.junit.platform.engine.support.discovery.SelectorResolver$Resolution toResolution(java.util.Optional<? extends org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor>);
    descriptor: (Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // java.util.Optional testDescriptor
         0: .line 130
            aload 1 /* testDescriptor */
            aload 0 /* this */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$11(Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution; (7)
                  (Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
         1: .line 143
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.unresolved:()Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.junit.platform.engine.support.discovery.SelectorResolver$Resolution
         2: .line 130
            areturn
        end local 1 // java.util.Optional testDescriptor
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    3     1  testDescriptor  Ljava/util/Optional<+Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;>;
    Signature: (Ljava/util/Optional<+Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;>;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    MethodParameters:
                Name  Flags
      testDescriptor  

  private org.junit.platform.engine.DiscoverySelector selectClass(java.util.List<java.lang.Class<?>>);
    descriptor: (Ljava/util/List;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // java.util.List classes
         0: .line 147
            aload 1 /* classes */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 2
         1: .line 148
            aload 1 /* classes */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Class
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectClass:(Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/ClassSelector;
            areturn
         2: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* classes */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 2 /* lastIndex */
        start local 2 // int lastIndex
         3: .line 151
            aload 1 /* classes */
            iconst_0
            iload 2 /* lastIndex */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            aload 1 /* classes */
            iload 2 /* lastIndex */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Class
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectNestedClass:(Ljava/util/List;Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/NestedClassSelector;
            areturn
        end local 2 // int lastIndex
        end local 1 // java.util.List classes
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1    classes  Ljava/util/List<Ljava/lang/Class<*>;>;
            3    4     2  lastIndex  I
    Signature: (Ljava/util/List<Ljava/lang/Class<*>;>;)Lorg/junit/platform/engine/DiscoverySelector;
    MethodParameters:
         Name  Flags
      classes  

  private org.junit.platform.engine.DiscoverySelector selectMethod(java.util.List<java.lang.Class<?>>, java.lang.reflect.Method);
    descriptor: (Ljava/util/List;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // java.util.List classes
        start local 2 // java.lang.reflect.Method method
         0: .line 155
            aload 1 /* classes */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 2
         1: .line 156
            aload 1 /* classes */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Class
            aload 2 /* method */
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectMethod:(Ljava/lang/Class;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/discovery/MethodSelector;
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 1 /* classes */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 3 /* lastIndex */
        start local 3 // int lastIndex
         3: .line 159
            aload 1 /* classes */
            iconst_0
            iload 3 /* lastIndex */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            aload 1 /* classes */
            iload 3 /* lastIndex */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Class
            aload 2 /* method */
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectNestedMethod:(Ljava/util/List;Ljava/lang/Class;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/discovery/NestedMethodSelector;
            areturn
        end local 3 // int lastIndex
        end local 2 // java.lang.reflect.Method method
        end local 1 // java.util.List classes
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1    classes  Ljava/util/List<Ljava/lang/Class<*>;>;
            0    4     2     method  Ljava/lang/reflect/Method;
            3    4     3  lastIndex  I
    Signature: (Ljava/util/List<Ljava/lang/Class<*>;>;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector;
    MethodParameters:
         Name  Flags
      classes  
      method   

  private java.util.Optional lambda$0(java.lang.Class, org.junit.platform.engine.TestDescriptor);
    descriptor: (Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // org.junit.platform.engine.TestDescriptor parent
         0: .line 71
            aload 0 /* this */
            aload 2 /* parent */
            aload 1
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.newClassTestDescriptor:(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/ClassTestDescriptor;
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  parent  Lorg/junit/platform/engine/TestDescriptor;

  private static org.junit.platform.engine.DiscoverySelector lambda$1(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 75
            aload 0
            invokevirtual java.lang.Class.getEnclosingClass:()Ljava/lang/Class;
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectClass:(Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/ClassSelector;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.util.Optional lambda$2(java.lang.Class, org.junit.platform.engine.TestDescriptor);
    descriptor: (Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // org.junit.platform.engine.TestDescriptor parent
         0: .line 76
            aload 0 /* this */
            aload 2 /* parent */
            aload 1
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.newNestedClassTestDescriptor:(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/NestedClassTestDescriptor;
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  parent  Lorg/junit/platform/engine/TestDescriptor;

  private org.junit.platform.engine.DiscoverySelector lambda$3(org.junit.platform.engine.discovery.NestedClassSelector);
    descriptor: (Lorg/junit/platform/engine/discovery/NestedClassSelector;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
         0: .line 84
            aload 0 /* this */
            aload 1
            invokevirtual org.junit.platform.engine.discovery.NestedClassSelector.getEnclosingClasses:()Ljava/util/List;
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.selectClass:(Ljava/util/List;)Lorg/junit/platform/engine/DiscoverySelector;
            areturn
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;

  private java.util.Optional lambda$4(org.junit.platform.engine.discovery.NestedClassSelector, org.junit.platform.engine.TestDescriptor);
    descriptor: (Lorg/junit/platform/engine/discovery/NestedClassSelector;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // org.junit.platform.engine.TestDescriptor parent
         0: .line 85
            aload 0 /* this */
            aload 2 /* parent */
            aload 1
            invokevirtual org.junit.platform.engine.discovery.NestedClassSelector.getNestedClass:()Ljava/lang/Class;
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.newNestedClassTestDescriptor:(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/NestedClassTestDescriptor;
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  parent  Lorg/junit/platform/engine/TestDescriptor;

  private org.junit.platform.engine.support.discovery.SelectorResolver$Resolution lambda$5(org.junit.platform.engine.support.discovery.SelectorResolver$Context, java.lang.Class);
    descriptor: (Lorg/junit/platform/engine/support/discovery/SelectorResolver$Context;Ljava/lang/Class;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // java.lang.Class testClass
         0: .line 97
            aload 0 /* this */
         1: .line 98
            aload 1
            aload 0 /* this */
            aload 2 /* testClass */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/lang/Class;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$6(Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional; (7)
                  (Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
            invokeinterface org.junit.platform.engine.support.discovery.SelectorResolver$Context.addToParent:(Ljava/util/function/Function;)Ljava/util/Optional;
         2: .line 97
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.toResolution:(Ljava/util/Optional;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
         3: .line 98
            areturn
        end local 2 // java.lang.Class testClass
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     2  testClass  Ljava/lang/Class<*>;

  private static org.junit.platform.engine.DiscoverySelector lambda$7(org.junit.platform.engine.UniqueId);
    descriptor: (Lorg/junit/platform/engine/UniqueId;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 103
            aload 0
            invokevirtual org.junit.platform.engine.UniqueId.removeLastSegment:()Lorg/junit/platform/engine/UniqueId;
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectUniqueId:(Lorg/junit/platform/engine/UniqueId;)Lorg/junit/platform/engine/discovery/UniqueIdSelector;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.util.Optional lambda$8(java.lang.String, org.junit.platform.engine.TestDescriptor);
    descriptor: (Ljava/lang/String;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // org.junit.platform.engine.TestDescriptor parent
         0: .line 104
            aload 2 /* parent */
            instanceof org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor
            ifeq 11
         1: .line 105
            aload 2 /* parent */
            checkcast org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor
            invokevirtual org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.getTestClass:()Ljava/lang/Class;
            astore 3 /* parentTestClass */
        start local 3 // java.lang.Class parentTestClass
         2: .line 106
            aload 3 /* parentTestClass */
         3: .line 107
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isNestedTestClass:Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
         4: .line 108
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/Class.getSimpleName()Ljava/lang/String; (5)
                  (Ljava/lang/Class;)Ljava/lang/String;
            aload 1
            invokestatic java.util.function.Predicate.isEqual:(Ljava/lang/Object;)Ljava/util/function/Predicate;
            invokestatic org.junit.platform.commons.util.FunctionUtils.where:(Ljava/util/function/Function;Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
         5: .line 107
            invokevirtual org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass.and:(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
         6: .line 106
            invokestatic org.junit.platform.commons.util.ReflectionUtils.findNestedClasses:(Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List;
         7: .line 108
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
         8: .line 109
            aload 0 /* this */
            aload 2 /* parent */
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$10(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Ljava/util/Optional; (7)
                  (Ljava/lang/Class;)Ljava/util/Optional;
         9: .line 108
            invokevirtual java.util.Optional.flatMap:(Ljava/util/function/Function;)Ljava/util/Optional;
        10: .line 106
            areturn
        end local 3 // java.lang.Class parentTestClass
        11: .line 111
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 2 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0             this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0   12     2           parent  Lorg/junit/platform/engine/TestDescriptor;
            2   11     3  parentTestClass  Ljava/lang/Class<*>;

  private org.junit.platform.engine.support.discovery.SelectorResolver$Resolution lambda$11(org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor);
    descriptor: (Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 1 // org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor it
         0: .line 131
            aload 1 /* it */
            invokevirtual org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.getTestClass:()Ljava/lang/Class;
            astore 2 /* testClass */
        start local 2 // java.lang.Class testClass
         1: .line 132
            new java.util.ArrayList
            dup
            aload 1 /* it */
            invokevirtual org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.getEnclosingTestClasses:()Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 3 /* testClasses */
        start local 3 // java.util.List testClasses
         2: .line 133
            aload 3 /* testClasses */
            aload 2 /* testClass */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 135
            aload 1 /* it */
            aload 0 /* this */
            aload 3 /* testClasses */
            aload 2 /* testClass */
            invokedynamic get(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/util/List;Ljava/lang/Class;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$12(Ljava/util/List;Ljava/lang/Class;)Ljava/util/Set; (7)
                  ()Ljava/util/Set;
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Match.exact:(Lorg/junit/platform/engine/TestDescriptor;Ljava/util/function/Supplier;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Match;
            invokestatic org.junit.platform.engine.support.discovery.SelectorResolver$Resolution.match:(Lorg/junit/platform/engine/support/discovery/SelectorResolver$Match;)Lorg/junit/platform/engine/support/discovery/SelectorResolver$Resolution;
            areturn
        end local 3 // java.util.List testClasses
        end local 2 // java.lang.Class testClass
        end local 1 // org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor it
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    4     1           it  Lorg/junit/jupiter/engine/descriptor/ClassBasedTestDescriptor;
            1    4     2    testClass  Ljava/lang/Class<*>;
            2    4     3  testClasses  Ljava/util/List<Ljava/lang/Class<*>;>;

  private java.util.Optional lambda$6(java.lang.Class, org.junit.platform.engine.TestDescriptor);
    descriptor: (Ljava/lang/Class;Lorg/junit/platform/engine/TestDescriptor;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // org.junit.platform.engine.TestDescriptor parent
         0: .line 98
            aload 0 /* this */
            aload 2 /* parent */
            aload 1
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.newClassTestDescriptor:(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/ClassTestDescriptor;
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // org.junit.platform.engine.TestDescriptor parent
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  parent  Lorg/junit/platform/engine/TestDescriptor;

  private java.util.Optional lambda$10(org.junit.platform.engine.TestDescriptor, java.lang.Class);
    descriptor: (Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Ljava/util/Optional;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // java.lang.Class testClass
         0: .line 109
            aload 0 /* this */
            aload 1
            aload 2 /* testClass */
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.newNestedClassTestDescriptor:(Lorg/junit/platform/engine/TestDescriptor;Ljava/lang/Class;)Lorg/junit/jupiter/engine/descriptor/NestedClassTestDescriptor;
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // java.lang.Class testClass
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  testClass  Ljava/lang/Class<*>;

  private java.util.Set lambda$12(java.util.List, java.lang.Class);
    descriptor: (Ljava/util/List;Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
         0: .line 136
            aload 2
            getstatic org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests.isTestOrTestFactoryOrTestTemplateMethod:Ljava/util/function/Predicate;
            invokestatic org.junit.platform.commons.util.ReflectionUtils.findMethods:(Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 137
            aload 0 /* this */
            aload 1
            invokedynamic apply(Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;Ljava/util/List;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$13(Ljava/util/List;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector; (7)
                  (Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 136
            astore 3 /* methods */
        start local 3 // java.util.stream.Stream methods
         3: .line 138
            aload 2
            getstatic org.junit.jupiter.engine.discovery.ClassSelectorResolver.isNestedTestClass:Lorg/junit/jupiter/engine/discovery/predicates/IsNestedTestClass;
            invokestatic org.junit.platform.commons.support.ReflectionSupport.findNestedClasses:(Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         4: .line 139
            aload 1
            invokedynamic apply(Ljava/util/List;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/junit/jupiter/engine/discovery/ClassSelectorResolver.lambda$14(Ljava/util/List;Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/NestedClassSelector; (6)
                  (Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/NestedClassSelector;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         5: .line 138
            astore 4 /* nestedClasses */
        start local 4 // java.util.stream.Stream nestedClasses
         6: .line 140
            aload 3 /* methods */
            aload 4 /* nestedClasses */
            invokestatic java.util.stream.Stream.concat:(Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  java/util/LinkedHashSet.<init>()V (8)
                  ()Ljava/util/Set;
            invokestatic java.util.stream.Collectors.toCollection:(Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
            areturn
        end local 4 // java.util.stream.Stream nestedClasses
        end local 3 // java.util.stream.Stream methods
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            3    7     3        methods  Ljava/util/stream/Stream<Lorg/junit/platform/engine/DiscoverySelector;>;
            6    7     4  nestedClasses  Ljava/util/stream/Stream<Lorg/junit/platform/engine/discovery/NestedClassSelector;>;

  private org.junit.platform.engine.DiscoverySelector lambda$13(java.util.List, java.lang.reflect.Method);
    descriptor: (Ljava/util/List;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
        start local 2 // java.lang.reflect.Method method
         0: .line 137
            aload 0 /* this */
            aload 1
            aload 2 /* method */
            invokevirtual org.junit.jupiter.engine.discovery.ClassSelectorResolver.selectMethod:(Ljava/util/List;Ljava/lang/reflect/Method;)Lorg/junit/platform/engine/DiscoverySelector;
            areturn
        end local 2 // java.lang.reflect.Method method
        end local 0 // org.junit.jupiter.engine.discovery.ClassSelectorResolver this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/junit/jupiter/engine/discovery/ClassSelectorResolver;
            0    1     2  method  Ljava/lang/reflect/Method;

  private static org.junit.platform.engine.discovery.NestedClassSelector lambda$14(java.util.List, java.lang.Class);
    descriptor: (Ljava/util/List;Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/NestedClassSelector;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Class nestedClass
         0: .line 139
            aload 0
            aload 1 /* nestedClass */
            invokestatic org.junit.platform.engine.discovery.DiscoverySelectors.selectNestedClass:(Ljava/util/List;Ljava/lang/Class;)Lorg/junit/platform/engine/discovery/NestedClassSelector;
            areturn
        end local 1 // java.lang.Class nestedClass
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     1  nestedClass  Ljava/lang/Class<*>;
}
SourceFile: "ClassSelectorResolver.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Segment = org.junit.platform.engine.UniqueId$Segment of org.junit.platform.engine.UniqueId
  public abstract Context = org.junit.platform.engine.support.discovery.SelectorResolver$Context of org.junit.platform.engine.support.discovery.SelectorResolver
  public Match = org.junit.platform.engine.support.discovery.SelectorResolver$Match of org.junit.platform.engine.support.discovery.SelectorResolver
  public Resolution = org.junit.platform.engine.support.discovery.SelectorResolver$Resolution of org.junit.platform.engine.support.discovery.SelectorResolver