public abstract class com.sun.tools.javac.code.Symbol extends com.sun.tools.javac.code.AnnoConstruct implements com.sun.tools.javac.jvm.PoolConstant, javax.lang.model.element.Element
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.tools.javac.code.Symbol
  super_class: com.sun.tools.javac.code.AnnoConstruct
{
  public com.sun.tools.javac.code.Kinds$Kind kind;
    descriptor: Lcom/sun/tools/javac/code/Kinds$Kind;
    flags: (0x0001) ACC_PUBLIC

  public long flags_field;
    descriptor: J
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.util.Name name;
    descriptor: Lcom/sun/tools/javac/util/Name;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Type type;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Symbol owner;
    descriptor: Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Symbol$Completer completer;
    descriptor: Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Type erasure_field;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  protected com.sun.tools.javac.code.SymbolMetadata metadata;
    descriptor: Lcom/sun/tools/javac/code/SymbolMetadata;
    flags: (0x0004) ACC_PROTECTED

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

  public long flags();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 110
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            lreturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound> getRawAttributes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 146
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 147
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 3
         2: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.getDeclarationAttributes:()Lcom/sun/tools/javac/util/List;
         3: .line 146
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.List
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound> getRawTypeAttributes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 156
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 157
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 3
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.getTypeAttributes:()Lcom/sun/tools/javac/util/List;
         3: .line 156
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.List
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;

  public com.sun.tools.javac.code.Attribute$Compound attribute(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/code/Attribute$Compound;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol anno
         0: .line 163
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Attribute$Compound
            astore 2 /* a */
        start local 2 // com.sun.tools.javac.code.Attribute$Compound a
         2: .line 164
            aload 2 /* a */
            getfield com.sun.tools.javac.code.Attribute$Compound.type:Lcom/sun/tools/javac/code/Type;
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            aload 1 /* anno */
            if_acmpne 3
            aload 2 /* a */
            areturn
        end local 2 // com.sun.tools.javac.code.Attribute$Compound a
         3: .line 163
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 166
            aconst_null
            areturn
        end local 1 // com.sun.tools.javac.code.Symbol anno
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    5     1  anno  Lcom/sun/tools/javac/code/Symbol;
            2    3     2     a  Lcom/sun/tools/javac/code/Attribute$Compound;
    MethodParameters:
      Name  Flags
      anno  

  public boolean annotationsPendingCompletion();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 170
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.pendingCompletion:()Z
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;

  public void appendAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 174
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 175
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.append:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         2: .line 177
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public void appendClassInitTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 180
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 181
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.appendClassInitTypeAttributes:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         2: .line 183
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public void appendInitTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 186
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 187
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.appendInitTypeAttributes:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         2: .line 189
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public void appendUniqueTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 192
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 193
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.appendUniqueTypes:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         2: .line 195
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound> getClassInitTypeAttributes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 198
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 199
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 3
         2: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.getClassInitTypeAttributes:()Lcom/sun/tools/javac/util/List;
         3: .line 198
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.List
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound> getInitTypeAttributes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 204
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 205
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 3
         2: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.getInitTypeAttributes:()Lcom/sun/tools/javac/util/List;
         3: .line 204
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.List
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;

  public void setInitTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 210
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.setInitTypeAttributes:(Lcom/sun/tools/javac/util/List;)V
         1: .line 211
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    2     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public void setClassInitTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 214
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.setClassInitTypeAttributes:(Lcom/sun/tools/javac/util/List;)V
         1: .line 215
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    2     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound> getDeclarationAttributes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 218
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 219
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 3
         2: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.getDeclarationAttributes:()Lcom/sun/tools/javac/util/List;
         3: .line 218
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.List
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;

  public boolean hasAnnotations();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 224
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnull 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.isEmpty:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean hasTypeAnnotations();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 228
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnull 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.isTypesEmpty:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isCompleted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 232
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
            invokeinterface com.sun.tools.javac.code.Symbol$Completer.isTerminal:()Z
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public void prependAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List l
         0: .line 236
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 237
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.prepend:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         2: .line 239
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;)V
    MethodParameters:
      Name  Flags
      l     

  public void resetAnnotations();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 242
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.reset:()Lcom/sun/tools/javac/code/SymbolMetadata;
            pop
         1: .line 243
            return
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public void setAttributes(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol other
         0: .line 246
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 1
            aload 1 /* other */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnull 2
         1: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* other */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.setAttributes:(Lcom/sun/tools/javac/code/SymbolMetadata;)V
         2: .line 249
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.code.Symbol other
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1  other  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      other  

  public void setDeclarationAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List a
         0: .line 252
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 1
            aload 1 /* a */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 2
         1: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.initedMetadata:()Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* a */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.setDeclarationAttributes:(Lcom/sun/tools/javac/util/List;)V
         2: .line 255
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List a
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1     a  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;)V
    MethodParameters:
      Name  Flags
      a     

  public void setTypeAttributes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.util.List a
         0: .line 258
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 1
            aload 1 /* a */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 4
         1: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 3
         2: .line 260
            aload 0 /* this */
            new com.sun.tools.javac.code.SymbolMetadata
            dup
            aload 0 /* this */
            invokespecial com.sun.tools.javac.code.SymbolMetadata.<init>:(Lcom/sun/tools/javac/code/Symbol;)V
            putfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
         3: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            aload 1 /* a */
            invokevirtual com.sun.tools.javac.code.SymbolMetadata.setTypeAttributes:(Lcom/sun/tools/javac/util/List;)V
         4: .line 263
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.util.List a
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    5     1     a  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;)V
    MethodParameters:
      Name  Flags
      a     

  private com.sun.tools.javac.code.SymbolMetadata initedMetadata();
    descriptor: ()Lcom/sun/tools/javac/code/SymbolMetadata;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 266
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            ifnonnull 2
         1: .line 267
            aload 0 /* this */
            new com.sun.tools.javac.code.SymbolMetadata
            dup
            aload 0 /* this */
            invokespecial com.sun.tools.javac.code.SymbolMetadata.<init>:(Lcom/sun/tools/javac/code/Symbol;)V
            putfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
         2: .line 268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.SymbolMetadata getMetadata();
    descriptor: ()Lcom/sun/tools/javac/code/SymbolMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 273
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.metadata:Lcom/sun/tools/javac/code/SymbolMetadata;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public void <init>(com.sun.tools.javac.code.Kinds$Kind, long, com.sun.tools.javac.util.Name, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Kinds$Kind;JLcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Kinds$Kind kind
        start local 2 // long flags
        start local 4 // com.sun.tools.javac.util.Name name
        start local 5 // com.sun.tools.javac.code.Type type
        start local 6 // com.sun.tools.javac.code.Symbol owner
         0: .line 280
            aload 0 /* this */
            invokespecial com.sun.tools.javac.code.AnnoConstruct.<init>:()V
         1: .line 281
            aload 0 /* this */
            aload 1 /* kind */
            putfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
         2: .line 282
            aload 0 /* this */
            lload 2 /* flags */
            putfield com.sun.tools.javac.code.Symbol.flags_field:J
         3: .line 283
            aload 0 /* this */
            aload 5 /* type */
            putfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
         4: .line 284
            aload 0 /* this */
            aload 6 /* owner */
            putfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
         5: .line 285
            aload 0 /* this */
            getstatic com.sun.tools.javac.code.Symbol$Completer.NULL_COMPLETER:Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
         6: .line 286
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.javac.code.Symbol.erasure_field:Lcom/sun/tools/javac/code/Type;
         7: .line 287
            aload 0 /* this */
            aload 4 /* name */
            putfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
         8: .line 288
            return
        end local 6 // com.sun.tools.javac.code.Symbol owner
        end local 5 // com.sun.tools.javac.code.Type type
        end local 4 // com.sun.tools.javac.util.Name name
        end local 2 // long flags
        end local 1 // com.sun.tools.javac.code.Kinds$Kind kind
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    9     1   kind  Lcom/sun/tools/javac/code/Kinds$Kind;
            0    9     2  flags  J
            0    9     4   name  Lcom/sun/tools/javac/util/Name;
            0    9     5   type  Lcom/sun/tools/javac/code/Type;
            0    9     6  owner  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      kind   
      flags  
      name   
      type   
      owner  

  public int poolTag();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 292
            new java.lang.AssertionError
            dup
            ldc "Invalid pool entry"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol clone(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol newOwner
         0: .line 299
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 1 // com.sun.tools.javac.code.Symbol newOwner
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1  newOwner  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
          Name  Flags
      newOwner  

  public <R, P> R accept(com.sun.tools.javac.code.Symbol$Visitor<R, P>, );
    descriptor: (Lcom/sun/tools/javac/code/Symbol$Visitor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol$Visitor v
        start local 2 // java.lang.Object p
         0: .line 303
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* p */
            invokeinterface com.sun.tools.javac.code.Symbol$Visitor.visitSymbol:(Lcom/sun/tools/javac/code/Symbol;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.tools.javac.code.Symbol$Visitor v
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1     v  Lcom/sun/tools/javac/code/Symbol$Visitor<TR;TP;>;
            0    1     2     p  TP;
    Signature: <R:Ljava/lang/Object;P:Ljava/lang/Object;>(Lcom/sun/tools/javac/code/Symbol$Visitor<TR;TP;>;TP;)TR;
    MethodParameters:
      Name  Flags
      v     
      p     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 310
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol location();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 320
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            ifnull 4
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.isEmpty:()Z
            ifeq 5
         1: .line 321
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 1048576
            land
            lconst_0
            lcmp
            ifne 5
         2: .line 322
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpeq 5
         3: .line 323
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpeq 5
         4: .line 324
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         5: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol location(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Type site
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 330
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            ifnull 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.isEmpty:()Z
            ifeq 2
         1: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.location:()Lcom/sun/tools/javac/code/Symbol;
            areturn
         2: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifeq 5
         3: .line 334
            aload 2 /* types */
            aload 1 /* site */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Types.asOuterSuper:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/code/Type;
            astore 3 /* ownertype */
        start local 3 // com.sun.tools.javac.code.Type ownertype
         4: .line 335
            aload 3 /* ownertype */
            ifnull 5
            aload 3 /* ownertype */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            areturn
        end local 3 // com.sun.tools.javac.code.Type ownertype
         5: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            areturn
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Type site
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lcom/sun/tools/javac/code/Symbol;
            0    6     1       site  Lcom/sun/tools/javac/code/Type;
            0    6     2      types  Lcom/sun/tools/javac/code/Types;
            4    5     3  ownertype  Lcom/sun/tools/javac/code/Type;
    MethodParameters:
       Name  Flags
      site   
      types  

  public com.sun.tools.javac.code.Symbol baseSymbol();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 341
            aload 0 /* this */
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Type erasure(com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Types types
         0: .line 347
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.erasure_field:Lcom/sun/tools/javac/code/Type;
            ifnonnull 2
         1: .line 348
            aload 0 /* this */
            aload 1 /* types */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            putfield com.sun.tools.javac.code.Symbol.erasure_field:Lcom/sun/tools/javac/code/Type;
         2: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.erasure_field:Lcom/sun/tools/javac/code/Type;
            areturn
        end local 1 // com.sun.tools.javac.code.Types types
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    3     1  types  Lcom/sun/tools/javac/code/Types;
    MethodParameters:
       Name  Flags
      types  

  public com.sun.tools.javac.code.Type externalType(com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Types types
         0: .line 357
            aload 0 /* this */
            aload 1 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.erasure:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type;
            astore 2 /* t */
        start local 2 // com.sun.tools.javac.code.Type t
         1: .line 358
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            getfield com.sun.tools.javac.util.Name.table:Lcom/sun/tools/javac/util/Name$Table;
            getfield com.sun.tools.javac.util.Name$Table.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names.init:Lcom/sun/tools/javac/util/Name;
            if_acmpne 8
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Symbol.hasOuterInstance:()Z
            ifeq 8
         2: .line 359
            aload 1 /* types */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getEnclosingType:()Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            astore 3 /* outerThisType */
        start local 3 // com.sun.tools.javac.code.Type outerThisType
         3: .line 360
            new com.sun.tools.javac.code.Type$MethodType
            dup
            aload 2 /* t */
            invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
            aload 3 /* outerThisType */
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
         4: .line 361
            aload 2 /* t */
            invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
         5: .line 362
            aload 2 /* t */
            invokevirtual com.sun.tools.javac.code.Type.getThrownTypes:()Lcom/sun/tools/javac/util/List;
         6: .line 363
            aload 2 /* t */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
         7: .line 360
            invokespecial com.sun.tools.javac.code.Type$MethodType.<init>:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
            areturn
        end local 3 // com.sun.tools.javac.code.Type outerThisType
         8: .line 365
      StackMap locals: com.sun.tools.javac.code.Type
      StackMap stack:
            aload 2 /* t */
            areturn
        end local 2 // com.sun.tools.javac.code.Type t
        end local 1 // com.sun.tools.javac.code.Types types
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lcom/sun/tools/javac/code/Symbol;
            0    9     1          types  Lcom/sun/tools/javac/code/Types;
            1    9     2              t  Lcom/sun/tools/javac/code/Type;
            3    8     3  outerThisType  Lcom/sun/tools/javac/code/Type;
    MethodParameters:
       Name  Flags
      types  

  public boolean isDeprecated();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 370
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 131072
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean hasDeprecatedAnnotation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 374
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 18014398509481984
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isDeprecatedForRemoval();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 378
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 36028797018963968
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isPreviewApi();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 382
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 72057594037927936
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isDeprecatableViaAnnotation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 386
            invokestatic com.sun.tools.javac.code.Symbol.$SWITCH_TABLE$javax$lang$model$element$ElementKind:()[I
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.getKind:()Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.ordinal:()I
            iaload
            lookupswitch { // 5
                    1: 1
                    8: 1
                    9: 1
                   10: 1
                   17: 1
              default: 2
          }
         1: .line 392
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 394
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isStatic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 400
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 8
            land
            lconst_0
            lcmp
            ifne 4
         1: .line 401
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 512
            land
            lconst_0
            lcmp
            ifeq 3
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpeq 3
         2: .line 402
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            getfield com.sun.tools.javac.util.Name.table:Lcom/sun/tools/javac/util/Name$Table;
            getfield com.sun.tools.javac.util.Name$Table.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names._this:Lcom/sun/tools/javac/util/Name;
            if_acmpne 4
         3: .line 399
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isInterface();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 406
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 512
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isAbstract();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 410
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 1024
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isPrivate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 414
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 7
            land
            ldc 2
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isPublic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 418
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 7
            land
            lconst_1
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isEnum();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 422
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 16384
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isSealed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 426
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 4611686018427387904
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isNonSealed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 430
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc -9223372036854775808
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isFinal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 434
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 16
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isDirectlyOrIndirectlyLocal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 444
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$KindSelector.VAL_MTH:Lcom/sun/tools/javac/code/Kinds$KindSelector;
            invokevirtual com.sun.tools.javac.code.Kinds$Kind.matches:(Lcom/sun/tools/javac/code/Kinds$KindSelector;)Z
            ifne 3
         1: .line 445
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 2
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Symbol.isDirectlyOrIndirectlyLocal:()Z
            ifne 3
         2: .line 443
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isAnonymous();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 452
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.isEmpty:()Z
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isConstructor();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 458
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            getfield com.sun.tools.javac.util.Name.table:Lcom/sun/tools/javac/util/Name$Table;
            getfield com.sun.tools.javac.util.Name$Table.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names.init:Lcom/sun/tools/javac/util/Name;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isDynamic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 462
            iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.util.Name getQualifiedName();
    descriptor: ()Lcom/sun/tools/javac/util/Name;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 470
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.util.Name flatName();
    descriptor: ()Lcom/sun/tools/javac/util/Name;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 478
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.getQualifiedName:()Lcom/sun/tools/javac/util/Name;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Scope$WriteableScope members();
    descriptor: ()Lcom/sun/tools/javac/code/Scope$WriteableScope;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 484
            aconst_null
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean isInner();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 490
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.TYP:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getEnclosingType:()Lcom/sun/tools/javac/code/Type;
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;

  public boolean hasOuterInstance();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 503
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getEnclosingType:()Lcom/sun/tools/javac/code/Type;
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifeq 2
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 4194816
            land
            lconst_0
            lcmp
            ifne 2
         1: .line 502
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol$ClassSymbol enclClass();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 512
            aload 0 /* this */
            astore 1 /* c */
        start local 1 // com.sun.tools.javac.code.Symbol c
         1: .line 513
            goto 3
         2: .line 515
      StackMap locals: com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 1 /* c */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            astore 1 /* c */
         3: .line 513
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            ifnull 5
         4: .line 514
            aload 1 /* c */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$KindSelector.TYP:Lcom/sun/tools/javac/code/Kinds$KindSelector;
            invokevirtual com.sun.tools.javac.code.Kinds$Kind.matches:(Lcom/sun/tools/javac/code/Kinds$KindSelector;)Z
            ifeq 2
            aload 1 /* c */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifeq 2
         5: .line 517
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
            areturn
        end local 1 // com.sun.tools.javac.code.Symbol c
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/tools/javac/code/Symbol;
            1    6     1     c  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol$ClassSymbol outermostClass();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 523
            aload 0 /* this */
            astore 1 /* sym */
        start local 1 // com.sun.tools.javac.code.Symbol sym
         1: .line 524
            aconst_null
            astore 2 /* prev */
        start local 2 // com.sun.tools.javac.code.Symbol prev
         2: .line 525
            goto 5
         3: .line 526
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 1 /* sym */
            astore 2 /* prev */
         4: .line 527
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            astore 1 /* sym */
         5: .line 525
      StackMap locals:
      StackMap stack:
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 3
         6: .line 529
            aload 2 /* prev */
            checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
            areturn
        end local 2 // com.sun.tools.javac.code.Symbol prev
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/tools/javac/code/Symbol;
            1    7     1   sym  Lcom/sun/tools/javac/code/Symbol;
            2    7     2  prev  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol$PackageSymbol packge();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 535
            aload 0 /* this */
            astore 1 /* sym */
        start local 1 // com.sun.tools.javac.code.Symbol sym
         1: .line 536
            goto 3
         2: .line 537
      StackMap locals: com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            astore 1 /* sym */
         3: .line 536
      StackMap locals:
      StackMap stack:
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 2
         4: .line 539
            aload 1 /* sym */
            checkcast com.sun.tools.javac.code.Symbol$PackageSymbol
            areturn
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;
            1    5     1   sym  Lcom/sun/tools/javac/code/Symbol;

  public boolean isSubClass(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol base
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 545
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "isSubClass "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol base
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1   base  Lcom/sun/tools/javac/code/Symbol;
            0    1     2  types  Lcom/sun/tools/javac/code/Types;
    MethodParameters:
       Name  Flags
      base   
      types  

  public boolean isMemberOf(com.sun.tools.javac.code.Symbol$TypeSymbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$TypeSymbol;Lcom/sun/tools/javac/code/Types;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol$TypeSymbol clazz
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 553
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            aload 1 /* clazz */
            if_acmpeq 5
         1: .line 554
            aload 1 /* clazz */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol$TypeSymbol.isSubClass:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
            ifeq 4
         2: .line 555
            aload 0 /* this */
            aload 1 /* clazz */
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.isInheritedIn:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
            ifeq 4
         3: .line 556
            aload 0 /* this */
            aload 1 /* clazz */
            checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.hiddenIn:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/code/Types;)Z
            ifeq 5
         4: .line 552
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_1
            ireturn
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol$TypeSymbol clazz
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    6     1  clazz  Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            0    6     2  types  Lcom/sun/tools/javac/code/Types;
    MethodParameters:
       Name  Flags
      clazz  
      types  

  public boolean isEnclosedBy(com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol clazz
         0: .line 561
            aload 0 /* this */
            astore 2 /* sym */
        start local 2 // com.sun.tools.javac.code.Symbol sym
         1: goto 4
         2: .line 562
      StackMap locals: com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 2 /* sym */
            aload 1 /* clazz */
            if_acmpne 3
            iconst_1
            ireturn
         3: .line 561
      StackMap locals:
      StackMap stack:
            aload 2 /* sym */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            astore 2 /* sym */
      StackMap locals:
      StackMap stack:
         4: aload 2 /* sym */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 2
        end local 2 // com.sun.tools.javac.code.Symbol sym
         5: .line 563
            iconst_0
            ireturn
        end local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol clazz
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    6     1  clazz  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            1    5     2    sym  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      clazz  

  private boolean hiddenIn(com.sun.tools.javac.code.Symbol$ClassSymbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/code/Types;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol clazz
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 567
            aload 0 /* this */
            aload 1 /* clazz */
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.hiddenInInternal:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Symbol;
            astore 3 /* sym */
        start local 3 // com.sun.tools.javac.code.Symbol sym
         1: .line 568
            aload 3 /* sym */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: com.sun.tools.javac.code.Symbol
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "the result of hiddenInInternal() can't be null"
            invokestatic com.sun.tools.javac.util.Assert.check:(ZLjava/lang/String;)V
         4: .line 571
            aload 3 /* sym */
            aload 0 /* this */
            if_acmpeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
        end local 3 // com.sun.tools.javac.code.Symbol sym
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol clazz
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    6     1  clazz  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            0    6     2  types  Lcom/sun/tools/javac/code/Types;
            1    6     3    sym  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      clazz  
      types  

  private com.sun.tools.javac.code.Symbol hiddenInInternal(com.sun.tools.javac.code.Symbol$ClassSymbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol currentClass
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 582
            aload 1 /* currentClass */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            if_acmpne 2
         1: .line 583
            aload 0 /* this */
            areturn
         2: .line 585
      StackMap locals:
      StackMap stack:
            aload 1 /* currentClass */
            invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Scope$WriteableScope.getSymbolsByName:(Lcom/sun/tools/javac/util/Name;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol
            astore 3 /* sym */
        start local 3 // com.sun.tools.javac.code.Symbol sym
         4: .line 586
            aload 3 /* sym */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 9
         5: .line 587
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 8
         6: .line 588
            aload 3 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 8
            land
            lconst_0
            lcmp
            ifeq 9
         7: .line 589
            aload 2 /* types */
            aload 3 /* sym */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.isSubSignature:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
            ifeq 9
         8: .line 590
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types com.sun.tools.javac.code.Symbol java.util.Iterator
      StackMap stack:
            aload 3 /* sym */
            areturn
        end local 3 // com.sun.tools.javac.code.Symbol sym
         9: .line 585
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        10: .line 593
            aconst_null
            astore 3 /* hiddenSym */
        start local 3 // com.sun.tools.javac.code.Symbol hiddenSym
        11: .line 594
            aload 2 /* types */
            aload 1 /* currentClass */
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.interfaces:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
        12: .line 595
            aload 2 /* types */
            aload 1 /* currentClass */
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 20
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types com.sun.tools.javac.code.Symbol top java.util.Iterator
      StackMap stack:
        13: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            astore 4 /* st */
        start local 4 // com.sun.tools.javac.code.Type st
        14: .line 596
            aload 4 /* st */
            ifnull 20
            aload 4 /* st */
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifeq 20
        15: .line 597
            aload 0 /* this */
            aload 4 /* st */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.hiddenInInternal:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Symbol;
            astore 6 /* sym */
        start local 6 // com.sun.tools.javac.code.Symbol sym
        16: .line 598
            aload 6 /* sym */
            aload 0 /* this */
            if_acmpne 18
        17: .line 599
            aload 0 /* this */
            areturn
        18: .line 600
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Type java.util.Iterator com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 6 /* sym */
            ifnull 20
        19: .line 601
            aload 6 /* sym */
            astore 3 /* hiddenSym */
        end local 6 // com.sun.tools.javac.code.Symbol sym
        end local 4 // com.sun.tools.javac.code.Type st
        20: .line 594
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Types com.sun.tools.javac.code.Symbol top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        21: .line 605
            aload 3 /* hiddenSym */
            areturn
        end local 3 // com.sun.tools.javac.code.Symbol hiddenSym
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol currentClass
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0          this  Lcom/sun/tools/javac/code/Symbol;
            0   22     1  currentClass  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            0   22     2         types  Lcom/sun/tools/javac/code/Types;
            4    9     3           sym  Lcom/sun/tools/javac/code/Symbol;
           11   22     3     hiddenSym  Lcom/sun/tools/javac/code/Symbol;
           14   20     4            st  Lcom/sun/tools/javac/code/Type;
           16   20     6           sym  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
              Name  Flags
      currentClass  
      types         

  public final boolean isAccessibleIn(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol clazz
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 616
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.flags_field:J
            ldc 7
            land
            l2i
            tableswitch { // 0 - 4
                    0: 6
                    1: 1
                    2: 2
                    3: 1
                    4: 4
              default: 1
          }
         1: .line 619
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            aload 1 /* clazz */
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
         4: .line 624
      StackMap locals:
      StackMap stack:
            aload 1 /* clazz */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 512
            land
            lconst_0
            lcmp
            ifne 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
         6: .line 626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.packge:()Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            astore 3 /* thisPackage */
        start local 3 // com.sun.tools.javac.code.Symbol$PackageSymbol thisPackage
         7: .line 627
            aload 1 /* clazz */
            astore 4 /* sup */
        start local 4 // com.sun.tools.javac.code.Symbol sup
         8: .line 628
            goto 18
         9: .line 631
      StackMap locals: com.sun.tools.javac.code.Symbol$PackageSymbol com.sun.tools.javac.code.Symbol
      StackMap stack:
            aload 4 /* sup */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getUpperBound:()Lcom/sun/tools/javac/code/Type;
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            astore 4 /* sup */
        10: .line 630
      StackMap locals:
      StackMap stack:
            aload 4 /* sup */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            getstatic com.sun.tools.javac.code.TypeTag.TYPEVAR:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifne 9
        11: .line 632
            aload 4 /* sup */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.isErroneous:()Z
            ifeq 13
        12: .line 633
            iconst_1
            ireturn
        13: .line 634
      StackMap locals:
      StackMap stack:
            aload 4 /* sup */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 16777216
            land
            lconst_0
            lcmp
            ifeq 15
        14: .line 635
            goto 17
        15: .line 636
      StackMap locals:
      StackMap stack:
            aload 4 /* sup */
            invokevirtual com.sun.tools.javac.code.Symbol.packge:()Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            aload 3 /* thisPackage */
            if_acmpeq 17
        16: .line 637
            iconst_0
            ireturn
        17: .line 629
      StackMap locals:
      StackMap stack:
            aload 2 /* types */
            aload 4 /* sup */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            astore 4 /* sup */
        18: .line 628
      StackMap locals:
      StackMap stack:
            aload 4 /* sup */
            ifnull 19
            aload 4 /* sup */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            if_acmpne 10
        end local 4 // com.sun.tools.javac.code.Symbol sup
        19: .line 639
      StackMap locals:
      StackMap stack:
            aload 1 /* clazz */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            ldc 512
            land
            lconst_0
            lcmp
            ifne 20
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        20: iconst_0
            ireturn
        end local 3 // com.sun.tools.javac.code.Symbol$PackageSymbol thisPackage
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol clazz
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lcom/sun/tools/javac/code/Symbol;
            0   21     1        clazz  Lcom/sun/tools/javac/code/Symbol;
            0   21     2        types  Lcom/sun/tools/javac/code/Types;
            7   21     3  thisPackage  Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            8   19     4          sup  Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      clazz  
      types  

  public boolean isInheritedIn(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol clazz
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 651
            aload 0 /* this */
            aload 1 /* clazz */
            aload 2 /* types */
            invokevirtual com.sun.tools.javac.code.Symbol.isAccessibleIn:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Types;)Z
            ireturn
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Symbol clazz
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1  clazz  Lcom/sun/tools/javac/code/Symbol;
            0    1     2  types  Lcom/sun/tools/javac/code/Types;
    MethodParameters:
       Name  Flags
      clazz  
      types  

  public com.sun.tools.javac.code.Symbol asMemberOf(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Types);
    descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Type site
        start local 2 // com.sun.tools.javac.code.Types types
         0: .line 659
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 2 // com.sun.tools.javac.code.Types types
        end local 1 // com.sun.tools.javac.code.Type site
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1   site  Lcom/sun/tools/javac/code/Type;
            0    1     2  types  Lcom/sun/tools/javac/code/Types;
    MethodParameters:
       Name  Flags
      site   
      types  

  public boolean overrides(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.code.Symbol$TypeSymbol, com.sun.tools.javac.code.Types, boolean);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;Lcom/sun/tools/javac/code/Types;Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=5, args_size=5
        start local 0 // com.sun.tools.javac.code.Symbol this
        start local 1 // com.sun.tools.javac.code.Symbol _other
        start local 2 // com.sun.tools.javac.code.Symbol$TypeSymbol origin
        start local 3 // com.sun.tools.javac.code.Types types
        start local 4 // boolean checkResult
         0: .line 672
            iconst_0
            ireturn
        end local 4 // boolean checkResult
        end local 3 // com.sun.tools.javac.code.Types types
        end local 2 // com.sun.tools.javac.code.Symbol$TypeSymbol origin
        end local 1 // com.sun.tools.javac.code.Symbol _other
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/sun/tools/javac/code/Symbol;
            0    1     1       _other  Lcom/sun/tools/javac/code/Symbol;
            0    1     2       origin  Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            0    1     3        types  Lcom/sun/tools/javac/code/Types;
            0    1     4  checkResult  Z
    MethodParameters:
             Name  Flags
      _other       
      origin       
      types        
      checkResult  

  public void complete();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 678
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
            getstatic com.sun.tools.javac.code.Symbol$Completer.NULL_COMPLETER:Lcom/sun/tools/javac/code/Symbol$Completer;
            if_acmpeq 4
         1: .line 679
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
            astore 1 /* c */
        start local 1 // com.sun.tools.javac.code.Symbol$Completer c
         2: .line 680
            aload 0 /* this */
            getstatic com.sun.tools.javac.code.Symbol$Completer.NULL_COMPLETER:Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
         3: .line 681
            aload 1 /* c */
            aload 0 /* this */
            invokeinterface com.sun.tools.javac.code.Symbol$Completer.complete:(Lcom/sun/tools/javac/code/Symbol;)V
        end local 1 // com.sun.tools.javac.code.Symbol$Completer c
         4: .line 683
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;
            2    4     1     c  Lcom/sun/tools/javac/code/Symbol$Completer;
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  public void apiComplete();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 687
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.complete:()V
         1: .line 688
            goto 4
      StackMap locals:
      StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
         2: astore 1 /* cf */
        start local 1 // com.sun.tools.javac.code.Symbol$CompletionFailure cf
         3: .line 689
            aload 1 /* cf */
            getfield com.sun.tools.javac.code.Symbol$CompletionFailure.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
            aload 1 /* cf */
            invokevirtual com.sun.tools.javac.code.DeferredCompletionFailureHandler.handleAPICompletionFailure:(Lcom/sun/tools/javac/code/Symbol$CompletionFailure;)V
        end local 1 // com.sun.tools.javac.code.Symbol$CompletionFailure cf
         4: .line 691
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/code/Symbol;
            3    4     1    cf  Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
      Exception table:
        from    to  target  type
           0     1       2  Class com.sun.tools.javac.code.Symbol$CompletionFailure
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  public boolean exists();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 696
            iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Type asType();
    descriptor: ()Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 701
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.code.Symbol getEnclosingElement();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 706
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.owner:Lcom/sun/tools/javac/code/Symbol;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public javax.lang.model.element.ElementKind getKind();
    descriptor: ()Ljavax/lang/model/element/ElementKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 711
            getstatic javax.lang.model.element.ElementKind.OTHER:Ljavax/lang/model/element/ElementKind;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public java.util.Set<javax.lang.model.element.Modifier> getModifiers();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 716
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.apiComplete:()V
         1: .line 717
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.flags:()J
            invokestatic com.sun.tools.javac.code.Flags.asModifierSet:(J)Ljava/util/Set;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Ljava/util/Set<Ljavax/lang/model/element/Modifier;>;

  public com.sun.tools.javac.util.Name getSimpleName();
    descriptor: ()Lcom/sun/tools/javac/util/Name;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 722
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.name:Lcom/sun/tools/javac/util/Name;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$Compound> getAnnotationMirrors();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 731
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.apiComplete:()V
         1: .line 732
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Symbol.getRawAttributes:()Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$Compound;>;

  public java.util.List<com.sun.tools.javac.code.Symbol> getEnclosedElements();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 739
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Symbol;
    Signature: ()Ljava/util/List<Lcom/sun/tools/javac/code/Symbol;>;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Symbol$TypeVariableSymbol> getTypeParameters();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol this
         0: .line 743
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 1 /* l */
        start local 1 // com.sun.tools.javac.util.ListBuffer l
         1: .line 744
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getTypeArguments:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            astore 2 /* t */
        start local 2 // com.sun.tools.javac.code.Type t
         3: .line 745
            aload 2 /* t */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            invokevirtual com.sun.tools.javac.code.Symbol$TypeSymbol.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.TYPE_PARAMETER:Ljavax/lang/model/element/ElementKind;
            if_acmpne 4
            iconst_1
            goto 5
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type java.util.Iterator
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
         6: .line 746
            aload 1 /* l */
            aload 2 /* t */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            checkcast com.sun.tools.javac.code.Symbol$TypeVariableSymbol
            invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
            pop
        end local 2 // com.sun.tools.javac.code.Type t
         7: .line 744
      StackMap locals: com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.ListBuffer top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 748
            aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            areturn
        end local 1 // com.sun.tools.javac.util.ListBuffer l
        end local 0 // com.sun.tools.javac.code.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/tools/javac/code/Symbol;
            1    9     1     l  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$TypeVariableSymbol;>;
            3    7     2     t  Lcom/sun/tools/javac/code/Type;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$TypeVariableSymbol;>;

  public java.util.List getAnnotationMirrors();
    descriptor: ()Ljava/util/List;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.code.Symbol.getAnnotationMirrors:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.lang.model.element.Name getSimpleName();
    descriptor: ()Ljavax/lang/model/element/Name;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.code.Symbol.getSimpleName:()Lcom/sun/tools/javac/util/Name;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.lang.model.type.TypeMirror asType();
    descriptor: ()Ljavax/lang/model/type/TypeMirror;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.code.Symbol.asType:()Lcom/sun/tools/javac/code/Type;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.lang.model.element.Element getEnclosingElement();
    descriptor: ()Ljavax/lang/model/element/Element;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.code.Symbol.getEnclosingElement:()Lcom/sun/tools/javac/code/Symbol;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  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 95
            getstatic com.sun.tools.javac.code.Symbol.$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 com.sun.tools.javac.code.Symbol.$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
}
SourceFile: "Symbol.java"
NestMembers:
  com.sun.tools.javac.code.Symbol$BindingSymbol  com.sun.tools.javac.code.Symbol$ClassSymbol  com.sun.tools.javac.code.Symbol$Completer  com.sun.tools.javac.code.Symbol$Completer$1  com.sun.tools.javac.code.Symbol$CompletionFailure  com.sun.tools.javac.code.Symbol$DelegatedSymbol  com.sun.tools.javac.code.Symbol$DynamicMethodSymbol  com.sun.tools.javac.code.Symbol$DynamicVarSymbol  com.sun.tools.javac.code.Symbol$MethodHandleSymbol  com.sun.tools.javac.code.Symbol$MethodSymbol  com.sun.tools.javac.code.Symbol$MethodSymbol$1  com.sun.tools.javac.code.Symbol$ModuleFlags  com.sun.tools.javac.code.Symbol$ModuleResolutionFlags  com.sun.tools.javac.code.Symbol$ModuleSymbol  com.sun.tools.javac.code.Symbol$OperatorSymbol  com.sun.tools.javac.code.Symbol$OperatorSymbol$AccessCode  com.sun.tools.javac.code.Symbol$PackageSymbol  com.sun.tools.javac.code.Symbol$ParamSymbol  com.sun.tools.javac.code.Symbol$RecordComponent  com.sun.tools.javac.code.Symbol$RootPackageSymbol  com.sun.tools.javac.code.Symbol$TypeSymbol  com.sun.tools.javac.code.Symbol$TypeVariableSymbol  com.sun.tools.javac.code.Symbol$VarSymbol  com.sun.tools.javac.code.Symbol$VarSymbol$1  com.sun.tools.javac.code.Symbol$Visitor
InnerClasses:
  public Compound = com.sun.tools.javac.code.Attribute$Compound of com.sun.tools.javac.code.Attribute
  public TypeCompound = com.sun.tools.javac.code.Attribute$TypeCompound of com.sun.tools.javac.code.Attribute
  public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
  public KindSelector = com.sun.tools.javac.code.Kinds$KindSelector of com.sun.tools.javac.code.Kinds
  public abstract WriteableScope = com.sun.tools.javac.code.Scope$WriteableScope of com.sun.tools.javac.code.Scope
  public BindingSymbol = com.sun.tools.javac.code.Symbol$BindingSymbol of com.sun.tools.javac.code.Symbol
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public abstract Completer = com.sun.tools.javac.code.Symbol$Completer of com.sun.tools.javac.code.Symbol
  public CompletionFailure = com.sun.tools.javac.code.Symbol$CompletionFailure of com.sun.tools.javac.code.Symbol
  public DelegatedSymbol = com.sun.tools.javac.code.Symbol$DelegatedSymbol of com.sun.tools.javac.code.Symbol
  public DynamicMethodSymbol = com.sun.tools.javac.code.Symbol$DynamicMethodSymbol of com.sun.tools.javac.code.Symbol
  public DynamicVarSymbol = com.sun.tools.javac.code.Symbol$DynamicVarSymbol of com.sun.tools.javac.code.Symbol
  public MethodHandleSymbol = com.sun.tools.javac.code.Symbol$MethodHandleSymbol of com.sun.tools.javac.code.Symbol
  public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
  public final ModuleFlags = com.sun.tools.javac.code.Symbol$ModuleFlags of com.sun.tools.javac.code.Symbol
  public final ModuleResolutionFlags = com.sun.tools.javac.code.Symbol$ModuleResolutionFlags of com.sun.tools.javac.code.Symbol
  public ModuleSymbol = com.sun.tools.javac.code.Symbol$ModuleSymbol of com.sun.tools.javac.code.Symbol
  public OperatorSymbol = com.sun.tools.javac.code.Symbol$OperatorSymbol of com.sun.tools.javac.code.Symbol
  public PackageSymbol = com.sun.tools.javac.code.Symbol$PackageSymbol of com.sun.tools.javac.code.Symbol
  public ParamSymbol = com.sun.tools.javac.code.Symbol$ParamSymbol of com.sun.tools.javac.code.Symbol
  public RecordComponent = com.sun.tools.javac.code.Symbol$RecordComponent of com.sun.tools.javac.code.Symbol
  public RootPackageSymbol = com.sun.tools.javac.code.Symbol$RootPackageSymbol of com.sun.tools.javac.code.Symbol
  public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
  public TypeVariableSymbol = com.sun.tools.javac.code.Symbol$TypeVariableSymbol of com.sun.tools.javac.code.Symbol
  public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
  public abstract Visitor = com.sun.tools.javac.code.Symbol$Visitor of com.sun.tools.javac.code.Symbol
  public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
  public abstract Table = com.sun.tools.javac.util.Name$Table of com.sun.tools.javac.util.Name