public final class org.apache.lucene.analysis.util.AnalysisSPILoader<S extends org.apache.lucene.analysis.util.AbstractAnalysisFactory>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.lucene.analysis.util.AnalysisSPILoader
  super_class: java.lang.Object
{
  private volatile java.util.Map<java.lang.String, java.lang.Class<? extends S>> services;
    descriptor: Ljava/util/Map;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class<+TS;>;>;

  private final java.lang.Class<S> clazz;
    descriptor: Ljava/lang/Class;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/Class<TS;>;

  private final java.lang.String[] suffixes;
    descriptor: [Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(java.lang.Class<S>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.Class clazz
         0: .line 43
            aload 0 /* this */
            aload 1 /* clazz */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            invokespecial org.apache.lucene.analysis.util.AnalysisSPILoader.<init>:(Ljava/lang/Class;[Ljava/lang/String;)V
         1: .line 44
            return
        end local 1 // java.lang.Class clazz
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0    2     1  clazz  Ljava/lang/Class<TS;>;
    Signature: (Ljava/lang/Class<TS;>;)V
    MethodParameters:
       Name  Flags
      clazz  

  public void <init>(java.lang.Class<S>, java.lang.ClassLoader);
    descriptor: (Ljava/lang/Class;Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.ClassLoader loader
         0: .line 47
            aload 0 /* this */
            aload 1 /* clazz */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            aload 2 /* loader */
            invokespecial org.apache.lucene.analysis.util.AnalysisSPILoader.<init>:(Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/ClassLoader;)V
         1: .line 48
            return
        end local 2 // java.lang.ClassLoader loader
        end local 1 // java.lang.Class clazz
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0    2     1   clazz  Ljava/lang/Class<TS;>;
            0    2     2  loader  Ljava/lang/ClassLoader;
    Signature: (Ljava/lang/Class<TS;>;Ljava/lang/ClassLoader;)V
    MethodParameters:
        Name  Flags
      clazz   
      loader  

  public void <init>(java.lang.Class<S>, java.lang.String[]);
    descriptor: (Ljava/lang/Class;[Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String[] suffixes
         0: .line 51
            aload 0 /* this */
            aload 1 /* clazz */
            aload 2 /* suffixes */
            aconst_null
            invokespecial org.apache.lucene.analysis.util.AnalysisSPILoader.<init>:(Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/ClassLoader;)V
         1: .line 52
            return
        end local 2 // java.lang.String[] suffixes
        end local 1 // java.lang.Class clazz
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0    2     1     clazz  Ljava/lang/Class<TS;>;
            0    2     2  suffixes  [Ljava/lang/String;
    Signature: (Ljava/lang/Class<TS;>;[Ljava/lang/String;)V
    MethodParameters:
          Name  Flags
      clazz     
      suffixes  

  public void <init>(java.lang.Class<S>, java.lang.String[], java.lang.ClassLoader);
    descriptor: (Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String[] suffixes
        start local 3 // java.lang.ClassLoader classloader
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 38
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield org.apache.lucene.analysis.util.AnalysisSPILoader.services:Ljava/util/Map;
         2: .line 55
            aload 0 /* this */
            aload 1 /* clazz */
            putfield org.apache.lucene.analysis.util.AnalysisSPILoader.clazz:Ljava/lang/Class;
         3: .line 56
            aload 0 /* this */
            aload 2 /* suffixes */
            putfield org.apache.lucene.analysis.util.AnalysisSPILoader.suffixes:[Ljava/lang/String;
         4: .line 58
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 4 /* clazzClassloader */
        start local 4 // java.lang.ClassLoader clazzClassloader
         5: .line 59
            aload 3 /* classloader */
            ifnonnull 7
         6: .line 60
            aload 4 /* clazzClassloader */
            astore 3 /* classloader */
         7: .line 62
      StackMap locals: org.apache.lucene.analysis.util.AnalysisSPILoader java.lang.Class java.lang.String[] java.lang.ClassLoader java.lang.ClassLoader
      StackMap stack:
            aload 4 /* clazzClassloader */
            ifnull 9
            aload 4 /* clazzClassloader */
            aload 3 /* classloader */
            invokestatic org.apache.lucene.util.SPIClassIterator.isParentClassLoader:(Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Z
            ifne 9
         8: .line 63
            aload 0 /* this */
            aload 4 /* clazzClassloader */
            invokevirtual org.apache.lucene.analysis.util.AnalysisSPILoader.reload:(Ljava/lang/ClassLoader;)V
         9: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* classloader */
            invokevirtual org.apache.lucene.analysis.util.AnalysisSPILoader.reload:(Ljava/lang/ClassLoader;)V
        10: .line 66
            return
        end local 4 // java.lang.ClassLoader clazzClassloader
        end local 3 // java.lang.ClassLoader classloader
        end local 2 // java.lang.String[] suffixes
        end local 1 // java.lang.Class clazz
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0   11     1             clazz  Ljava/lang/Class<TS;>;
            0   11     2          suffixes  [Ljava/lang/String;
            0   11     3       classloader  Ljava/lang/ClassLoader;
            5   11     4  clazzClassloader  Ljava/lang/ClassLoader;
    Signature: (Ljava/lang/Class<TS;>;[Ljava/lang/String;Ljava/lang/ClassLoader;)V
    MethodParameters:
             Name  Flags
      clazz        
      suffixes     
      classloader  

  public synchronized void reload(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.ClassLoader classloader
         0: .line 80
            aload 1 /* classloader */
            ldc "classloader"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 82
            new java.util.LinkedHashMap
            dup
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.services:Ljava/util/Map;
            invokespecial java.util.LinkedHashMap.<init>:(Ljava/util/Map;)V
         2: .line 81
            astore 2 /* services */
        start local 2 // java.util.LinkedHashMap services
         3: .line 83
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.clazz:Ljava/lang/Class;
            aload 1 /* classloader */
            invokestatic org.apache.lucene.util.SPIClassIterator.get:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Lorg/apache/lucene/util/SPIClassIterator;
            astore 3 /* loader */
        start local 3 // org.apache.lucene.util.SPIClassIterator loader
         4: .line 84
            goto 21
         5: .line 85
      StackMap locals: java.util.LinkedHashMap org.apache.lucene.util.SPIClassIterator
      StackMap stack:
            aload 3 /* loader */
            invokevirtual org.apache.lucene.util.SPIClassIterator.next:()Ljava/lang/Class;
            astore 4 /* service */
        start local 4 // java.lang.Class service
         6: .line 86
            aload 4 /* service */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            astore 5 /* clazzName */
        start local 5 // java.lang.String clazzName
         7: .line 87
            aconst_null
            astore 6 /* name */
        start local 6 // java.lang.String name
         8: .line 88
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.suffixes:[Ljava/lang/String;
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 14
      StackMap locals: org.apache.lucene.analysis.util.AnalysisSPILoader java.lang.ClassLoader java.util.LinkedHashMap org.apache.lucene.util.SPIClassIterator java.lang.Class java.lang.String java.lang.String top int int java.lang.String[]
      StackMap stack:
         9: aload 10
            iload 8
            aaload
            astore 7 /* suffix */
        start local 7 // java.lang.String suffix
        10: .line 89
            aload 5 /* clazzName */
            aload 7 /* suffix */
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 13
        11: .line 90
            aload 5 /* clazzName */
            iconst_0
            aload 5 /* clazzName */
            invokevirtual java.lang.String.length:()I
            aload 7 /* suffix */
            invokevirtual java.lang.String.length:()I
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 6 /* name */
        12: .line 91
            goto 15
        end local 7 // java.lang.String suffix
        13: .line 88
      StackMap locals:
      StackMap stack:
            iinc 8 1
      StackMap locals:
      StackMap stack:
        14: iload 8
            iload 9
            if_icmplt 9
        15: .line 94
      StackMap locals: org.apache.lucene.analysis.util.AnalysisSPILoader java.lang.ClassLoader java.util.LinkedHashMap org.apache.lucene.util.SPIClassIterator java.lang.Class java.lang.String java.lang.String
      StackMap stack:
            aload 6 /* name */
            ifnonnull 19
        16: .line 95
            new java.util.ServiceConfigurationError
            dup
            new java.lang.StringBuilder
            dup
            ldc "The class name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* service */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 96
            ldc " has wrong suffix, allowed are: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.suffixes:[Ljava/lang/String;
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 95
            invokespecial java.util.ServiceConfigurationError.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 106
      StackMap locals:
      StackMap stack:
            aload 2 /* services */
            aload 6 /* name */
            invokevirtual java.util.LinkedHashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 21
        20: .line 107
            aload 2 /* services */
            aload 6 /* name */
            aload 4 /* service */
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String name
        end local 5 // java.lang.String clazzName
        end local 4 // java.lang.Class service
        21: .line 84
      StackMap locals:
      StackMap stack:
            aload 3 /* loader */
            invokevirtual org.apache.lucene.util.SPIClassIterator.hasNext:()Z
            ifne 5
        22: .line 110
            aload 0 /* this */
            aload 2 /* services */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putfield org.apache.lucene.analysis.util.AnalysisSPILoader.services:Ljava/util/Map;
        23: .line 111
            return
        end local 3 // org.apache.lucene.util.SPIClassIterator loader
        end local 2 // java.util.LinkedHashMap services
        end local 1 // java.lang.ClassLoader classloader
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0   24     1  classloader  Ljava/lang/ClassLoader;
            3   24     2     services  Ljava/util/LinkedHashMap<Ljava/lang/String;Ljava/lang/Class<+TS;>;>;
            4   24     3       loader  Lorg/apache/lucene/util/SPIClassIterator<TS;>;
            6   21     4      service  Ljava/lang/Class<+TS;>;
            7   21     5    clazzName  Ljava/lang/String;
            8   21     6         name  Ljava/lang/String;
           10   13     7       suffix  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      classloader  

  public S newInstance(java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)Lorg/apache/lucene/analysis/util/AbstractAnalysisFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.String name
        start local 2 // java.util.Map args
         0: .line 114
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.apache.lucene.analysis.util.AnalysisSPILoader.lookupClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* service */
        start local 3 // java.lang.Class service
         1: .line 115
            aload 3 /* service */
            aload 2 /* args */
            invokestatic org.apache.lucene.analysis.util.AnalysisSPILoader.newFactoryClassInstance:(Ljava/lang/Class;Ljava/util/Map;)Lorg/apache/lucene/analysis/util/AbstractAnalysisFactory;
            areturn
        end local 3 // java.lang.Class service
        end local 2 // java.util.Map args
        end local 1 // java.lang.String name
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0    2     1     name  Ljava/lang/String;
            0    2     2     args  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1    2     3  service  Ljava/lang/Class<+TS;>;
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)TS;
    MethodParameters:
      Name  Flags
      name  
      args  

  public java.lang.Class<? extends S> lookupClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
        start local 1 // java.lang.String name
         0: .line 119
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.services:Ljava/util/Map;
            aload 1 /* name */
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 2 /* service */
        start local 2 // java.lang.Class service
         1: .line 120
            aload 2 /* service */
            ifnull 3
         2: .line 121
            aload 2 /* service */
            areturn
         3: .line 123
      StackMap locals: java.lang.Class
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "A SPI class of type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " with name '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' does not exist. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 124
            ldc "You need to add the corresponding JAR file supporting this SPI to your classpath. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 125
            ldc "The current classpath supports the following names: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.apache.lucene.analysis.util.AnalysisSPILoader.availableServices:()Ljava/util/Set;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 123
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.Class service
        end local 1 // java.lang.String name
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
            0    7     1     name  Ljava/lang/String;
            1    7     2  service  Ljava/lang/Class<+TS;>;
    Signature: (Ljava/lang/String;)Ljava/lang/Class<+TS;>;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Set<java.lang.String> availableServices();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
         0: .line 130
            aload 0 /* this */
            getfield org.apache.lucene.analysis.util.AnalysisSPILoader.services:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            areturn
        end local 0 // org.apache.lucene.analysis.util.AnalysisSPILoader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/analysis/util/AnalysisSPILoader<TS;>;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public static <T extends org.apache.lucene.analysis.util.AbstractAnalysisFactory> T newFactoryClassInstance(java.lang.Class<T>, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/Class;Ljava/util/Map;)Lorg/apache/lucene/analysis/util/AbstractAnalysisFactory;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.lang.Class clazz
        start local 1 // java.util.Map args
         0: .line 136
            aload 0 /* clazz */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/util/Map;
            aastore
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* args */
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.lucene.analysis.util.AbstractAnalysisFactory
         1: areturn
         2: .line 137
      StackMap locals:
      StackMap stack: java.lang.reflect.InvocationTargetException
            astore 2 /* ite */
        start local 2 // java.lang.reflect.InvocationTargetException ite
         3: .line 138
            aload 2 /* ite */
            invokevirtual java.lang.reflect.InvocationTargetException.getCause:()Ljava/lang/Throwable;
            astore 3 /* cause */
        start local 3 // java.lang.Throwable cause
         4: .line 139
            aload 3 /* cause */
            instanceof java.lang.RuntimeException
            ifeq 6
         5: .line 140
            aload 3 /* cause */
            checkcast java.lang.RuntimeException
            athrow
         6: .line 142
      StackMap locals: java.lang.reflect.InvocationTargetException java.lang.Throwable
      StackMap stack:
            aload 3 /* cause */
            instanceof java.lang.Error
            ifeq 8
         7: .line 143
            aload 3 /* cause */
            checkcast java.lang.Error
            athrow
         8: .line 145
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected checked exception while calling constructor of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* cause */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable cause
        end local 2 // java.lang.reflect.InvocationTargetException ite
         9: .line 146
      StackMap locals: java.lang.Class java.util.Map
      StackMap stack: java.lang.ReflectiveOperationException
            astore 2 /* e */
        start local 2 // java.lang.ReflectiveOperationException e
        10: .line 147
            new java.lang.UnsupportedOperationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Factory "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " cannot be instantiated. This is likely due to missing Map<String,String> constructor."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* e */
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.ReflectiveOperationException e
        end local 1 // java.util.Map args
        end local 0 // java.lang.Class clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0  clazz  Ljava/lang/Class<TT;>;
            0   11     1   args  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            3    9     2    ite  Ljava/lang/reflect/InvocationTargetException;
            4    9     3  cause  Ljava/lang/Throwable;
           10   11     2      e  Ljava/lang/ReflectiveOperationException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.reflect.InvocationTargetException
           0     1       9  Class java.lang.ReflectiveOperationException
    Signature: <T:Lorg/apache/lucene/analysis/util/AbstractAnalysisFactory;>(Ljava/lang/Class<TT;>;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)TT;
    MethodParameters:
       Name  Flags
      clazz  
      args   
}
Signature: <S:Lorg/apache/lucene/analysis/util/AbstractAnalysisFactory;>Ljava/lang/Object;
SourceFile: "AnalysisSPILoader.java"