class org.springframework.context.annotation.ConfigurationClassParser
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.context.annotation.ConfigurationClassParser
  super_class: java.lang.Object
{
  private static final org.springframework.core.io.support.PropertySourceFactory DEFAULT_PROPERTY_SOURCE_FACTORY;
    descriptor: Lorg/springframework/core/io/support/PropertySourceFactory;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Comparator<org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder> DEFERRED_IMPORT_COMPARATOR;
    descriptor: Ljava/util/Comparator;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Comparator<Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;>;

  private final org.apache.commons.logging.Log logger;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory;
    descriptor: Lorg/springframework/core/type/classreading/MetadataReaderFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.beans.factory.parsing.ProblemReporter problemReporter;
    descriptor: Lorg/springframework/beans/factory/parsing/ProblemReporter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.core.env.Environment environment;
    descriptor: Lorg/springframework/core/env/Environment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.core.io.ResourceLoader resourceLoader;
    descriptor: Lorg/springframework/core/io/ResourceLoader;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.beans.factory.support.BeanDefinitionRegistry registry;
    descriptor: Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.context.annotation.ComponentScanAnnotationParser componentScanParser;
    descriptor: Lorg/springframework/context/annotation/ComponentScanAnnotationParser;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.context.annotation.ConditionEvaluator conditionEvaluator;
    descriptor: Lorg/springframework/context/annotation/ConditionEvaluator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<org.springframework.context.annotation.ConfigurationClass, org.springframework.context.annotation.ConfigurationClass> configurationClasses;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClass;>;

  private final java.util.Map<java.lang.String, org.springframework.context.annotation.ConfigurationClass> knownSuperclasses;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/springframework/context/annotation/ConfigurationClass;>;

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

  private final org.springframework.context.annotation.ConfigurationClassParser$ImportStack importStack;
    descriptor: Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler deferredImportSelectorHandler;
    descriptor: Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHandler;
    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 110
            new org.springframework.core.io.support.DefaultPropertySourceFactory
            dup
            invokespecial org.springframework.core.io.support.DefaultPropertySourceFactory.<init>:()V
            putstatic org.springframework.context.annotation.ConfigurationClassParser.DEFAULT_PROPERTY_SOURCE_FACTORY:Lorg/springframework/core/io/support/PropertySourceFactory;
         1: .line 113
            invokedynamic compare()Ljava/util/Comparator;
              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;)I
                  org/springframework/context/annotation/ConfigurationClassParser.lambda$0(Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;)I (6)
                  (Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;)I
         2: .line 112
            putstatic org.springframework.context.annotation.ConfigurationClassParser.DEFERRED_IMPORT_COMPARATOR:Ljava/util/Comparator;
         3: .line 113
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.springframework.core.type.classreading.MetadataReaderFactory, org.springframework.beans.factory.parsing.ProblemReporter, org.springframework.core.env.Environment, org.springframework.core.io.ResourceLoader, org.springframework.beans.factory.support.BeanNameGenerator, org.springframework.beans.factory.support.BeanDefinitionRegistry);
    descriptor: (Lorg/springframework/core/type/classreading/MetadataReaderFactory;Lorg/springframework/beans/factory/parsing/ProblemReporter;Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;Lorg/springframework/beans/factory/support/BeanNameGenerator;Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory
        start local 2 // org.springframework.beans.factory.parsing.ProblemReporter problemReporter
        start local 3 // org.springframework.core.env.Environment environment
        start local 4 // org.springframework.core.io.ResourceLoader resourceLoader
        start local 5 // org.springframework.beans.factory.support.BeanNameGenerator componentScanBeanNameGenerator
        start local 6 // org.springframework.beans.factory.support.BeanDefinitionRegistry registry
         0: .line 147
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 116
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.context.annotation.ConfigurationClassParser.logger:Lorg/apache/commons/logging/Log;
         2: .line 132
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
         3: .line 134
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.springframework.context.annotation.ConfigurationClassParser.knownSuperclasses:Ljava/util/Map;
         4: .line 136
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
         5: .line 138
            aload 0 /* this */
            new org.springframework.context.annotation.ConfigurationClassParser$ImportStack
            dup
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$ImportStack.<init>:()V
            putfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
         6: .line 140
            aload 0 /* this */
            new org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler
            dup
            aload 0 /* this */
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;)V
            putfield org.springframework.context.annotation.ConfigurationClassParser.deferredImportSelectorHandler:Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHandler;
         7: .line 151
            aload 0 /* this */
            aload 1 /* metadataReaderFactory */
            putfield org.springframework.context.annotation.ConfigurationClassParser.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
         8: .line 152
            aload 0 /* this */
            aload 2 /* problemReporter */
            putfield org.springframework.context.annotation.ConfigurationClassParser.problemReporter:Lorg/springframework/beans/factory/parsing/ProblemReporter;
         9: .line 153
            aload 0 /* this */
            aload 3 /* environment */
            putfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
        10: .line 154
            aload 0 /* this */
            aload 4 /* resourceLoader */
            putfield org.springframework.context.annotation.ConfigurationClassParser.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
        11: .line 155
            aload 0 /* this */
            aload 6 /* registry */
            putfield org.springframework.context.annotation.ConfigurationClassParser.registry:Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
        12: .line 156
            aload 0 /* this */
            new org.springframework.context.annotation.ComponentScanAnnotationParser
            dup
        13: .line 157
            aload 3 /* environment */
            aload 4 /* resourceLoader */
            aload 5 /* componentScanBeanNameGenerator */
            aload 6 /* registry */
            invokespecial org.springframework.context.annotation.ComponentScanAnnotationParser.<init>:(Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;Lorg/springframework/beans/factory/support/BeanNameGenerator;Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
        14: .line 156
            putfield org.springframework.context.annotation.ConfigurationClassParser.componentScanParser:Lorg/springframework/context/annotation/ComponentScanAnnotationParser;
        15: .line 158
            aload 0 /* this */
            new org.springframework.context.annotation.ConditionEvaluator
            dup
            aload 6 /* registry */
            aload 3 /* environment */
            aload 4 /* resourceLoader */
            invokespecial org.springframework.context.annotation.ConditionEvaluator.<init>:(Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;)V
            putfield org.springframework.context.annotation.ConfigurationClassParser.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
        16: .line 159
            return
        end local 6 // org.springframework.beans.factory.support.BeanDefinitionRegistry registry
        end local 5 // org.springframework.beans.factory.support.BeanNameGenerator componentScanBeanNameGenerator
        end local 4 // org.springframework.core.io.ResourceLoader resourceLoader
        end local 3 // org.springframework.core.env.Environment environment
        end local 2 // org.springframework.beans.factory.parsing.ProblemReporter problemReporter
        end local 1 // org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   17     0                            this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   17     1           metadataReaderFactory  Lorg/springframework/core/type/classreading/MetadataReaderFactory;
            0   17     2                 problemReporter  Lorg/springframework/beans/factory/parsing/ProblemReporter;
            0   17     3                     environment  Lorg/springframework/core/env/Environment;
            0   17     4                  resourceLoader  Lorg/springframework/core/io/ResourceLoader;
            0   17     5  componentScanBeanNameGenerator  Lorg/springframework/beans/factory/support/BeanNameGenerator;
            0   17     6                        registry  Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
    MethodParameters:
                                Name  Flags
      metadataReaderFactory           
      problemReporter                 
      environment                     
      resourceLoader                  
      componentScanBeanNameGenerator  
      registry                        

  public void parse(java.util.Set<org.springframework.beans.factory.config.BeanDefinitionHolder>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.util.Set configCandidates
         0: .line 163
            aload 1 /* configCandidates */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 17
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.util.Set top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.beans.factory.config.BeanDefinitionHolder
            astore 2 /* holder */
        start local 2 // org.springframework.beans.factory.config.BeanDefinitionHolder holder
         2: .line 164
            aload 2 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanDefinition:()Lorg/springframework/beans/factory/config/BeanDefinition;
            astore 4 /* bd */
        start local 4 // org.springframework.beans.factory.config.BeanDefinition bd
         3: .line 166
            aload 4 /* bd */
            instanceof org.springframework.beans.factory.annotation.AnnotatedBeanDefinition
            ifeq 6
         4: .line 167
            aload 0 /* this */
            aload 4 /* bd */
            checkcast org.springframework.beans.factory.annotation.AnnotatedBeanDefinition
            invokeinterface org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            aload 2 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.parse:(Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/String;)V
         5: .line 168
            goto 17
         6: .line 169
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.util.Set org.springframework.beans.factory.config.BeanDefinitionHolder java.util.Iterator org.springframework.beans.factory.config.BeanDefinition
      StackMap stack:
            aload 4 /* bd */
            instanceof org.springframework.beans.factory.support.AbstractBeanDefinition
            ifeq 9
            aload 4 /* bd */
            checkcast org.springframework.beans.factory.support.AbstractBeanDefinition
            invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.hasBeanClass:()Z
            ifeq 9
         7: .line 170
            aload 0 /* this */
            aload 4 /* bd */
            checkcast org.springframework.beans.factory.support.AbstractBeanDefinition
            invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.getBeanClass:()Ljava/lang/Class;
            aload 2 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.parse:(Ljava/lang/Class;Ljava/lang/String;)V
         8: .line 171
            goto 17
         9: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bd */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getBeanClassName:()Ljava/lang/String;
            aload 2 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.parse:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 175
            goto 17
        11: .line 176
      StackMap locals:
      StackMap stack: org.springframework.beans.factory.BeanDefinitionStoreException
            astore 5 /* ex */
        start local 5 // org.springframework.beans.factory.BeanDefinitionStoreException ex
        12: .line 177
            aload 5 /* ex */
            athrow
        end local 5 // org.springframework.beans.factory.BeanDefinitionStoreException ex
        13: .line 179
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5 /* ex */
        start local 5 // java.lang.Throwable ex
        14: .line 180
            new org.springframework.beans.factory.BeanDefinitionStoreException
            dup
        15: .line 181
            new java.lang.StringBuilder
            dup
            ldc "Failed to parse configuration class ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* bd */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getBeanClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 5 /* ex */
        16: .line 180
            invokespecial org.springframework.beans.factory.BeanDefinitionStoreException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.lang.Throwable ex
        end local 4 // org.springframework.beans.factory.config.BeanDefinition bd
        end local 2 // org.springframework.beans.factory.config.BeanDefinitionHolder holder
        17: .line 163
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        18: .line 185
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.deferredImportSelectorHandler:Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHandler;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler.process:()V
        19: .line 186
            return
        end local 1 // java.util.Set configCandidates
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   20     0              this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   20     1  configCandidates  Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinitionHolder;>;
            2   17     2            holder  Lorg/springframework/beans/factory/config/BeanDefinitionHolder;
            3   17     4                bd  Lorg/springframework/beans/factory/config/BeanDefinition;
           12   13     5                ex  Lorg/springframework/beans/factory/BeanDefinitionStoreException;
           14   17     5                ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           3    10      11  Class org.springframework.beans.factory.BeanDefinitionStoreException
           3    10      13  Class java.lang.Throwable
    Signature: (Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinitionHolder;>;)V
    MethodParameters:
                  Name  Flags
      configCandidates  

  protected final void parse(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String beanName
         0: .line 189
            aload 1 /* className */
            ldc "No bean class name for configuration class bean definition"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 190
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
            aload 1 /* className */
            invokeinterface org.springframework.core.type.classreading.MetadataReaderFactory.getMetadataReader:(Ljava/lang/String;)Lorg/springframework/core/type/classreading/MetadataReader;
            astore 3 /* reader */
        start local 3 // org.springframework.core.type.classreading.MetadataReader reader
         2: .line 191
            aload 0 /* this */
            new org.springframework.context.annotation.ConfigurationClass
            dup
            aload 3 /* reader */
            aload 2 /* beanName */
            invokespecial org.springframework.context.annotation.ConfigurationClass.<init>:(Lorg/springframework/core/type/classreading/MetadataReader;Ljava/lang/String;)V
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;)V
         3: .line 192
            return
        end local 3 // org.springframework.core.type.classreading.MetadataReader reader
        end local 2 // java.lang.String beanName
        end local 1 // java.lang.String className
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    4     1  className  Ljava/lang/String;
            0    4     2   beanName  Ljava/lang/String;
            2    4     3     reader  Lorg/springframework/core/type/classreading/MetadataReader;
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
      1:
    MethodParameters:
           Name  Flags
      className  
      beanName   

  protected final void parse(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String beanName
         0: .line 195
            aload 0 /* this */
            new org.springframework.context.annotation.ConfigurationClass
            dup
            aload 1 /* clazz */
            aload 2 /* beanName */
            invokespecial org.springframework.context.annotation.ConfigurationClass.<init>:(Ljava/lang/Class;Ljava/lang/String;)V
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;)V
         1: .line 196
            return
        end local 2 // java.lang.String beanName
        end local 1 // java.lang.Class clazz
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    2     1     clazz  Ljava/lang/Class<*>;
            0    2     2  beanName  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)V
    MethodParameters:
          Name  Flags
      clazz     
      beanName  

  protected final void parse(org.springframework.core.type.AnnotationMetadata, java.lang.String);
    descriptor: (Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/String;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.core.type.AnnotationMetadata metadata
        start local 2 // java.lang.String beanName
         0: .line 199
            aload 0 /* this */
            new org.springframework.context.annotation.ConfigurationClass
            dup
            aload 1 /* metadata */
            aload 2 /* beanName */
            invokespecial org.springframework.context.annotation.ConfigurationClass.<init>:(Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/String;)V
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;)V
         1: .line 200
            return
        end local 2 // java.lang.String beanName
        end local 1 // org.springframework.core.type.AnnotationMetadata metadata
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    2     1  metadata  Lorg/springframework/core/type/AnnotationMetadata;
            0    2     2  beanName  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      metadata  
      beanName  

  public void validate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
         0: .line 207
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClass
            astore 1 /* configClass */
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
         2: .line 208
            aload 1 /* configClass */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.problemReporter:Lorg/springframework/beans/factory/parsing/ProblemReporter;
            invokevirtual org.springframework.context.annotation.ConfigurationClass.validate:(Lorg/springframework/beans/factory/parsing/ProblemReporter;)V
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
         3: .line 207
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 210
            return
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            2    3     1  configClass  Lorg/springframework/context/annotation/ConfigurationClass;

  public java.util.Set<org.springframework.context.annotation.ConfigurationClass> getConfigurationClasses();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
         0: .line 213
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            areturn
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/context/annotation/ConfigurationClassParser;
    Signature: ()Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClass;>;

  protected void processConfigurationClass(org.springframework.context.annotation.ConfigurationClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
         0: .line 218
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            getstatic org.springframework.context.annotation.ConfigurationCondition$ConfigurationPhase.PARSE_CONFIGURATION:Lorg/springframework/context/annotation/ConfigurationCondition$ConfigurationPhase;
            invokevirtual org.springframework.context.annotation.ConditionEvaluator.shouldSkip:(Lorg/springframework/core/type/AnnotatedTypeMetadata;Lorg/springframework/context/annotation/ConfigurationCondition$ConfigurationPhase;)Z
            ifeq 2
         1: .line 219
            return
         2: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
            aload 1 /* configClass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClass
            astore 2 /* existingClass */
        start local 2 // org.springframework.context.annotation.ConfigurationClass existingClass
         3: .line 223
            aload 2 /* existingClass */
            ifnull 10
         4: .line 224
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.isImported:()Z
            ifeq 8
         5: .line 225
            aload 2 /* existingClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.isImported:()Z
            ifeq 7
         6: .line 226
            aload 2 /* existingClass */
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.mergeImportedBy:(Lorg/springframework/context/annotation/ConfigurationClass;)V
         7: .line 229
      StackMap locals: org.springframework.context.annotation.ConfigurationClass
      StackMap stack:
            return
         8: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
            aload 1 /* configClass */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 235
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.knownSuperclasses:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            aload 1 /* configClass */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Lorg/springframework/context/annotation/ConfigurationClass;)Ljava/util/function/Predicate;
              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;)Z
                  org/springframework/context/annotation/ConfigurationClass.equals(Ljava/lang/Object;)Z (5)
                  (Lorg/springframework/context/annotation/ConfigurationClass;)Z
            invokeinterface java.util.Collection.removeIf:(Ljava/util/function/Predicate;)Z
            pop
        10: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClass:(Lorg/springframework/context/annotation/ConfigurationClass;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            astore 4 /* sourceClass */
        start local 4 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        11: .line 242
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClass top org.springframework.context.annotation.ConfigurationClassParser$SourceClass
      StackMap stack:
            aload 0 /* this */
            aload 1 /* configClass */
            aload 4 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            astore 4 /* sourceClass */
        12: .line 244
            aload 4 /* sourceClass */
            ifnonnull 11
        13: .line 246
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.configurationClasses:Ljava/util/Map;
            aload 1 /* configClass */
            aload 1 /* configClass */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 247
            return
        end local 4 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 2 // org.springframework.context.annotation.ConfigurationClass existingClass
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   15     1    configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            3   15     2  existingClass  Lorg/springframework/context/annotation/ConfigurationClass;
           11   15     4    sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      configClass  

  protected final org.springframework.context.annotation.ConfigurationClassParser$SourceClass doProcessConfigurationClass(org.springframework.context.annotation.ConfigurationClass, org.springframework.context.annotation.ConfigurationClassParser$SourceClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        start local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
         0: .line 261
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            ldc Lorg/springframework/stereotype/Component;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface org.springframework.core.type.AnnotationMetadata.isAnnotated:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 263
            aload 0 /* this */
            aload 1 /* configClass */
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processMemberClasses:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)V
         2: .line 268
      StackMap locals:
      StackMap stack:
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            ldc Lorg/springframework/context/annotation/PropertySources;
         3: .line 269
            ldc Lorg/springframework/context/annotation/PropertySource;
         4: .line 267
            invokestatic org.springframework.context.annotation.AnnotationConfigUtils.attributesForRepeatable:(Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass top java.util.Iterator
      StackMap stack:
         5: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.annotation.AnnotationAttributes
            astore 3 /* propertySource */
        start local 3 // org.springframework.core.annotation.AnnotationAttributes propertySource
         6: .line 270
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            instanceof org.springframework.core.env.ConfigurableEnvironment
            ifeq 9
         7: .line 271
            aload 0 /* this */
            aload 3 /* propertySource */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processPropertySource:(Lorg/springframework/core/annotation/AnnotationAttributes;)V
         8: .line 272
            goto 12
         9: .line 274
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.core.annotation.AnnotationAttributes java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Ignoring @PropertySource annotation on ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 275
            ldc "]. Reason: Environment must implement ConfigurableEnvironment"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 274
            invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
        end local 3 // org.springframework.core.annotation.AnnotationAttributes propertySource
        12: .line 267
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        13: .line 281
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            ldc Lorg/springframework/context/annotation/ComponentScans;
            ldc Lorg/springframework/context/annotation/ComponentScan;
        14: .line 280
            invokestatic org.springframework.context.annotation.AnnotationConfigUtils.attributesForRepeatable:(Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
            astore 3 /* componentScans */
        start local 3 // java.util.Set componentScans
        15: .line 282
            aload 3 /* componentScans */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 30
        16: .line 283
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            getstatic org.springframework.context.annotation.ConfigurationCondition$ConfigurationPhase.REGISTER_BEAN:Lorg/springframework/context/annotation/ConfigurationCondition$ConfigurationPhase;
            invokevirtual org.springframework.context.annotation.ConditionEvaluator.shouldSkip:(Lorg/springframework/core/type/AnnotatedTypeMetadata;Lorg/springframework/context/annotation/ConfigurationCondition$ConfigurationPhase;)Z
            ifne 30
        17: .line 284
            aload 3 /* componentScans */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 29
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set top java.util.Iterator
      StackMap stack:
        18: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.annotation.AnnotationAttributes
            astore 4 /* componentScan */
        start local 4 // org.springframework.core.annotation.AnnotationAttributes componentScan
        19: .line 287
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.componentScanParser:Lorg/springframework/context/annotation/ComponentScanAnnotationParser;
            aload 4 /* componentScan */
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ComponentScanAnnotationParser.parse:(Lorg/springframework/core/annotation/AnnotationAttributes;Ljava/lang/String;)Ljava/util/Set;
        20: .line 286
            astore 6 /* scannedBeanDefinitions */
        start local 6 // java.util.Set scannedBeanDefinitions
        21: .line 289
            aload 6 /* scannedBeanDefinitions */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 28
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
        22: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.beans.factory.config.BeanDefinitionHolder
            astore 7 /* holder */
        start local 7 // org.springframework.beans.factory.config.BeanDefinitionHolder holder
        23: .line 290
            aload 7 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanDefinition:()Lorg/springframework/beans/factory/config/BeanDefinition;
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getOriginatingBeanDefinition:()Lorg/springframework/beans/factory/config/BeanDefinition;
            astore 9 /* bdCand */
        start local 9 // org.springframework.beans.factory.config.BeanDefinition bdCand
        24: .line 291
            aload 9 /* bdCand */
            ifnonnull 26
        25: .line 292
            aload 7 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanDefinition:()Lorg/springframework/beans/factory/config/BeanDefinition;
            astore 9 /* bdCand */
        26: .line 294
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.util.Iterator java.util.Set org.springframework.beans.factory.config.BeanDefinitionHolder java.util.Iterator org.springframework.beans.factory.config.BeanDefinition
      StackMap stack:
            aload 9 /* bdCand */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
            invokestatic org.springframework.context.annotation.ConfigurationClassUtils.checkConfigurationClassCandidate:(Lorg/springframework/beans/factory/config/BeanDefinition;Lorg/springframework/core/type/classreading/MetadataReaderFactory;)Z
            ifeq 28
        27: .line 295
            aload 0 /* this */
            aload 9 /* bdCand */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getBeanClassName:()Ljava/lang/String;
            aload 7 /* holder */
            invokevirtual org.springframework.beans.factory.config.BeanDefinitionHolder.getBeanName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.parse:(Ljava/lang/String;Ljava/lang/String;)V
        end local 9 // org.springframework.beans.factory.config.BeanDefinition bdCand
        end local 7 // org.springframework.beans.factory.config.BeanDefinitionHolder holder
        28: .line 289
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        end local 6 // java.util.Set scannedBeanDefinitions
        end local 4 // org.springframework.core.annotation.AnnotationAttributes componentScan
        29: .line 284
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        30: .line 302
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set
      StackMap stack:
            aload 0 /* this */
            aload 1 /* configClass */
            aload 2 /* sourceClass */
            aload 0 /* this */
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.getImports:(Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set;
            iconst_1
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processImports:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Collection;Z)V
        31: .line 306
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            ldc Lorg/springframework/context/annotation/ImportResource;
            invokestatic org.springframework.context.annotation.AnnotationConfigUtils.attributesFor:(Lorg/springframework/core/type/AnnotatedTypeMetadata;Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationAttributes;
        32: .line 305
            astore 4 /* importResource */
        start local 4 // org.springframework.core.annotation.AnnotationAttributes importResource
        33: .line 307
            aload 4 /* importResource */
            ifnull 42
        34: .line 308
            aload 4 /* importResource */
            ldc "locations"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getStringArray:(Ljava/lang/String;)[Ljava/lang/String;
            astore 5 /* resources */
        start local 5 // java.lang.String[] resources
        35: .line 309
            aload 4 /* importResource */
            ldc "reader"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 6 /* readerClass */
        start local 6 // java.lang.Class readerClass
        36: .line 310
            aload 5 /* resources */
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 41
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.lang.String[] java.lang.Class top int int java.lang.String[]
      StackMap stack:
        37: aload 10
            iload 8
            aaload
            astore 7 /* resource */
        start local 7 // java.lang.String resource
        38: .line 311
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            aload 7 /* resource */
            invokeinterface org.springframework.core.env.Environment.resolveRequiredPlaceholders:(Ljava/lang/String;)Ljava/lang/String;
            astore 11 /* resolvedResource */
        start local 11 // java.lang.String resolvedResource
        39: .line 312
            aload 1 /* configClass */
            aload 11 /* resolvedResource */
            aload 6 /* readerClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.addImportedResource:(Ljava/lang/String;Ljava/lang/Class;)V
        end local 11 // java.lang.String resolvedResource
        end local 7 // java.lang.String resource
        40: .line 310
            iinc 8 1
      StackMap locals:
      StackMap stack:
        41: iload 8
            iload 9
            if_icmplt 37
        end local 6 // java.lang.Class readerClass
        end local 5 // java.lang.String[] resources
        42: .line 317
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes
      StackMap stack:
            aload 0 /* this */
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.retrieveBeanMethodMetadata:(Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set;
            astore 5 /* beanMethods */
        start local 5 // java.util.Set beanMethods
        43: .line 318
            aload 5 /* beanMethods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 46
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.util.Set top java.util.Iterator
      StackMap stack:
        44: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.type.MethodMetadata
            astore 6 /* methodMetadata */
        start local 6 // org.springframework.core.type.MethodMetadata methodMetadata
        45: .line 319
            aload 1 /* configClass */
            new org.springframework.context.annotation.BeanMethod
            dup
            aload 6 /* methodMetadata */
            aload 1 /* configClass */
            invokespecial org.springframework.context.annotation.BeanMethod.<init>:(Lorg/springframework/core/type/MethodMetadata;Lorg/springframework/context/annotation/ConfigurationClass;)V
            invokevirtual org.springframework.context.annotation.ConfigurationClass.addBeanMethod:(Lorg/springframework/context/annotation/BeanMethod;)V
        end local 6 // org.springframework.core.type.MethodMetadata methodMetadata
        46: .line 318
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 44
        47: .line 323
            aload 0 /* this */
            aload 1 /* configClass */
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processInterfaces:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)V
        48: .line 326
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.hasSuperClass:()Z
            ifeq 54
        49: .line 327
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getSuperClassName:()Ljava/lang/String;
            astore 6 /* superclass */
        start local 6 // java.lang.String superclass
        50: .line 328
            aload 6 /* superclass */
            ifnull 54
            aload 6 /* superclass */
            ldc "java"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 54
        51: .line 329
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.knownSuperclasses:Ljava/util/Map;
            aload 6 /* superclass */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 54
        52: .line 330
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.knownSuperclasses:Ljava/util/Map;
            aload 6 /* superclass */
            aload 1 /* configClass */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        53: .line 332
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getSuperClass:()Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            areturn
        end local 6 // java.lang.String superclass
        54: .line 337
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set org.springframework.core.annotation.AnnotationAttributes java.util.Set
      StackMap stack:
            aconst_null
            areturn
        end local 5 // java.util.Set beanMethods
        end local 4 // org.springframework.core.annotation.AnnotationAttributes importResource
        end local 3 // java.util.Set componentScans
        end local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   55     0                    this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   55     1             configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            0   55     2             sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            6   12     3          propertySource  Lorg/springframework/core/annotation/AnnotationAttributes;
           15   55     3          componentScans  Ljava/util/Set<Lorg/springframework/core/annotation/AnnotationAttributes;>;
           19   29     4           componentScan  Lorg/springframework/core/annotation/AnnotationAttributes;
           21   29     6  scannedBeanDefinitions  Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinitionHolder;>;
           23   28     7                  holder  Lorg/springframework/beans/factory/config/BeanDefinitionHolder;
           24   28     9                  bdCand  Lorg/springframework/beans/factory/config/BeanDefinition;
           33   55     4          importResource  Lorg/springframework/core/annotation/AnnotationAttributes;
           35   42     5               resources  [Ljava/lang/String;
           36   42     6             readerClass  Ljava/lang/Class<+Lorg/springframework/beans/factory/support/BeanDefinitionReader;>;
           38   40     7                resource  Ljava/lang/String;
           39   40    11        resolvedResource  Ljava/lang/String;
           43   55     5             beanMethods  Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
           45   46     6          methodMetadata  Lorg/springframework/core/type/MethodMetadata;
           50   54     6              superclass  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      configClass  
      sourceClass  

  private void processMemberClasses(org.springframework.context.annotation.ConfigurationClass, org.springframework.context.annotation.ConfigurationClassParser$SourceClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        start local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
         0: .line 344
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMemberClasses:()Ljava/util/Collection;
            astore 3 /* memberClasses */
        start local 3 // java.util.Collection memberClasses
         1: .line 345
            aload 3 /* memberClasses */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 23
         2: .line 346
            new java.util.ArrayList
            dup
            aload 3 /* memberClasses */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 4 /* candidates */
        start local 4 // java.util.List candidates
         3: .line 347
            aload 3 /* memberClasses */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            astore 5 /* memberClass */
        start local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass memberClass
         5: .line 348
            aload 5 /* memberClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokestatic org.springframework.context.annotation.ConfigurationClassUtils.isConfigurationCandidate:(Lorg/springframework/core/type/AnnotationMetadata;)Z
            ifeq 8
         6: .line 349
            aload 5 /* memberClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 350
            aload 4 /* candidates */
            aload 5 /* memberClass */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass memberClass
         8: .line 347
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         9: .line 353
            aload 4 /* candidates */
            invokestatic org.springframework.core.OrderComparator.sort:(Ljava/util/List;)V
        10: .line 354
            aload 4 /* candidates */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 22
      StackMap locals:
      StackMap stack:
        11: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            astore 5 /* candidate */
        start local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass candidate
        12: .line 355
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.contains:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 356
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.problemReporter:Lorg/springframework/beans/factory/parsing/ProblemReporter;
            new org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem
            dup
            aload 1 /* configClass */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem.<init>:(Lorg/springframework/context/annotation/ConfigurationClass;Ljava/util/Deque;)V
            invokeinterface org.springframework.beans.factory.parsing.ProblemReporter.error:(Lorg/springframework/beans/factory/parsing/Problem;)V
        14: .line 357
            goto 22
        15: .line 359
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection java.util.List org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.push:(Ljava/lang/Object;)V
        16: .line 361
            aload 0 /* this */
            aload 5 /* candidate */
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.asConfigClass:(Lorg/springframework/context/annotation/ConfigurationClass;)Lorg/springframework/context/annotation/ConfigurationClass;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;)V
        17: .line 362
            goto 21
        18: .line 363
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        19: .line 364
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.pop:()Ljava/lang/Object;
            pop
        20: .line 365
            aload 7
            athrow
        21: .line 364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.pop:()Ljava/lang/Object;
            pop
        end local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass candidate
        22: .line 354
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        end local 4 // java.util.List candidates
        23: .line 369
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection
      StackMap stack:
            return
        end local 3 // java.util.Collection memberClasses
        end local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   24     0           this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   24     1    configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            0   24     2    sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            1   24     3  memberClasses  Ljava/util/Collection<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            3   23     4     candidates  Ljava/util/List<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            5    8     5    memberClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
           12   22     5      candidate  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
      Exception table:
        from    to  target  type
          16    18      18  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      configClass  
      sourceClass  

  private void processInterfaces(org.springframework.context.annotation.ConfigurationClass, org.springframework.context.annotation.ConfigurationClassParser$SourceClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        start local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
         0: .line 375
            aload 2 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getInterfaces:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            astore 3 /* ifc */
        start local 3 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass ifc
         2: .line 376
            aload 0 /* this */
            aload 3 /* ifc */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.retrieveBeanMethodMetadata:(Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set;
            astore 5 /* beanMethods */
        start local 5 // java.util.Set beanMethods
         3: .line 377
            aload 5 /* beanMethods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 7
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.type.MethodMetadata
            astore 6 /* methodMetadata */
        start local 6 // org.springframework.core.type.MethodMetadata methodMetadata
         5: .line 378
            aload 6 /* methodMetadata */
            invokeinterface org.springframework.core.type.MethodMetadata.isAbstract:()Z
            ifne 7
         6: .line 380
            aload 1 /* configClass */
            new org.springframework.context.annotation.BeanMethod
            dup
            aload 6 /* methodMetadata */
            aload 1 /* configClass */
            invokespecial org.springframework.context.annotation.BeanMethod.<init>:(Lorg/springframework/core/type/MethodMetadata;Lorg/springframework/context/annotation/ConfigurationClass;)V
            invokevirtual org.springframework.context.annotation.ConfigurationClass.addBeanMethod:(Lorg/springframework/context/annotation/BeanMethod;)V
        end local 6 // org.springframework.core.type.MethodMetadata methodMetadata
         7: .line 377
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 383
            aload 0 /* this */
            aload 1 /* configClass */
            aload 3 /* ifc */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processInterfaces:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)V
        end local 5 // java.util.Set beanMethods
        end local 3 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass ifc
         9: .line 375
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        10: .line 385
            return
        end local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   11     1     configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            0   11     2     sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            2    9     3             ifc  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            3    9     5     beanMethods  Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
            5    7     6  methodMetadata  Lorg/springframework/core/type/MethodMetadata;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      configClass  
      sourceClass  

  private java.util.Set<org.springframework.core.type.MethodMetadata> retrieveBeanMethodMetadata(org.springframework.context.annotation.ConfigurationClassParser$SourceClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=11, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
         0: .line 391
            aload 1 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            astore 2 /* original */
        start local 2 // org.springframework.core.type.AnnotationMetadata original
         1: .line 392
            aload 2 /* original */
            ldc Lorg/springframework/context/annotation/Bean;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getAnnotatedMethods:(Ljava/lang/String;)Ljava/util/Set;
            astore 3 /* beanMethods */
        start local 3 // java.util.Set beanMethods
         2: .line 393
            aload 3 /* beanMethods */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmple 22
            aload 2 /* original */
            instanceof org.springframework.core.type.StandardAnnotationMetadata
            ifeq 22
         3: .line 399
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
            aload 2 /* original */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokeinterface org.springframework.core.type.classreading.MetadataReaderFactory.getMetadataReader:(Ljava/lang/String;)Lorg/springframework/core/type/classreading/MetadataReader;
            invokeinterface org.springframework.core.type.classreading.MetadataReader.getAnnotationMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
         4: .line 398
            astore 4 /* asm */
        start local 4 // org.springframework.core.type.AnnotationMetadata asm
         5: .line 400
            aload 4 /* asm */
            ldc Lorg/springframework/context/annotation/Bean;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getAnnotatedMethods:(Ljava/lang/String;)Ljava/util/Set;
            astore 5 /* asmMethods */
        start local 5 // java.util.Set asmMethods
         6: .line 401
            aload 5 /* asmMethods */
            invokeinterface java.util.Set.size:()I
            aload 3 /* beanMethods */
            invokeinterface java.util.Set.size:()I
            if_icmplt 22
         7: .line 402
            new java.util.LinkedHashSet
            dup
            aload 5 /* asmMethods */
            invokeinterface java.util.Set.size:()I
            invokespecial java.util.LinkedHashSet.<init>:(I)V
            astore 6 /* selectedMethods */
        start local 6 // java.util.Set selectedMethods
         8: .line 403
            aload 5 /* asmMethods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 16
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.core.type.AnnotationMetadata java.util.Set org.springframework.core.type.AnnotationMetadata java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         9: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.type.MethodMetadata
            astore 7 /* asmMethod */
        start local 7 // org.springframework.core.type.MethodMetadata asmMethod
        10: .line 404
            aload 3 /* beanMethods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 15
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.core.type.AnnotationMetadata java.util.Set org.springframework.core.type.AnnotationMetadata java.util.Set java.util.Set org.springframework.core.type.MethodMetadata java.util.Iterator top java.util.Iterator
      StackMap stack:
        11: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.core.type.MethodMetadata
            astore 9 /* beanMethod */
        start local 9 // org.springframework.core.type.MethodMetadata beanMethod
        12: .line 405
            aload 9 /* beanMethod */
            invokeinterface org.springframework.core.type.MethodMetadata.getMethodName:()Ljava/lang/String;
            aload 7 /* asmMethod */
            invokeinterface org.springframework.core.type.MethodMetadata.getMethodName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 406
            aload 6 /* selectedMethods */
            aload 9 /* beanMethod */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        14: .line 407
            goto 16
        end local 9 // org.springframework.core.type.MethodMetadata beanMethod
        15: .line 404
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        end local 7 // org.springframework.core.type.MethodMetadata asmMethod
        16: .line 403
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.core.type.AnnotationMetadata java.util.Set org.springframework.core.type.AnnotationMetadata java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        17: .line 411
            aload 6 /* selectedMethods */
            invokeinterface java.util.Set.size:()I
            aload 3 /* beanMethods */
            invokeinterface java.util.Set.size:()I
            if_icmpne 22
        18: .line 413
            aload 6 /* selectedMethods */
            astore 3 /* beanMethods */
        end local 6 // java.util.Set selectedMethods
        end local 5 // java.util.Set asmMethods
        end local 4 // org.springframework.core.type.AnnotationMetadata asm
        19: .line 416
            goto 22
        20: .line 417
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass org.springframework.core.type.AnnotationMetadata java.util.Set
      StackMap stack: java.io.IOException
            astore 4 /* ex */
        start local 4 // java.io.IOException ex
        21: .line 418
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.logger:Lorg/apache/commons/logging/Log;
            ldc "Failed to read class file via ASM for determining @Bean method order"
            aload 4 /* ex */
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 4 // java.io.IOException ex
        22: .line 422
      StackMap locals:
      StackMap stack:
            aload 3 /* beanMethods */
            areturn
        end local 3 // java.util.Set beanMethods
        end local 2 // org.springframework.core.type.AnnotationMetadata original
        end local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   23     0             this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   23     1      sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            1   23     2         original  Lorg/springframework/core/type/AnnotationMetadata;
            2   23     3      beanMethods  Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
            5   19     4              asm  Lorg/springframework/core/type/AnnotationMetadata;
            6   19     5       asmMethods  Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
            8   19     6  selectedMethods  Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
           10   16     7        asmMethod  Lorg/springframework/core/type/MethodMetadata;
           12   15     9       beanMethod  Lorg/springframework/core/type/MethodMetadata;
           21   22     4               ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3    19      20  Class java.io.IOException
    Signature: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set<Lorg/springframework/core/type/MethodMetadata;>;
    MethodParameters:
             Name  Flags
      sourceClass  

  private void processPropertySource(org.springframework.core.annotation.AnnotationAttributes);
    descriptor: (Lorg/springframework/core/annotation/AnnotationAttributes;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=14, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.core.annotation.AnnotationAttributes propertySource
         0: .line 432
            aload 1 /* propertySource */
            ldc "name"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 433
            aload 2 /* name */
            invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
            ifne 3
         2: .line 434
            aconst_null
            astore 2 /* name */
         3: .line 436
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* propertySource */
            ldc "encoding"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* encoding */
        start local 3 // java.lang.String encoding
         4: .line 437
            aload 3 /* encoding */
            invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
            ifne 6
         5: .line 438
            aconst_null
            astore 3 /* encoding */
         6: .line 440
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* propertySource */
            ldc "value"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getStringArray:(Ljava/lang/String;)[Ljava/lang/String;
            astore 4 /* locations */
        start local 4 // java.lang.String[] locations
         7: .line 441
            aload 4 /* locations */
            arraylength
            ifle 8
            iconst_1
            goto 9
      StackMap locals: java.lang.String[]
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: ldc "At least one @PropertySource(value) location is required"
            invokestatic org.springframework.util.Assert.isTrue:(ZLjava/lang/String;)V
        10: .line 442
            aload 1 /* propertySource */
            ldc "ignoreResourceNotFound"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getBoolean:(Ljava/lang/String;)Z
            istore 5 /* ignoreResourceNotFound */
        start local 5 // boolean ignoreResourceNotFound
        11: .line 444
            aload 1 /* propertySource */
            ldc "factory"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.getClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 6 /* factoryClass */
        start local 6 // java.lang.Class factoryClass
        12: .line 445
            aload 6 /* factoryClass */
            ldc Lorg/springframework/core/io/support/PropertySourceFactory;
            if_acmpne 14
        13: .line 446
            getstatic org.springframework.context.annotation.ConfigurationClassParser.DEFAULT_PROPERTY_SOURCE_FACTORY:Lorg/springframework/core/io/support/PropertySourceFactory;
            goto 15
      StackMap locals: int java.lang.Class
      StackMap stack:
        14: aload 6 /* factoryClass */
            invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.springframework.core.io.support.PropertySourceFactory
        15: .line 445
      StackMap locals:
      StackMap stack: org.springframework.core.io.support.PropertySourceFactory
            astore 7 /* factory */
        start local 7 // org.springframework.core.io.support.PropertySourceFactory factory
        16: .line 448
            aload 4 /* locations */
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 29
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.core.annotation.AnnotationAttributes java.lang.String java.lang.String java.lang.String[] int java.lang.Class org.springframework.core.io.support.PropertySourceFactory top int int java.lang.String[]
      StackMap stack:
        17: aload 11
            iload 9
            aaload
            astore 8 /* location */
        start local 8 // java.lang.String location
        18: .line 450
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            aload 8 /* location */
            invokeinterface org.springframework.core.env.Environment.resolveRequiredPlaceholders:(Ljava/lang/String;)Ljava/lang/String;
            astore 12 /* resolvedLocation */
        start local 12 // java.lang.String resolvedLocation
        19: .line 451
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
            aload 12 /* resolvedLocation */
            invokeinterface org.springframework.core.io.ResourceLoader.getResource:(Ljava/lang/String;)Lorg/springframework/core/io/Resource;
            astore 13 /* resource */
        start local 13 // org.springframework.core.io.Resource resource
        20: .line 452
            aload 0 /* this */
            aload 7 /* factory */
            aload 2 /* name */
            new org.springframework.core.io.support.EncodedResource
            dup
            aload 13 /* resource */
            aload 3 /* encoding */
            invokespecial org.springframework.core.io.support.EncodedResource.<init>:(Lorg/springframework/core/io/Resource;Ljava/lang/String;)V
            invokeinterface org.springframework.core.io.support.PropertySourceFactory.createPropertySource:(Ljava/lang/String;Lorg/springframework/core/io/support/EncodedResource;)Lorg/springframework/core/env/PropertySource;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.addPropertySource:(Lorg/springframework/core/env/PropertySource;)V
        end local 13 // org.springframework.core.io.Resource resource
        end local 12 // java.lang.String resolvedLocation
        21: .line 453
            goto 28
        22: .line 454
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.core.annotation.AnnotationAttributes java.lang.String java.lang.String java.lang.String[] int java.lang.Class org.springframework.core.io.support.PropertySourceFactory java.lang.String int int java.lang.String[]
      StackMap stack: java.lang.Exception
            astore 12 /* ex */
        start local 12 // java.lang.Exception ex
        23: .line 456
            iload 5 /* ignoreResourceNotFound */
            ifeq 27
        24: .line 457
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isInfoEnabled:()Z
            ifeq 28
        25: .line 458
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Properties location ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* location */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] not resolvable: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 12 /* ex */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
        26: .line 460
            goto 28
        27: .line 462
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 12 /* ex */
            athrow
        end local 12 // java.lang.Exception ex
        end local 8 // java.lang.String location
        28: .line 448
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.core.annotation.AnnotationAttributes java.lang.String java.lang.String java.lang.String[] int java.lang.Class org.springframework.core.io.support.PropertySourceFactory top int int java.lang.String[]
      StackMap stack:
            iinc 9 1
      StackMap locals:
      StackMap stack:
        29: iload 9
            iload 10
            if_icmplt 17
        30: .line 466
            return
        end local 7 // org.springframework.core.io.support.PropertySourceFactory factory
        end local 6 // java.lang.Class factoryClass
        end local 5 // boolean ignoreResourceNotFound
        end local 4 // java.lang.String[] locations
        end local 3 // java.lang.String encoding
        end local 2 // java.lang.String name
        end local 1 // org.springframework.core.annotation.AnnotationAttributes propertySource
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   31     0                    this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   31     1          propertySource  Lorg/springframework/core/annotation/AnnotationAttributes;
            1   31     2                    name  Ljava/lang/String;
            4   31     3                encoding  Ljava/lang/String;
            7   31     4               locations  [Ljava/lang/String;
           11   31     5  ignoreResourceNotFound  Z
           12   31     6            factoryClass  Ljava/lang/Class<+Lorg/springframework/core/io/support/PropertySourceFactory;>;
           16   31     7                 factory  Lorg/springframework/core/io/support/PropertySourceFactory;
           18   28     8                location  Ljava/lang/String;
           19   21    12        resolvedLocation  Ljava/lang/String;
           20   21    13                resource  Lorg/springframework/core/io/Resource;
           23   28    12                      ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          18    21      22  Class java.lang.IllegalArgumentException
          18    21      22  Class java.io.FileNotFoundException
          18    21      22  Class java.net.UnknownHostException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      propertySource  

  private void addPropertySource(org.springframework.core.env.PropertySource<?>);
    descriptor: (Lorg/springframework/core/env/PropertySource;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.core.env.PropertySource propertySource
         0: .line 469
            aload 1 /* propertySource */
            invokevirtual org.springframework.core.env.PropertySource.getName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 470
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            checkcast org.springframework.core.env.ConfigurableEnvironment
            invokeinterface org.springframework.core.env.ConfigurableEnvironment.getPropertySources:()Lorg/springframework/core/env/MutablePropertySources;
            astore 3 /* propertySources */
        start local 3 // org.springframework.core.env.MutablePropertySources propertySources
         2: .line 472
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
            aload 2 /* name */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 19
         3: .line 474
            aload 3 /* propertySources */
            aload 2 /* name */
            invokevirtual org.springframework.core.env.MutablePropertySources.get:(Ljava/lang/String;)Lorg/springframework/core/env/PropertySource;
            astore 4 /* existing */
        start local 4 // org.springframework.core.env.PropertySource existing
         4: .line 475
            aload 4 /* existing */
            ifnull 19
         5: .line 476
            aload 1 /* propertySource */
            instanceof org.springframework.core.io.support.ResourcePropertySource
            ifeq 7
         6: .line 477
            aload 1 /* propertySource */
            checkcast org.springframework.core.io.support.ResourcePropertySource
            invokevirtual org.springframework.core.io.support.ResourcePropertySource.withResourceName:()Lorg/springframework/core/io/support/ResourcePropertySource;
            goto 8
      StackMap locals: java.lang.String org.springframework.core.env.MutablePropertySources org.springframework.core.env.PropertySource
      StackMap stack:
         7: aload 1 /* propertySource */
         8: .line 476
      StackMap locals:
      StackMap stack: org.springframework.core.env.PropertySource
            astore 5 /* newSource */
        start local 5 // org.springframework.core.env.PropertySource newSource
         9: .line 478
            aload 4 /* existing */
            instanceof org.springframework.core.env.CompositePropertySource
            ifeq 12
        10: .line 479
            aload 4 /* existing */
            checkcast org.springframework.core.env.CompositePropertySource
            aload 5 /* newSource */
            invokevirtual org.springframework.core.env.CompositePropertySource.addFirstPropertySource:(Lorg/springframework/core/env/PropertySource;)V
        11: .line 480
            goto 18
        12: .line 482
      StackMap locals: org.springframework.core.env.PropertySource
      StackMap stack:
            aload 4 /* existing */
            instanceof org.springframework.core.io.support.ResourcePropertySource
            ifeq 14
        13: .line 483
            aload 4 /* existing */
            checkcast org.springframework.core.io.support.ResourcePropertySource
            invokevirtual org.springframework.core.io.support.ResourcePropertySource.withResourceName:()Lorg/springframework/core/io/support/ResourcePropertySource;
            astore 4 /* existing */
        14: .line 485
      StackMap locals:
      StackMap stack:
            new org.springframework.core.env.CompositePropertySource
            dup
            aload 2 /* name */
            invokespecial org.springframework.core.env.CompositePropertySource.<init>:(Ljava/lang/String;)V
            astore 6 /* composite */
        start local 6 // org.springframework.core.env.CompositePropertySource composite
        15: .line 486
            aload 6 /* composite */
            aload 5 /* newSource */
            invokevirtual org.springframework.core.env.CompositePropertySource.addPropertySource:(Lorg/springframework/core/env/PropertySource;)V
        16: .line 487
            aload 6 /* composite */
            aload 4 /* existing */
            invokevirtual org.springframework.core.env.CompositePropertySource.addPropertySource:(Lorg/springframework/core/env/PropertySource;)V
        17: .line 488
            aload 3 /* propertySources */
            aload 2 /* name */
            aload 6 /* composite */
            invokevirtual org.springframework.core.env.MutablePropertySources.replace:(Ljava/lang/String;Lorg/springframework/core/env/PropertySource;)V
        end local 6 // org.springframework.core.env.CompositePropertySource composite
        18: .line 490
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.springframework.core.env.PropertySource newSource
        end local 4 // org.springframework.core.env.PropertySource existing
        19: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 22
        20: .line 495
            aload 3 /* propertySources */
            aload 1 /* propertySource */
            invokevirtual org.springframework.core.env.MutablePropertySources.addLast:(Lorg/springframework/core/env/PropertySource;)V
        21: .line 496
            goto 24
        22: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* firstProcessed */
        start local 4 // java.lang.String firstProcessed
        23: .line 499
            aload 3 /* propertySources */
            aload 4 /* firstProcessed */
            aload 1 /* propertySource */
            invokevirtual org.springframework.core.env.MutablePropertySources.addBefore:(Ljava/lang/String;Lorg/springframework/core/env/PropertySource;)V
        end local 4 // java.lang.String firstProcessed
        24: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.propertySourceNames:Ljava/util/List;
            aload 2 /* name */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 502
            return
        end local 3 // org.springframework.core.env.MutablePropertySources propertySources
        end local 2 // java.lang.String name
        end local 1 // org.springframework.core.env.PropertySource propertySource
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   26     0             this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   26     1   propertySource  Lorg/springframework/core/env/PropertySource<*>;
            1   26     2             name  Ljava/lang/String;
            2   26     3  propertySources  Lorg/springframework/core/env/MutablePropertySources;
            4   19     4         existing  Lorg/springframework/core/env/PropertySource<*>;
            9   19     5        newSource  Lorg/springframework/core/env/PropertySource<*>;
           15   18     6        composite  Lorg/springframework/core/env/CompositePropertySource;
           23   24     4   firstProcessed  Ljava/lang/String;
    Signature: (Lorg/springframework/core/env/PropertySource<*>;)V
    MethodParameters:
                Name  Flags
      propertySource  

  private java.util.Set<org.springframework.context.annotation.ConfigurationClassParser$SourceClass> getImports(org.springframework.context.annotation.ConfigurationClassParser$SourceClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
         0: .line 509
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 2 /* imports */
        start local 2 // java.util.Set imports
         1: .line 510
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 3 /* visited */
        start local 3 // java.util.Set visited
         2: .line 511
            aload 0 /* this */
            aload 1 /* sourceClass */
            aload 2 /* imports */
            aload 3 /* visited */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.collectImports:(Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Set;Ljava/util/Set;)V
         3: .line 512
            aload 2 /* imports */
            areturn
        end local 3 // java.util.Set visited
        end local 2 // java.util.Set imports
        end local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    4     1  sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            1    4     2      imports  Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            2    4     3      visited  Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;)Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
    MethodParameters:
             Name  Flags
      sourceClass  

  private void collectImports(org.springframework.context.annotation.ConfigurationClassParser$SourceClass, java.util.Set<org.springframework.context.annotation.ConfigurationClassParser$SourceClass>, java.util.Set<org.springframework.context.annotation.ConfigurationClassParser$SourceClass>);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Set;Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        start local 2 // java.util.Set imports
        start local 3 // java.util.Set visited
         0: .line 531
            aload 3 /* visited */
            aload 1 /* sourceClass */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 8
         1: .line 532
            aload 1 /* sourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getAnnotations:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            astore 4 /* annotation */
        start local 4 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass annotation
         3: .line 533
            aload 4 /* annotation */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            astore 6 /* annName */
        start local 6 // java.lang.String annName
         4: .line 534
            aload 6 /* annName */
            ldc "java"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 6
            aload 6 /* annName */
            ldc Lorg/springframework/context/annotation/Import;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 535
            aload 0 /* this */
            aload 4 /* annotation */
            aload 2 /* imports */
            aload 3 /* visited */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.collectImports:(Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Set;Ljava/util/Set;)V
        end local 6 // java.lang.String annName
        end local 4 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass annotation
         6: .line 532
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 538
            aload 2 /* imports */
            aload 1 /* sourceClass */
            ldc Lorg/springframework/context/annotation/Import;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "value"
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getAnnotationAttributes:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Collection;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 540
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Set java.util.Set
      StackMap stack:
            return
        end local 3 // java.util.Set visited
        end local 2 // java.util.Set imports
        end local 1 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass sourceClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    9     1  sourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            0    9     2      imports  Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            0    9     3      visited  Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            3    6     4   annotation  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            4    6     6      annName  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    Signature: (Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;Ljava/util/Set<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;)V
    MethodParameters:
             Name  Flags
      sourceClass  
      imports      
      visited      

  private void processImports(org.springframework.context.annotation.ConfigurationClass, org.springframework.context.annotation.ConfigurationClassParser$SourceClass, java.util.Collection<org.springframework.context.annotation.ConfigurationClassParser$SourceClass>, );
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Collection;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=5
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        start local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass currentSourceClass
        start local 3 // java.util.Collection importCandidates
        start local 4 // boolean checkForCircularImports
         0: .line 547
            aload 3 /* importCandidates */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 2
         1: .line 548
            return
         2: .line 551
      StackMap locals:
      StackMap stack:
            iload 4 /* checkForCircularImports */
            ifeq 5
            aload 0 /* this */
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.isChainedImportOnStack:(Lorg/springframework/context/annotation/ConfigurationClass;)Z
            ifeq 5
         3: .line 552
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.problemReporter:Lorg/springframework/beans/factory/parsing/ProblemReporter;
            new org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem
            dup
            aload 1 /* configClass */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem.<init>:(Lorg/springframework/context/annotation/ConfigurationClass;Ljava/util/Deque;)V
            invokeinterface org.springframework.beans.factory.parsing.ProblemReporter.error:(Lorg/springframework/beans/factory/parsing/Problem;)V
         4: .line 553
            goto 49
         5: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.push:(Ljava/lang/Object;)V
         6: .line 557
            aload 3 /* importCandidates */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 34
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection int top java.util.Iterator
      StackMap stack:
         7: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            astore 5 /* candidate */
        start local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass candidate
         8: .line 558
            aload 5 /* candidate */
            ldc Lorg/springframework/context/annotation/ImportSelector;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.isAssignable:(Ljava/lang/Class;)Z
            ifeq 22
         9: .line 560
            aload 5 /* candidate */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.loadClass:()Ljava/lang/Class;
            astore 7 /* candidateClass */
        start local 7 // java.lang.Class candidateClass
        10: .line 561
            aload 7 /* candidateClass */
            ldc Lorg/springframework/context/annotation/ImportSelector;
            invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ImportSelector
            astore 8 /* selector */
        start local 8 // org.springframework.context.annotation.ImportSelector selector
        11: .line 563
            aload 8 /* selector */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.registry:Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
        12: .line 562
            invokestatic org.springframework.context.annotation.ParserStrategyUtils.invokeAwareMethods:(Ljava/lang/Object;Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
        13: .line 564
            aload 8 /* selector */
            instanceof org.springframework.context.annotation.DeferredImportSelector
            ifeq 18
        14: .line 565
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.deferredImportSelectorHandler:Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHandler;
        15: .line 566
            aload 1 /* configClass */
            aload 8 /* selector */
            checkcast org.springframework.context.annotation.DeferredImportSelector
        16: .line 565
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler.handle:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/DeferredImportSelector;)V
        17: .line 567
            goto 34
        18: .line 569
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection int org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Iterator java.lang.Class org.springframework.context.annotation.ImportSelector
      StackMap stack:
            aload 8 /* selector */
            aload 2 /* currentSourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.context.annotation.ImportSelector.selectImports:(Lorg/springframework/core/type/AnnotationMetadata;)[Ljava/lang/String;
            astore 9 /* importClassNames */
        start local 9 // java.lang.String[] importClassNames
        19: .line 570
            aload 0 /* this */
            aload 9 /* importClassNames */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClasses:([Ljava/lang/String;)Ljava/util/Collection;
            astore 10 /* importSourceClasses */
        start local 10 // java.util.Collection importSourceClasses
        20: .line 571
            aload 0 /* this */
            aload 1 /* configClass */
            aload 2 /* currentSourceClass */
            aload 10 /* importSourceClasses */
            iconst_0
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processImports:(Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Collection;Z)V
        end local 10 // java.util.Collection importSourceClasses
        end local 9 // java.lang.String[] importClassNames
        end local 8 // org.springframework.context.annotation.ImportSelector selector
        end local 7 // java.lang.Class candidateClass
        21: .line 573
            goto 34
        22: .line 574
      StackMap locals:
      StackMap stack:
            aload 5 /* candidate */
            ldc Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.isAssignable:(Ljava/lang/Class;)Z
            ifeq 30
        23: .line 577
            aload 5 /* candidate */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.loadClass:()Ljava/lang/Class;
            astore 7 /* candidateClass */
        start local 7 // java.lang.Class candidateClass
        24: .line 579
            aload 7 /* candidateClass */
            ldc Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;
            invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.springframework.context.annotation.ImportBeanDefinitionRegistrar
        25: .line 578
            astore 8 /* registrar */
        start local 8 // org.springframework.context.annotation.ImportBeanDefinitionRegistrar registrar
        26: .line 581
            aload 8 /* registrar */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.environment:Lorg/springframework/core/env/Environment;
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.registry:Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
        27: .line 580
            invokestatic org.springframework.context.annotation.ParserStrategyUtils.invokeAwareMethods:(Ljava/lang/Object;Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
        28: .line 582
            aload 1 /* configClass */
            aload 8 /* registrar */
            aload 2 /* currentSourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokevirtual org.springframework.context.annotation.ConfigurationClass.addImportBeanDefinitionRegistrar:(Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;Lorg/springframework/core/type/AnnotationMetadata;)V
        end local 8 // org.springframework.context.annotation.ImportBeanDefinitionRegistrar registrar
        end local 7 // java.lang.Class candidateClass
        29: .line 583
            goto 34
        30: .line 587
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
        31: .line 588
            aload 2 /* currentSourceClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            aload 5 /* candidate */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
        32: .line 587
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.registerImport:(Lorg/springframework/core/type/AnnotationMetadata;Ljava/lang/String;)V
        33: .line 589
            aload 0 /* this */
            aload 5 /* candidate */
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$SourceClass.asConfigClass:(Lorg/springframework/context/annotation/ConfigurationClass;)Lorg/springframework/context/annotation/ConfigurationClass;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass:(Lorg/springframework/context/annotation/ConfigurationClass;)V
        end local 5 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass candidate
        34: .line 557
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        35: .line 592
            goto 48
        36: .line 593
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser org.springframework.context.annotation.ConfigurationClass org.springframework.context.annotation.ConfigurationClassParser$SourceClass java.util.Collection int
      StackMap stack: org.springframework.beans.factory.BeanDefinitionStoreException
            astore 5 /* ex */
        start local 5 // org.springframework.beans.factory.BeanDefinitionStoreException ex
        37: .line 594
            aload 5 /* ex */
            athrow
        end local 5 // org.springframework.beans.factory.BeanDefinitionStoreException ex
        38: .line 596
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5 /* ex */
        start local 5 // java.lang.Throwable ex
        39: .line 597
            new org.springframework.beans.factory.BeanDefinitionStoreException
            dup
        40: .line 598
            new java.lang.StringBuilder
            dup
            ldc "Failed to process import candidates for configuration class ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        41: .line 599
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 598
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        43: .line 599
            aload 5 /* ex */
        44: .line 597
            invokespecial org.springframework.beans.factory.BeanDefinitionStoreException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.lang.Throwable ex
        45: .line 601
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        46: .line 602
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.pop:()Ljava/lang/Object;
            pop
        47: .line 603
            aload 11
            athrow
        48: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.pop:()Ljava/lang/Object;
            pop
        49: .line 605
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean checkForCircularImports
        end local 3 // java.util.Collection importCandidates
        end local 2 // org.springframework.context.annotation.ConfigurationClassParser$SourceClass currentSourceClass
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   50     0                     this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   50     1              configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            0   50     2       currentSourceClass  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            0   50     3         importCandidates  Ljava/util/Collection<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            0   50     4  checkForCircularImports  Z
            8   34     5                candidate  Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
           10   21     7           candidateClass  Ljava/lang/Class<*>;
           11   21     8                 selector  Lorg/springframework/context/annotation/ImportSelector;
           19   21     9         importClassNames  [Ljava/lang/String;
           20   21    10      importSourceClasses  Ljava/util/Collection<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
           24   29     7           candidateClass  Ljava/lang/Class<*>;
           26   29     8                registrar  Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;
           37   38     5                       ex  Lorg/springframework/beans/factory/BeanDefinitionStoreException;
           39   45     5                       ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           6    35      36  Class org.springframework.beans.factory.BeanDefinitionStoreException
           6    35      38  Class java.lang.Throwable
           6    45      45  any
    Signature: (Lorg/springframework/context/annotation/ConfigurationClass;Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;Ljava/util/Collection<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;Z)V
    MethodParameters:
                         Name  Flags
      configClass              
      currentSourceClass       
      importCandidates         
      checkForCircularImports  

  private boolean isChainedImportOnStack(org.springframework.context.annotation.ConfigurationClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configClass
         0: .line 608
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.contains:(Ljava/lang/Object;)Z
            ifeq 8
         1: .line 609
            aload 1 /* configClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            astore 2 /* configClassName */
        start local 2 // java.lang.String configClassName
         2: .line 610
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 2 /* configClassName */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.getImportingClassFor:(Ljava/lang/String;)Lorg/springframework/core/type/AnnotationMetadata;
            astore 3 /* importingClass */
        start local 3 // org.springframework.core.type.AnnotationMetadata importingClass
         3: .line 611
            goto 7
         4: .line 612
      StackMap locals: java.lang.String org.springframework.core.type.AnnotationMetadata
      StackMap stack:
            aload 2 /* configClassName */
            aload 3 /* importingClass */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 613
            iconst_1
            ireturn
         6: .line 615
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            aload 3 /* importingClass */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$ImportStack.getImportingClassFor:(Ljava/lang/String;)Lorg/springframework/core/type/AnnotationMetadata;
            astore 3 /* importingClass */
         7: .line 611
      StackMap locals:
      StackMap stack:
            aload 3 /* importingClass */
            ifnonnull 4
        end local 3 // org.springframework.core.type.AnnotationMetadata importingClass
        end local 2 // java.lang.String configClassName
         8: .line 618
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.springframework.context.annotation.ConfigurationClass configClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0             this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    9     1      configClass  Lorg/springframework/context/annotation/ConfigurationClass;
            2    8     2  configClassName  Ljava/lang/String;
            3    8     3   importingClass  Lorg/springframework/core/type/AnnotationMetadata;
    MethodParameters:
             Name  Flags
      configClass  

  org.springframework.context.annotation.ImportRegistry getImportRegistry();
    descriptor: ()Lorg/springframework/context/annotation/ImportRegistry;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
         0: .line 622
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.importStack:Lorg/springframework/context/annotation/ConfigurationClassParser$ImportStack;
            areturn
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/context/annotation/ConfigurationClassParser;

  private org.springframework.context.annotation.ConfigurationClassParser$SourceClass asSourceClass(org.springframework.context.annotation.ConfigurationClass);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClass;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // org.springframework.context.annotation.ConfigurationClass configurationClass
         0: .line 630
            aload 1 /* configurationClass */
            invokevirtual org.springframework.context.annotation.ConfigurationClass.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
            astore 2 /* metadata */
        start local 2 // org.springframework.core.type.AnnotationMetadata metadata
         1: .line 631
            aload 2 /* metadata */
            instanceof org.springframework.core.type.StandardAnnotationMetadata
            ifeq 3
         2: .line 632
            aload 0 /* this */
            aload 2 /* metadata */
            checkcast org.springframework.core.type.StandardAnnotationMetadata
            invokevirtual org.springframework.core.type.StandardAnnotationMetadata.getIntrospectedClass:()Ljava/lang/Class;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClass:(Ljava/lang/Class;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            areturn
         3: .line 634
      StackMap locals: org.springframework.core.type.AnnotationMetadata
      StackMap stack:
            aload 0 /* this */
            aload 2 /* metadata */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClass:(Ljava/lang/String;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            areturn
        end local 2 // org.springframework.core.type.AnnotationMetadata metadata
        end local 1 // org.springframework.context.annotation.ConfigurationClass configurationClass
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    4     1  configurationClass  Lorg/springframework/context/annotation/ConfigurationClass;
            1    4     2            metadata  Lorg/springframework/core/type/AnnotationMetadata;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                    Name  Flags
      configurationClass  

  org.springframework.context.annotation.ConfigurationClassParser$SourceClass asSourceClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.lang.Class classType
         0: .line 641
            aload 1 /* classType */
            ifnonnull 2
         1: .line 642
            new org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            dup
            aload 0 /* this */
            ldc Ljava/lang/Object;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$SourceClass.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;Ljava/lang/Object;)V
            areturn
         2: .line 647
      StackMap locals:
      StackMap stack:
            aload 1 /* classType */
            invokevirtual java.lang.Class.getAnnotations:()[Ljava/lang/annotation/Annotation;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.lang.Class top int int java.lang.annotation.Annotation[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* ann */
        start local 2 // java.lang.annotation.Annotation ann
         4: .line 648
            aload 2 /* ann */
            invokestatic org.springframework.core.annotation.AnnotationUtils.validateAnnotation:(Ljava/lang/annotation/Annotation;)V
        end local 2 // java.lang.annotation.Annotation ann
         5: .line 647
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 3
         7: .line 650
            new org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            dup
            aload 0 /* this */
            aload 1 /* classType */
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$SourceClass.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;Ljava/lang/Object;)V
         8: areturn
         9: .line 652
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.lang.Class
      StackMap stack: java.lang.Throwable
            pop
        10: .line 654
            aload 0 /* this */
            aload 1 /* classType */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClass:(Ljava/lang/String;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            areturn
        end local 1 // java.lang.Class classType
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0   11     1  classType  Ljava/lang/Class<*>;
            4    5     2        ann  Ljava/lang/annotation/Annotation;
      Exception table:
        from    to  target  type
           2     8       9  Class java.lang.Throwable
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/Class<*>;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
           Name  Flags
      classType  

  private java.util.Collection<org.springframework.context.annotation.ConfigurationClassParser$SourceClass> asSourceClasses(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/util/Collection;
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.lang.String[] classNames
         0: .line 662
            new java.util.ArrayList
            dup
            aload 1 /* classNames */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* annotatedClasses */
        start local 2 // java.util.List annotatedClasses
         1: .line 663
            aload 1 /* classNames */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.springframework.context.annotation.ConfigurationClassParser java.lang.String[] java.util.List top int int java.lang.String[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* className */
        start local 3 // java.lang.String className
         3: .line 664
            aload 2 /* annotatedClasses */
            aload 0 /* this */
            aload 3 /* className */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser.asSourceClass:(Ljava/lang/String;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String className
         4: .line 663
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 666
            aload 2 /* annotatedClasses */
            areturn
        end local 2 // java.util.List annotatedClasses
        end local 1 // java.lang.String[] classNames
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    7     1        classNames  [Ljava/lang/String;
            1    7     2  annotatedClasses  Ljava/util/List<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
            3    4     3         className  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    Signature: ([Ljava/lang/String;)Ljava/util/Collection<Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;>;
    MethodParameters:
            Name  Flags
      classNames  

  org.springframework.context.annotation.ConfigurationClassParser$SourceClass asSourceClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/springframework/context/annotation/ConfigurationClassParser$SourceClass;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser this
        start local 1 // java.lang.String className
         0: .line 673
            aload 1 /* className */
            ifnonnull 2
         1: .line 674
            new org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            dup
            aload 0 /* this */
            ldc Ljava/lang/Object;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$SourceClass.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;Ljava/lang/Object;)V
            areturn
         2: .line 676
      StackMap locals:
      StackMap stack:
            aload 1 /* className */
            ldc "java"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 7
         3: .line 679
            new org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            dup
            aload 0 /* this */
            aload 1 /* className */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
            invokeinterface org.springframework.core.io.ResourceLoader.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic org.springframework.util.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$SourceClass.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;Ljava/lang/Object;)V
         4: areturn
         5: .line 681
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            astore 2 /* ex */
        start local 2 // java.lang.ClassNotFoundException ex
         6: .line 682
            new org.springframework.core.NestedIOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to load class ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            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;
            aload 2 /* ex */
            invokespecial org.springframework.core.NestedIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.ClassNotFoundException ex
         7: .line 685
      StackMap locals:
      StackMap stack:
            new org.springframework.context.annotation.ConfigurationClassParser$SourceClass
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.springframework.context.annotation.ConfigurationClassParser.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
            aload 1 /* className */
            invokeinterface org.springframework.core.type.classreading.MetadataReaderFactory.getMetadataReader:(Ljava/lang/String;)Lorg/springframework/core/type/classreading/MetadataReader;
            invokespecial org.springframework.context.annotation.ConfigurationClassParser$SourceClass.<init>:(Lorg/springframework/context/annotation/ConfigurationClassParser;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.String className
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/springframework/context/annotation/ConfigurationClassParser;
            0    8     1  className  Ljava/lang/String;
            6    7     2         ex  Ljava/lang/ClassNotFoundException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
           Name  Flags
      className  

  private static int lambda$0(org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder, org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder);
    descriptor: (Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder o1
        start local 1 // org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder o2
         0: .line 113
            getstatic org.springframework.core.annotation.AnnotationAwareOrderComparator.INSTANCE:Lorg/springframework/core/annotation/AnnotationAwareOrderComparator;
            aload 0 /* o1 */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder.getImportSelector:()Lorg/springframework/context/annotation/DeferredImportSelector;
            aload 1 /* o2 */
            invokevirtual org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder.getImportSelector:()Lorg/springframework/context/annotation/DeferredImportSelector;
            invokevirtual org.springframework.core.annotation.AnnotationAwareOrderComparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ireturn
        end local 1 // org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder o2
        end local 0 // org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder o1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    o1  Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;
            0    1     1    o2  Lorg/springframework/context/annotation/ConfigurationClassParser$DeferredImportSelectorHolder;
}
SourceFile: "ConfigurationClassParser.java"
NestMembers:
  org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem  org.springframework.context.annotation.ConfigurationClassParser$DefaultDeferredImportSelectorGroup  org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGrouping  org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGroupingHandler  org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler  org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder  org.springframework.context.annotation.ConfigurationClassParser$ImportStack  org.springframework.context.annotation.ConfigurationClassParser$SourceClass
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private CircularImportProblem = org.springframework.context.annotation.ConfigurationClassParser$CircularImportProblem of org.springframework.context.annotation.ConfigurationClassParser
  private DefaultDeferredImportSelectorGroup = org.springframework.context.annotation.ConfigurationClassParser$DefaultDeferredImportSelectorGroup of org.springframework.context.annotation.ConfigurationClassParser
  private DeferredImportSelectorGrouping = org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGrouping of org.springframework.context.annotation.ConfigurationClassParser
  private DeferredImportSelectorGroupingHandler = org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGroupingHandler of org.springframework.context.annotation.ConfigurationClassParser
  private DeferredImportSelectorHandler = org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler of org.springframework.context.annotation.ConfigurationClassParser
  private DeferredImportSelectorHolder = org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHolder of org.springframework.context.annotation.ConfigurationClassParser
  private ImportStack = org.springframework.context.annotation.ConfigurationClassParser$ImportStack of org.springframework.context.annotation.ConfigurationClassParser
  private SourceClass = org.springframework.context.annotation.ConfigurationClassParser$SourceClass of org.springframework.context.annotation.ConfigurationClassParser
  public final ConfigurationPhase = org.springframework.context.annotation.ConfigurationCondition$ConfigurationPhase of org.springframework.context.annotation.ConfigurationCondition