abstract class jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator implements java.util.Comparator<javax.lang.model.element.Element>
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator
  super_class: java.lang.Object
{
  final jdk.javadoc.internal.doclets.toolkit.util.Comparators this$0;
    descriptor: Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$javax$lang$model$element$ElementKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(jdk.javadoc.internal.doclets.toolkit.util.Comparators);
    descriptor: (Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
         0: .line 404
            aload 0 /* this */
            aload 1
            putfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
    MethodParameters:
        Name  Flags
      this$0  final

  protected int compareParameters(boolean, java.util.List<? extends javax.lang.model.element.VariableElement>, java.util.List<? extends javax.lang.model.element.VariableElement>);
    descriptor: (ZLjava/util/List;Ljava/util/List;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // boolean caseSensitive
        start local 2 // java.util.List params1
        start local 3 // java.util.List params2
         0: .line 417
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            iload 1 /* caseSensitive */
            aload 0 /* this */
            aload 2 /* params1 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getParametersAsString:(Ljava/util/List;)Ljava/lang/String;
         1: .line 418
            aload 0 /* this */
            aload 3 /* params2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getParametersAsString:(Ljava/util/List;)Ljava/lang/String;
         2: .line 417
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.compareStrings:(ZLjava/lang/String;Ljava/lang/String;)I
            ireturn
        end local 3 // java.util.List params2
        end local 2 // java.util.List params1
        end local 1 // boolean caseSensitive
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    3     1  caseSensitive  Z
            0    3     2        params1  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
            0    3     3        params2  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
    Signature: (ZLjava/util/List<+Ljavax/lang/model/element/VariableElement;>;Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;)I
    MethodParameters:
               Name  Flags
      caseSensitive  
      params1        
      params2        

  java.lang.String getParametersAsString(java.util.List<? extends javax.lang.model.element.VariableElement>);
    descriptor: (Ljava/util/List;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // java.util.List params
         0: .line 422
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 423
            aload 1 /* params */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator java.util.List java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.VariableElement
            astore 3 /* param */
        start local 3 // javax.lang.model.element.VariableElement param
         3: .line 424
            aload 3 /* param */
            invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
            astore 5 /* t */
        start local 5 // javax.lang.model.type.TypeMirror t
         4: .line 427
            aload 2 /* sb */
            aload 0 /* this */
            aload 5 /* t */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getTypeCode:(Ljavax/lang/model/type/TypeMirror;)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;
            aload 5 /* t */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // javax.lang.model.type.TypeMirror t
        end local 3 // javax.lang.model.element.VariableElement param
         5: .line 423
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 429
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.util.List params
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    7     1  params  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
            1    7     2      sb  Ljava/lang/StringBuilder;
            3    5     3   param  Ljavax/lang/model/element/VariableElement;
            4    5     5       t  Ljavax/lang/model/type/TypeMirror;
    Signature: (Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;)Ljava/lang/String;
    MethodParameters:
        Name  Flags
      params  

  private java.lang.String getTypeCode(javax.lang.model.type.TypeMirror);
    descriptor: (Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.type.TypeMirror t
         0: .line 433
            new jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$1
            dup
            aload 0 /* this */
            invokespecial jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$1.<init>:(Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;)V
         1: .line 448
            aload 1 /* t */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$1.visit:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/Object;
            checkcast java.lang.String
         2: .line 433
            areturn
        end local 1 // javax.lang.model.type.TypeMirror t
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    3     1     t  Ljavax/lang/model/type/TypeMirror;
    MethodParameters:
      Name  Flags
      t     

  protected int compareNames(javax.lang.model.element.Element, javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e1
        start local 2 // javax.lang.model.element.Element e2
         0: .line 460
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            aload 1 /* e1 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.getSimpleName:(Ljavax/lang/model/element/Element;)Ljava/lang/String;
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            aload 2 /* e2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.getSimpleName:(Ljavax/lang/model/element/Element;)Ljava/lang/String;
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.compareStrings:(Ljava/lang/String;Ljava/lang/String;)I
            ireturn
        end local 2 // javax.lang.model.element.Element e2
        end local 1 // javax.lang.model.element.Element e1
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    1     1    e1  Ljavax/lang/model/element/Element;
            0    1     2    e2  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  protected int compareFullyQualifiedNames(javax.lang.model.element.Element, javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e1
        start local 2 // javax.lang.model.element.Element e2
         0: .line 472
            aload 0 /* this */
            aload 1 /* e1 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getFullyQualifiedName:(Ljavax/lang/model/element/Element;)Ljava/lang/String;
            astore 3 /* thisElement */
        start local 3 // java.lang.String thisElement
         1: .line 473
            aload 0 /* this */
            aload 2 /* e2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getFullyQualifiedName:(Ljavax/lang/model/element/Element;)Ljava/lang/String;
            astore 4 /* thatElement */
        start local 4 // java.lang.String thatElement
         2: .line 474
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            aload 3 /* thisElement */
            aload 4 /* thatElement */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.compareStrings:(Ljava/lang/String;Ljava/lang/String;)I
            ireturn
        end local 4 // java.lang.String thatElement
        end local 3 // java.lang.String thisElement
        end local 2 // javax.lang.model.element.Element e2
        end local 1 // javax.lang.model.element.Element e1
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    3     1           e1  Ljavax/lang/model/element/Element;
            0    3     2           e2  Ljavax/lang/model/element/Element;
            1    3     3  thisElement  Ljava/lang/String;
            2    3     4  thatElement  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  protected int compareModuleNames(javax.lang.model.element.Element, javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e1
        start local 2 // javax.lang.model.element.Element e2
         0: .line 485
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Utils.elementUtils:Ljavax/lang/model/util/Elements;
            aload 1 /* e1 */
            invokeinterface javax.lang.model.util.Elements.getModuleOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ModuleElement;
            astore 3 /* m1 */
        start local 3 // javax.lang.model.element.ModuleElement m1
         1: .line 486
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            getfield jdk.javadoc.internal.doclets.toolkit.util.Utils.elementUtils:Ljavax/lang/model/util/Elements;
            aload 2 /* e2 */
            invokeinterface javax.lang.model.util.Elements.getModuleOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ModuleElement;
            astore 4 /* m2 */
        start local 4 // javax.lang.model.element.ModuleElement m2
         2: .line 487
            aload 3 /* m1 */
            ifnull 4
            aload 4 /* m2 */
            ifnull 4
         3: .line 488
            aload 0 /* this */
            aload 3 /* m1 */
            aload 4 /* m2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.compareFullyQualifiedNames:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
            ireturn
         4: .line 489
      StackMap locals: javax.lang.model.element.ModuleElement javax.lang.model.element.ModuleElement
      StackMap stack:
            aload 3 /* m1 */
            ifnull 6
         5: .line 490
            iconst_1
            ireturn
         6: .line 491
      StackMap locals:
      StackMap stack:
            aload 4 /* m2 */
            ifnull 8
         7: .line 492
            iconst_m1
            ireturn
         8: .line 494
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // javax.lang.model.element.ModuleElement m2
        end local 3 // javax.lang.model.element.ModuleElement m1
        end local 2 // javax.lang.model.element.Element e2
        end local 1 // javax.lang.model.element.Element e1
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    9     1    e1  Ljavax/lang/model/element/Element;
            0    9     2    e2  Ljavax/lang/model/element/Element;
            1    9     3    m1  Ljavax/lang/model/element/ModuleElement;
            2    9     4    m2  Ljavax/lang/model/element/ModuleElement;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  protected int compareParameters(javax.lang.model.element.Element, javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e1
        start local 2 // javax.lang.model.element.Element e2
         0: .line 505
            iconst_0
            istore 3 /* result */
        start local 3 // int result
         1: .line 506
            aload 0 /* this */
            aload 1 /* e1 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.hasParameters:(Ljavax/lang/model/element/Element;)Z
            ifeq 8
            aload 0 /* this */
            aload 2 /* e2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.hasParameters:(Ljavax/lang/model/element/Element;)Z
            ifeq 8
         2: .line 507
            aload 1 /* e1 */
            checkcast javax.lang.model.element.ExecutableElement
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            astore 4 /* parameters1 */
        start local 4 // java.util.List parameters1
         3: .line 508
            aload 2 /* e2 */
            checkcast javax.lang.model.element.ExecutableElement
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            astore 5 /* parameters2 */
        start local 5 // java.util.List parameters2
         4: .line 509
            aload 0 /* this */
            iconst_0
            aload 4 /* parameters1 */
            aload 5 /* parameters2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.compareParameters:(ZLjava/util/List;Ljava/util/List;)I
            istore 3 /* result */
         5: .line 510
            iload 3 /* result */
            ifeq 7
         6: .line 511
            iload 3 /* result */
            ireturn
         7: .line 513
      StackMap locals: int java.util.List java.util.List
      StackMap stack:
            aload 0 /* this */
            iconst_1
            aload 4 /* parameters1 */
            aload 5 /* parameters2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.compareParameters:(ZLjava/util/List;Ljava/util/List;)I
            istore 3 /* result */
        end local 5 // java.util.List parameters2
        end local 4 // java.util.List parameters1
         8: .line 515
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            ireturn
        end local 3 // int result
        end local 2 // javax.lang.model.element.Element e2
        end local 1 // javax.lang.model.element.Element e1
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    9     1           e1  Ljavax/lang/model/element/Element;
            0    9     2           e2  Ljavax/lang/model/element/Element;
            1    9     3       result  I
            3    8     4  parameters1  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
            4    8     5  parameters2  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  protected int compareElementKinds(javax.lang.model.element.Element, javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/Element;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e1
        start local 2 // javax.lang.model.element.Element e2
         0: .line 526
            aload 0 /* this */
            aload 1 /* e1 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getKindIndex:(Ljavax/lang/model/element/Element;)I
            aload 0 /* this */
            aload 2 /* e2 */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.getKindIndex:(Ljavax/lang/model/element/Element;)I
            invokestatic java.lang.Integer.compare:(II)I
            ireturn
        end local 2 // javax.lang.model.element.Element e2
        end local 1 // javax.lang.model.element.Element e1
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    1     1    e1  Ljavax/lang/model/element/Element;
            0    1     2    e2  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  private int getKindIndex(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e
         0: .line 530
            invokestatic jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.$SWITCH_TABLE$javax$lang$model$element$ElementKind:()[I
            aload 1 /* e */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iaload
            tableswitch { // 1 - 19
                    1: 2
                    2: 4
                    3: 3
                    4: 8
                    5: 7
                    6: 5
                    7: 9
                    8: 12
                    9: 12
                   10: 12
                   11: 11
                   12: 10
                   13: 12
                   14: 12
                   15: 12
                   16: 12
                   17: 12
                   18: 1
                   19: 6
              default: 12
          }
         1: .line 531
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 532
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 533
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
         4: .line 534
      StackMap locals:
      StackMap stack:
            iconst_3
            ireturn
         5: .line 535
      StackMap locals:
      StackMap stack:
            iconst_4
            ireturn
         6: .line 536
      StackMap locals:
      StackMap stack:
            iconst_5
            ireturn
         7: .line 537
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         8: .line 538
      StackMap locals:
      StackMap stack:
            bipush 7
            ireturn
         9: .line 539
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
        10: .line 540
      StackMap locals:
      StackMap stack:
            bipush 9
            ireturn
        11: .line 541
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
        12: .line 542
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            aload 1 /* e */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // javax.lang.model.element.Element e
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0   13     1     e  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      e     

  boolean hasParameters(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e
         0: .line 548
            new jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$2
            dup
            aload 0 /* this */
            invokespecial jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$2.<init>:(Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;)V
         1: .line 559
            aload 1 /* e */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$2.visit:(Ljavax/lang/model/element/Element;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         2: .line 548
            ireturn
        end local 1 // javax.lang.model.element.Element e
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    3     1     e  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      e     

  private java.lang.String getFullyQualifiedName(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
        start local 1 // javax.lang.model.element.Element e
         0: .line 570
            new jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$3
            dup
            aload 0 /* this */
            invokespecial jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$3.<init>:(Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;)V
         1: .line 598
            aload 1 /* e */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$3.visit:(Ljavax/lang/model/element/Element;)Ljava/lang/Object;
            checkcast java.lang.String
         2: .line 570
            areturn
        end local 1 // javax.lang.model.element.Element e
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;
            0    3     1     e  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      e     

  static int[] $SWITCH_TABLE$javax$lang$model$element$ElementKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 403
            getstatic jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.$SWITCH_TABLE$javax$lang$model$element$ElementKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic javax.lang.model.element.ElementKind.values:()[Ljavax/lang/model/element/ElementKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic javax.lang.model.element.ElementKind.ANNOTATION_TYPE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic javax.lang.model.element.ElementKind.BINDING_VARIABLE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 21
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic javax.lang.model.element.ElementKind.CONSTRUCTOR:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 12
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic javax.lang.model.element.ElementKind.ENUM:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iconst_2
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic javax.lang.model.element.ElementKind.ENUM_CONSTANT:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic javax.lang.model.element.ElementKind.EXCEPTION_PARAMETER:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 10
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic javax.lang.model.element.ElementKind.FIELD:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic javax.lang.model.element.ElementKind.INSTANCE_INIT:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 14
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic javax.lang.model.element.ElementKind.INTERFACE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iconst_5
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic javax.lang.model.element.ElementKind.LOCAL_VARIABLE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 9
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic javax.lang.model.element.ElementKind.METHOD:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 11
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic javax.lang.model.element.ElementKind.MODULE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 18
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic javax.lang.model.element.ElementKind.OTHER:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 16
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic javax.lang.model.element.ElementKind.PACKAGE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iconst_1
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic javax.lang.model.element.ElementKind.PARAMETER:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 8
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic javax.lang.model.element.ElementKind.RECORD:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 19
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic javax.lang.model.element.ElementKind.RECORD_COMPONENT:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 20
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic javax.lang.model.element.ElementKind.RESOURCE_VARIABLE:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 17
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic javax.lang.model.element.ElementKind.STATIC_INIT:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 13
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic javax.lang.model.element.ElementKind.TYPE_PARAMETER:Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            bipush 15
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            dup
            putstatic jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.$SWITCH_TABLE$javax$lang$model$element$ElementKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError

  static jdk.javadoc.internal.doclets.toolkit.util.Comparators access$1(jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator);
    descriptor: (Ljdk/javadoc/internal/doclets/toolkit/util/Comparators$ElementComparator;)Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 403
            aload 0
            getfield jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator.this$0:Ljdk/javadoc/internal/doclets/toolkit/util/Comparators;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/util/Comparator<Ljavax/lang/model/element/Element;>;
SourceFile: "Comparators.java"
NestHost: jdk.javadoc.internal.doclets.toolkit.util.Comparators
InnerClasses:
  private abstract ElementComparator = jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator of jdk.javadoc.internal.doclets.toolkit.util.Comparators
  jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$1
  jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$2
  jdk.javadoc.internal.doclets.toolkit.util.Comparators$ElementComparator$3