final class java.lang.invoke.MemberName implements java.lang.reflect.Member, java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: java.lang.invoke.MemberName
  super_class: java.lang.Object
{
  private java.lang.Class<?> clazz;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Object type;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private int flags;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Object resolution;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private static final int MH_INVOKE_MODS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 273

  static final int BRIDGE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  static final int VARARGS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 128

  static final int SYNTHETIC;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 4096

  static final int ANNOTATION;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8192

  static final int ENUM;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 16384

  static final java.lang.String CONSTRUCTOR_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "<init>"

  static final int RECOGNIZED_MODIFIERS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 65535

  static final int IS_METHOD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 65536

  static final int IS_CONSTRUCTOR;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 131072

  static final int IS_FIELD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 262144

  static final int IS_TYPE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 524288

  static final int CALLER_SENSITIVE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1048576

  static final int ALL_ACCESS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  static final int ALL_KINDS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 983040

  static final int IS_INVOCABLE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 196608

  static final int IS_FIELD_OR_METHOD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 327680

  static final int SEARCH_ALL_SUPERS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 3145728

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 72
            ldc Ljava/lang/invoke/MemberName;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
         3: .line 439
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Class<?> getDeclaringClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 85
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.ClassLoader getClassLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 90
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 99
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ifnonnull 4
         1: .line 100
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 101
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ifnonnull 4
         3: .line 102
            aconst_null
            areturn
         4: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.invoke.MethodType getMethodOrFieldType();
    descriptor: ()Ljava/lang/invoke/MethodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 109
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 2
         1: .line 110
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            areturn
         2: .line 111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isGetter:()Z
            ifeq 4
         3: .line 112
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            areturn
         4: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isSetter:()Z
            ifeq 6
         5: .line 114
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            areturn
         6: .line 115
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "not a method or field: "
            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.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.invoke.MethodType getMethodType();
    descriptor: ()Ljava/lang/invoke/MethodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 122
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 123
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 124
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 125
            aconst_null
            areturn
         4: .line 128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifne 6
         5: .line 129
            ldc "not invocable, no method type"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         6: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            astore 1 /* type */
        start local 1 // java.lang.Object type
         7: .line 135
            aload 1 /* type */
            instanceof java.lang.invoke.MethodType
            ifeq 9
         8: .line 136
            aload 1 /* type */
            checkcast java.lang.invoke.MethodType
            areturn
        end local 1 // java.lang.Object type
         9: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
        10: .line 142
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 15
        11: .line 143
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* sig */
        start local 2 // java.lang.String sig
        12: .line 144
            aload 2 /* sig */
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.invoke.MethodType.fromMethodDescriptorString:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/invoke/MethodType;
            astore 3 /* res */
        start local 3 // java.lang.invoke.MethodType res
        13: .line 145
            aload 0 /* this */
            aload 3 /* res */
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
        end local 3 // java.lang.invoke.MethodType res
        end local 2 // java.lang.String sig
        14: .line 146
            goto 21
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
        15: aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.Object[]
            ifeq 21
        16: .line 147
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.Object[]
            astore 2 /* typeInfo */
        start local 2 // java.lang.Object[] typeInfo
        17: .line 148
            aload 2 /* typeInfo */
            iconst_1
            aaload
            checkcast java.lang.Class[]
            astore 3 /* ptypes */
        start local 3 // java.lang.Class[] ptypes
        18: .line 149
            aload 2 /* typeInfo */
            iconst_0
            aaload
            checkcast java.lang.Class
            astore 4 /* rtype */
        start local 4 // java.lang.Class rtype
        19: .line 150
            aload 4 /* rtype */
            aload 3 /* ptypes */
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 5 /* res */
        start local 5 // java.lang.invoke.MethodType res
        20: .line 151
            aload 0 /* this */
            aload 5 /* res */
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
        end local 5 // java.lang.invoke.MethodType res
        end local 4 // java.lang.Class rtype
        end local 3 // java.lang.Class[] ptypes
        end local 2 // java.lang.Object[] typeInfo
        21: .line 154
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 22
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.invoke.MethodType
            ifne 22
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "bad method type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            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
        22: .line 141
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        23: goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: aload 1
            monitorexit
        25: athrow
        26: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.invoke.MethodType
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   27     0      this  Ljava/lang/invoke/MemberName;
            7    9     1      type  Ljava/lang/Object;
           12   14     2       sig  Ljava/lang/String;
           13   14     3       res  Ljava/lang/invoke/MethodType;
           17   21     2  typeInfo  [Ljava/lang/Object;
           18   21     3    ptypes  [Ljava/lang/Class;
           19   21     4     rtype  Ljava/lang/Class<*>;
           20   21     5       res  Ljava/lang/invoke/MethodType;
      Exception table:
        from    to  target  type
          10    23      24  any
          24    25      24  any

  public java.lang.invoke.MethodType getInvocationType();
    descriptor: ()Ljava/lang/invoke/MethodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 164
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodOrFieldType:()Ljava/lang/invoke/MethodType;
            astore 1 /* itype */
        start local 1 // java.lang.invoke.MethodType itype
         1: .line 165
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 3
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            bipush 8
            if_icmpne 3
         2: .line 166
            aload 1 /* itype */
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            areturn
         3: .line 167
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            ifne 5
         4: .line 168
            aload 1 /* itype */
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            areturn
         5: .line 169
      StackMap locals:
      StackMap stack:
            aload 1 /* itype */
            areturn
        end local 1 // java.lang.invoke.MethodType itype
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/lang/invoke/MemberName;
            1    6     1  itype  Ljava/lang/invoke/MethodType;

  public java.lang.Class<?>[] getParameterTypes();
    descriptor: ()[Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 174
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.parameterArray:()[Ljava/lang/Class;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;
    Signature: ()[Ljava/lang/Class<*>;

  public java.lang.Class<?> getReturnType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 179
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.Class<?> getFieldType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 187
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 188
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 189
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 190
            aconst_null
            areturn
         4: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 6
         5: .line 194
            ldc "not a field or nested class, no simple type"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         6: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            astore 1 /* type */
        start local 1 // java.lang.Object type
         7: .line 200
            aload 1 /* type */
            instanceof java.lang.Class
            ifeq 9
         8: .line 201
            aload 1 /* type */
            checkcast java.lang.Class
            areturn
        end local 1 // java.lang.Object type
         9: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
        10: .line 207
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 15
        11: .line 208
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* sig */
        start local 2 // java.lang.String sig
        12: .line 209
            new java.lang.StringBuilder
            dup
            ldc "()"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* sig */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.invoke.MethodType.fromMethodDescriptorString:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/invoke/MethodType;
            astore 3 /* mtype */
        start local 3 // java.lang.invoke.MethodType mtype
        13: .line 210
            aload 3 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 4 /* res */
        start local 4 // java.lang.Class res
        14: .line 211
            aload 0 /* this */
            aload 4 /* res */
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
        end local 4 // java.lang.Class res
        end local 3 // java.lang.invoke.MethodType mtype
        end local 2 // java.lang.String sig
        15: .line 214
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 16
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.Class
            ifne 16
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "bad field type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            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
        16: .line 206
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        17: goto 20
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: aload 1
            monitorexit
        19: athrow
        20: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.Class
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   21     0   this  Ljava/lang/invoke/MemberName;
            7    9     1   type  Ljava/lang/Object;
           12   15     2    sig  Ljava/lang/String;
           13   15     3  mtype  Ljava/lang/invoke/MethodType;
           14   15     4    res  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
          10    17      18  any
          18    19      18  any
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.Object getType();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 221
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
      StackMap locals:
      StackMap stack: java.io.Serializable
         2: areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.String getSignature();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 228
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 229
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 230
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 231
            aconst_null
            areturn
         4: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 6
         5: .line 235
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/invoke/MethodType;)Ljava/lang/String;
            areturn
         6: .line 237
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/Class;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/invoke/MemberName;

  public int getModifiers();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 244
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            ldc 65535
            iand
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public byte getReferenceKind();
    descriptor: ()B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 250
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            bipush 24
            iushr
            bipush 15
            iand
            i2b
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  private boolean referenceKindIsConsistent();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 253
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 254
            iload 1 /* refKind */
            ifne 2
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ireturn
         2: .line 255
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isField:()Z
            ifeq 5
         3: .line 256
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.staticIsConsistent:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 257
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 17
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsField:(B)Z
            ifne 17
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 7
         6: .line 259
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 17
            iload 1 /* refKind */
            bipush 8
            if_icmpeq 17
            iload 1 /* refKind */
            bipush 7
            if_icmpeq 17
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 260
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 16
         8: .line 261
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 9
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.staticIsConsistent:()Z
            ifne 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 262
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 10
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsMethod:(B)Z
            ifne 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
            ifeq 17
        11: .line 264
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 17
            iload 1 /* refKind */
            bipush 9
            if_icmpeq 17
        12: .line 265
            iload 1 /* refKind */
            bipush 6
            if_icmpeq 17
        13: .line 266
            iload 1 /* refKind */
            bipush 7
            if_icmpeq 17
        14: .line 267
            iload 1 /* refKind */
            iconst_5
            if_icmpne 15
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isObjectPublicMethod:()Z
            ifne 17
      StackMap locals:
      StackMap stack:
        15: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        16: .line 269
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 17
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        17: .line 271
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Ljava/lang/invoke/MemberName;
            1   18     1  refKind  B

  private boolean isObjectPublicMethod();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 274
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ldc Ljava/lang/Object;
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            astore 1 /* mtype */
        start local 1 // java.lang.invoke.MethodType mtype
         2: .line 276
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ldc "toString"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            ldc Ljava/lang/String;
            if_acmpne 4
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            ifne 4
         3: .line 277
            iconst_1
            ireturn
         4: .line 278
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ldc "hashCode"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpne 6
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            ifne 6
         5: .line 279
            iconst_1
            ireturn
         6: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ldc "equals"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpne 8
            aload 1 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iconst_1
            if_icmpne 8
            aload 1 /* mtype */
            iconst_0
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            ldc Ljava/lang/Object;
            if_acmpne 8
         7: .line 281
            iconst_1
            ireturn
         8: .line 282
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.invoke.MethodType mtype
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljava/lang/invoke/MemberName;
            2    9     1  mtype  Ljava/lang/invoke/MethodType;

  boolean referenceKindIsConsistentWith(int);
    descriptor: (I)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // int originalRefKind
         0: .line 285
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 2 /* refKind */
        start local 2 // int refKind
         1: .line 286
            iload 2 /* refKind */
            iload 1 /* originalRefKind */
            if_icmpne 2
            iconst_1
            ireturn
         2: .line 287
      StackMap locals: int
      StackMap stack:
            iload 1 /* originalRefKind */
            tableswitch { // 5 - 9
                    5: 6
                    6: 8
                    7: 8
                    8: 6
                    9: 3
              default: 8
          }
         3: .line 290
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 5
            iload 2 /* refKind */
            iconst_5
            if_icmpeq 5
         4: .line 291
            iload 2 /* refKind */
            bipush 7
            if_icmpeq 5
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         5: .line 292
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         6: .line 296
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 7
            iload 2 /* refKind */
            bipush 7
            if_icmpeq 7
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 297
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 298
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 10
            new java.lang.AssertionError
            dup
         9: .line 299
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " != "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* originalRefKind */
            i2b
            invokestatic java.lang.invoke.MethodHandleNatives.refKindName:(B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        10: .line 300
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // int refKind
        end local 1 // int originalRefKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Ljava/lang/invoke/MemberName;
            0   11     1  originalRefKind  I
            1   11     2          refKind  I
    MethodParameters:
                 Name  Flags
      originalRefKind  

  private boolean staticIsConsistent();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 303
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 304
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsStatic:(B)Z
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            if_icmpeq 2
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getModifiers:()I
            ifeq 2
            iconst_0
            ireturn
      StackMap locals: int
      StackMap stack:
         2: iconst_1
            ireturn
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Ljava/lang/invoke/MemberName;
            1    3     1  refKind  B

  private boolean vminfoIsConsistent();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 307
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 308
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 309
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokestatic java.lang.invoke.MethodHandleNatives.getMemberVMInfo:(Ljava/lang/invoke/MemberName;)Ljava/lang/Object;
            astore 2 /* vminfo */
        start local 2 // java.lang.Object vminfo
         3: .line 310
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 4
            aload 2 /* vminfo */
            instanceof java.lang.Object[]
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 311
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* vminfo */
            checkcast java.lang.Object[]
            iconst_0
            aaload
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lstore 3 /* vmindex */
        start local 3 // long vmindex
         5: .line 312
            aload 2 /* vminfo */
            checkcast java.lang.Object[]
            iconst_1
            aaload
            astore 5 /* vmtarget */
        start local 5 // java.lang.Object vmtarget
         6: .line 313
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsField:(B)Z
            ifeq 9
         7: .line 314
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 8
            lload 3 /* vmindex */
            lconst_0
            lcmp
            ifge 8
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            lload 3 /* vmindex */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            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
         8: .line 315
      StackMap locals: long java.lang.Object
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 13
            aload 5 /* vmtarget */
            instanceof java.lang.Class
            ifne 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 317
      StackMap locals:
      StackMap stack:
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindDoesDispatch:(B)Z
            ifeq 11
        10: .line 318
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 12
            lload 3 /* vmindex */
            lconst_0
            lcmp
            ifge 12
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            lload 3 /* vmindex */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            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
        11: .line 320
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 12
            lload 3 /* vmindex */
            lconst_0
            lcmp
            iflt 12
            new java.lang.AssertionError
            dup
            lload 3 /* vmindex */
            invokespecial java.lang.AssertionError.<init>:(J)V
            athrow
        12: .line 321
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 13
            aload 5 /* vmtarget */
            instanceof java.lang.invoke.MemberName
            ifne 13
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 5 /* vmtarget */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            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
        13: .line 323
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // java.lang.Object vmtarget
        end local 3 // long vmindex
        end local 2 // java.lang.Object vminfo
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Ljava/lang/invoke/MemberName;
            1   14     1   refKind  B
            3   14     2    vminfo  Ljava/lang/Object;
            5   14     3   vmindex  J
            6   14     5  vmtarget  Ljava/lang/Object;

  private java.lang.invoke.MemberName changeReferenceKind(byte, byte);
    descriptor: (BB)Ljava/lang/invoke/MemberName;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // byte refKind
        start local 2 // byte oldKind
         0: .line 327
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            iload 2 /* oldKind */
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 328
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 2
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsValid:(I)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield java.lang.invoke.MemberName.flags:I
            iload 1 /* refKind */
            iload 2 /* oldKind */
            isub
            bipush 24
            ishl
            iadd
            putfield java.lang.invoke.MemberName.flags:I
         3: .line 330
            aload 0 /* this */
            areturn
        end local 2 // byte oldKind
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljava/lang/invoke/MemberName;
            0    4     1  refKind  B
            0    4     2  oldKind  B
    MethodParameters:
         Name  Flags
      refKind  
      oldKind  

  private boolean testFlags(int, int);
    descriptor: (II)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // int mask
        start local 2 // int value
         0: .line 334
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            iload 1 /* mask */
            iand
            iload 2 /* value */
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int value
        end local 1 // int mask
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/lang/invoke/MemberName;
            0    2     1   mask  I
            0    2     2  value  I
    MethodParameters:
       Name  Flags
      mask   
      value  

  private boolean testAllFlags(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // int mask
         0: .line 337
            aload 0 /* this */
            iload 1 /* mask */
            iload 1 /* mask */
            invokevirtual java.lang.invoke.MemberName.testFlags:(II)Z
            ireturn
        end local 1 // int mask
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;
            0    1     1  mask  I
    MethodParameters:
      Name  Flags
      mask  

  private boolean testAnyFlags(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // int mask
         0: .line 340
            aload 0 /* this */
            iload 1 /* mask */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.testFlags:(II)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int mask
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/invoke/MemberName;
            0    3     1  mask  I
    MethodParameters:
      Name  Flags
      mask  

  public boolean isMethodHandleInvoke();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 348
            aload 0 /* this */
            sipush 280
            sipush 272
            invokevirtual java.lang.invoke.MemberName.testFlags:(II)Z
            ifeq 3
         1: .line 349
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ldc Ljava/lang/invoke/MethodHandle;
            if_acmpne 3
         2: .line 350
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            invokestatic java.lang.invoke.MemberName.isMethodHandleInvokeName:(Ljava/lang/String;)Z
            ireturn
         3: .line 352
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/invoke/MemberName;

  public static boolean isMethodHandleInvokeName(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String name
         0: .line 355
            aload 0 /* name */
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -1183693704: 1
            941760871: 2
              default: 4
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "invoke"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 4
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "invokeExact"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 4
         3: .line 358
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         4: .line 360
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public boolean isStatic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 367
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isPublic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 371
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isPrivate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 375
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isPrivate:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isProtected();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 379
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isProtected:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isFinal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 383
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean canBeStaticallyBound();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 387
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.getModifiers:()I
            ior
            invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isVolatile();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 391
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isVolatile:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isAbstract();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 395
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isNative();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 399
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
            invokestatic java.lang.reflect.Modifier.isNative:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isBridge();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 411
            aload 0 /* this */
            ldc 65600
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isVarargs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 415
            aload 0 /* this */
            sipush 128
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ifeq 1
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/MemberName;

  public boolean isSynthetic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 419
            aload 0 /* this */
            sipush 4096
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isInvocable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 443
            aload 0 /* this */
            ldc 196608
            invokevirtual java.lang.invoke.MemberName.testAnyFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isFieldOrMethod();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 447
            aload 0 /* this */
            ldc 327680
            invokevirtual java.lang.invoke.MemberName.testAnyFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isMethod();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 451
            aload 0 /* this */
            ldc 65536
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isConstructor();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 455
            aload 0 /* this */
            ldc 131072
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isField();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 459
            aload 0 /* this */
            ldc 262144
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isType();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 463
            aload 0 /* this */
            ldc 524288
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isPackage();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 467
            aload 0 /* this */
            bipush 7
            invokevirtual java.lang.invoke.MemberName.testAnyFlags:(I)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/invoke/MemberName;

  public boolean isCallerSensitive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 471
            aload 0 /* this */
            ldc 1048576
            invokevirtual java.lang.invoke.MemberName.testAllFlags:(I)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isAccessibleFrom(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class lookupClass
         0: .line 476
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.flags:I
         1: .line 477
            aload 1 /* lookupClass */
            bipush 15
         2: .line 476
            invokestatic sun.invoke.util.VerifyAccess.isMemberAccessible:(Ljava/lang/Class;Ljava/lang/Class;ILjava/lang/Class;I)Z
            ireturn
        end local 1 // java.lang.Class lookupClass
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ljava/lang/invoke/MemberName;
            0    3     1  lookupClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      lookupClass  

  private void init(java.lang.Class<?>, java.lang.String, , );
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class defClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Object type
        start local 4 // int flags
         0: .line 486
            aload 0 /* this */
            aload 1 /* defClass */
            putfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
         1: .line 487
            aload 0 /* this */
            aload 2 /* name */
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         2: .line 488
            aload 0 /* this */
            aload 3 /* type */
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         3: .line 489
            aload 0 /* this */
            iload 4 /* flags */
            putfield java.lang.invoke.MemberName.flags:I
         4: .line 490
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 5
            aload 0 /* this */
            ldc 983040
            invokevirtual java.lang.invoke.MemberName.testAnyFlags:(I)Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 491
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 6
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            ifnull 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 493
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int flags
        end local 3 // java.lang.Object type
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class defClass
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Ljava/lang/invoke/MemberName;
            0    7     1  defClass  Ljava/lang/Class<*>;
            0    7     2      name  Ljava/lang/String;
            0    7     3      type  Ljava/lang/Object;
            0    7     4     flags  I
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/Object;I)V
    MethodParameters:
          Name  Flags
      defClass  
      name      
      type      
      flags     

  private void expandFromVM();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 500
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnull 2
         1: .line 501
            return
         2: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 4
         3: .line 504
            return
         4: .line 506
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic java.lang.invoke.MethodHandleNatives.expand:(Ljava/lang/invoke/MemberName;)V
         5: .line 507
            return
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/lang/invoke/MemberName;

  private static int flagsMods(int, int, byte);
    descriptor: (IIB)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // int flags
        start local 1 // int mods
        start local 2 // byte refKind
         0: .line 511
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 1
            iload 0 /* flags */
            ldc 65535
            iand
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 512
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 2
            iload 1 /* mods */
            ldc -65536
            iand
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 513
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 3
            iload 2 /* refKind */
            bipush -16
            iand
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 514
      StackMap locals:
      StackMap stack:
            iload 0 /* flags */
            iload 1 /* mods */
            ior
            iload 2 /* refKind */
            bipush 24
            ishl
            ior
            ireturn
        end local 2 // byte refKind
        end local 1 // int mods
        end local 0 // int flags
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0    flags  I
            0    4     1     mods  I
            0    4     2  refKind  B
    MethodParameters:
         Name  Flags
      flags    
      mods     
      refKind  

  public void <init>(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.reflect.Method m
         0: .line 518
            aload 0 /* this */
            aload 1 /* m */
            iconst_0
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Method;Z)V
         1: .line 519
            return
        end local 1 // java.lang.reflect.Method m
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/MemberName;
            0    2     1     m  Ljava/lang/reflect/Method;
    MethodParameters:
      Name  Flags
      m     

  public void <init>(java.lang.reflect.Method, boolean);
    descriptor: (Ljava/lang/reflect/Method;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.reflect.Method m
        start local 2 // boolean wantSpecial
         0: .line 521
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 1 /* m */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
         2: .line 524
            aload 0 /* this */
            aload 1 /* m */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 525
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 12
         4: .line 526
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            ldc Ljava/lang/invoke/MethodHandle;
            if_acmpne 11
         5: .line 527
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            invokestatic java.lang.invoke.MemberName.isMethodHandleInvokeName:(Ljava/lang/String;)Z
            ifeq 11
         6: .line 531
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 3 /* type */
        start local 3 // java.lang.invoke.MethodType type
         7: .line 532
            ldc 65536
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getModifiers:()I
            iconst_5
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
            istore 4 /* flags */
        start local 4 // int flags
         8: .line 533
            aload 0 /* this */
            ldc Ljava/lang/invoke/MethodHandle;
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            aload 3 /* type */
            iload 4 /* flags */
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
         9: .line 534
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethodHandleInvoke:()Z
            ifeq 11
        10: .line 535
            return
        end local 4 // int flags
        end local 3 // java.lang.invoke.MethodType type
        11: .line 537
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Method int
      StackMap stack:
            new java.lang.LinkageError
            dup
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.toString:()Ljava/lang/String;
            invokespecial java.lang.LinkageError.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 539
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 14
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 13
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 14
      StackMap locals:
      StackMap stack:
        13: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
        15: .line 541
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 17
        16: .line 542
            aload 0 /* this */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            aastore
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
        17: .line 543
      StackMap locals:
      StackMap stack:
            iload 2 /* wantSpecial */
            ifeq 24
        18: .line 544
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isAbstract:()Z
            ifeq 20
        19: .line 545
            new java.lang.AbstractMethodError
            dup
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.AbstractMethodError.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 546
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            iconst_5
            if_icmpne 22
        21: .line 547
            aload 0 /* this */
            bipush 7
            iconst_5
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            pop
            goto 24
        22: .line 548
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            bipush 9
            if_icmpne 24
        23: .line 550
            aload 0 /* this */
            bipush 7
            bipush 9
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            pop
        24: .line 552
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean wantSpecial
        end local 1 // java.lang.reflect.Method m
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         this  Ljava/lang/invoke/MemberName;
            0   25     1            m  Ljava/lang/reflect/Method;
            0   25     2  wantSpecial  Z
            7   11     3         type  Ljava/lang/invoke/MethodType;
            8   11     4        flags  I
    MethodParameters:
             Name  Flags
      m            
      wantSpecial  

  public java.lang.invoke.MemberName asSpecial();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 554
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 5 - 9
                    5: 2
                    6: 5
                    7: 1
                    8: 4
                    9: 3
              default: 5
          }
         1: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         2: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            bipush 7
            iconst_5
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            areturn
         3: .line 557
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            bipush 7
            bipush 9
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            areturn
         4: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            bipush 7
            bipush 8
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            areturn
         5: .line 560
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.invoke.MemberName asConstructor();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 566
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 7 - 8
                    7: 1
                    8: 2
              default: 3
          }
         1: .line 567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            bipush 8
            bipush 7
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            areturn
         2: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         3: .line 570
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.invoke.MemberName asNormalOriginal();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 581
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
            ifeq 1
            bipush 9
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_5
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* normalVirtual */
        start local 1 // byte normalVirtual
         3: .line 582
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 2 /* refKind */
        start local 2 // byte refKind
         4: .line 583
            iload 2 /* refKind */
            istore 3 /* newRefKind */
        start local 3 // byte newRefKind
         5: .line 584
            aload 0 /* this */
            astore 4 /* result */
        start local 4 // java.lang.invoke.MemberName result
         6: .line 585
            iload 2 /* refKind */
            tableswitch { // 5 - 9
                    5: 7
                    6: 8
                    7: 7
                    8: 8
                    9: 7
              default: 8
          }
         7: .line 589
      StackMap locals: java.lang.invoke.MemberName int int int java.lang.invoke.MemberName
      StackMap stack:
            iload 1 /* normalVirtual */
            istore 3 /* newRefKind */
         8: .line 592
      StackMap locals:
      StackMap stack:
            iload 3 /* newRefKind */
            iload 2 /* refKind */
            if_icmpne 10
         9: .line 593
            aload 0 /* this */
            areturn
        10: .line 594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            iload 3 /* newRefKind */
            iload 2 /* refKind */
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            astore 4 /* result */
        11: .line 595
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 12
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokevirtual java.lang.invoke.MemberName.referenceKindIsConsistentWith:(I)Z
            ifne 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 596
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 4 // java.lang.invoke.MemberName result
        end local 3 // byte newRefKind
        end local 2 // byte refKind
        end local 1 // byte normalVirtual
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Ljava/lang/invoke/MemberName;
            3   13     1  normalVirtual  B
            4   13     2        refKind  B
            5   13     3     newRefKind  B
            6   13     4         result  Ljava/lang/invoke/MemberName;

  public void <init>(java.lang.reflect.Constructor<?>);
    descriptor: (Ljava/lang/reflect/Constructor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.reflect.Constructor ctor
         0: .line 600
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 601
            aload 1 /* ctor */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
         2: .line 603
            aload 0 /* this */
            aload 1 /* ctor */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 604
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 5
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 4
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 5
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Constructor
      StackMap stack:
         4: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 605
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "<init>"
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         6: .line 606
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 8
         7: .line 607
            aload 0 /* this */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 1 /* ctor */
            invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
            aastore
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         8: .line 608
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.reflect.Constructor ctor
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/lang/invoke/MemberName;
            0    9     1  ctor  Ljava/lang/reflect/Constructor<*>;
    Signature: (Ljava/lang/reflect/Constructor<*>;)V
    MethodParameters:
      Name  Flags
      ctor  

  public void <init>(java.lang.reflect.Field);
    descriptor: (Ljava/lang/reflect/Field;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.reflect.Field fld
         0: .line 612
            aload 0 /* this */
            aload 1 /* fld */
            iconst_0
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Field;Z)V
         1: .line 613
            return
        end local 1 // java.lang.reflect.Field fld
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/MemberName;
            0    2     1   fld  Ljava/lang/reflect/Field;
    MethodParameters:
      Name  Flags
      fld   

  public void <init>(java.lang.reflect.Field, boolean);
    descriptor: (Ljava/lang/reflect/Field;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.reflect.Field fld
        start local 2 // boolean makeSetter
         0: .line 615
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 616
            aload 1 /* fld */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
         2: .line 618
            aload 0 /* this */
            aload 1 /* fld */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 619
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 5
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 4
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 5
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Field int
      StackMap stack:
         4: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 620
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fld */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         6: .line 621
            aload 0 /* this */
            aload 1 /* fld */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         7: .line 623
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 3 /* refKind */
        start local 3 // byte refKind
         8: .line 624
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 11
            iload 3 /* refKind */
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            ifeq 9
            iconst_2
            goto 10
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Field int int
      StackMap stack: int
         9: iconst_1
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Field int int
      StackMap stack: int int
        10: if_icmpeq 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 625
      StackMap locals:
      StackMap stack:
            iload 2 /* makeSetter */
            ifeq 13
        12: .line 626
            aload 0 /* this */
            iload 3 /* refKind */
            iconst_2
            iadd
            i2b
            iload 3 /* refKind */
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            pop
        13: .line 628
      StackMap locals:
      StackMap stack:
            return
        end local 3 // byte refKind
        end local 2 // boolean makeSetter
        end local 1 // java.lang.reflect.Field fld
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Ljava/lang/invoke/MemberName;
            0   14     1         fld  Ljava/lang/reflect/Field;
            0   14     2  makeSetter  Z
            8   14     3     refKind  B
    MethodParameters:
            Name  Flags
      fld         
      makeSetter  

  public boolean isGetter();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 630
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsGetter:(B)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isSetter();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 633
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsSetter:(B)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.invoke.MemberName asSetter();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 636
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 637
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 2
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsGetter:(B)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 639
      StackMap locals: int
      StackMap stack:
            iload 1 /* refKind */
            iconst_2
            iadd
            i2b
            istore 2 /* setterRefKind */
        start local 2 // byte setterRefKind
         3: .line 640
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            iload 2 /* setterRefKind */
            iload 1 /* refKind */
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            areturn
        end local 2 // byte setterRefKind
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Ljava/lang/invoke/MemberName;
            1    4     1        refKind  B
            3    4     2  setterRefKind  B

  public void <init>(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class type
         0: .line 643
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 644
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual java.lang.Class.getDeclaringClass:()Ljava/lang/Class;
            aload 1 /* type */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aload 1 /* type */
         2: .line 645
            ldc 524288
            aload 1 /* type */
            invokevirtual java.lang.Class.getModifiers:()I
            iconst_0
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
         3: .line 644
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
         4: .line 646
            aload 0 /* this */
            iconst_1
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         5: .line 647
            return
        end local 1 // java.lang.Class type
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/lang/invoke/MemberName;
            0    6     1  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
      Name  Flags
      type  

  static java.lang.invoke.MemberName makeMethodHandleInvoke(java.lang.String, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // java.lang.invoke.MethodType type
         0: .line 656
            aload 0 /* name */
            aload 1 /* type */
            sipush 4369
            invokestatic java.lang.invoke.MemberName.makeMethodHandleInvoke:(Ljava/lang/String;Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/MemberName;
            areturn
        end local 1 // java.lang.invoke.MethodType type
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
            0    1     1  type  Ljava/lang/invoke/MethodType;
    MethodParameters:
      Name  Flags
      name  
      type  

  static java.lang.invoke.MemberName makeMethodHandleInvoke(java.lang.String, java.lang.invoke.MethodType, int);
    descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/MemberName;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.lang.String name
        start local 1 // java.lang.invoke.MethodType type
        start local 2 // int mods
         0: .line 659
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/invoke/MethodHandle;
            aload 0 /* name */
            aload 1 /* type */
            iconst_5
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 3 /* mem */
        start local 3 // java.lang.invoke.MemberName mem
         1: .line 660
            aload 3 /* mem */
            dup
            getfield java.lang.invoke.MemberName.flags:I
            iload 2 /* mods */
            ior
            putfield java.lang.invoke.MemberName.flags:I
         2: .line 661
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 3
            aload 3 /* mem */
            invokevirtual java.lang.invoke.MemberName.isMethodHandleInvoke:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            aload 3 /* mem */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 662
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            aload 3 /* mem */
            areturn
        end local 3 // java.lang.invoke.MemberName mem
        end local 2 // int mods
        end local 1 // java.lang.invoke.MethodType type
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  name  Ljava/lang/String;
            0    4     1  type  Ljava/lang/invoke/MethodType;
            0    4     2  mods  I
            1    4     3   mem  Ljava/lang/invoke/MemberName;
    MethodParameters:
      Name  Flags
      name  
      type  
      mods  

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 666
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  protected java.lang.invoke.MemberName clone();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 671
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast java.lang.invoke.MemberName
         1: areturn
         2: .line 672
      StackMap locals:
      StackMap stack: java.lang.CloneNotSupportedException
            astore 1 /* ex */
        start local 1 // java.lang.CloneNotSupportedException ex
         3: .line 673
            aload 1 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Throwable;)Ljava/lang/InternalError;
            athrow
        end local 1 // java.lang.CloneNotSupportedException ex
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/invoke/MemberName;
            3    4     1    ex  Ljava/lang/CloneNotSupportedException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.CloneNotSupportedException

  public java.lang.invoke.MemberName getDefinition();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 681
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "must be resolved: "
            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.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 682
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ifeq 2
            aload 0 /* this */
            areturn
         2: .line 683
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            astore 1 /* res */
        start local 1 // java.lang.invoke.MemberName res
         3: .line 684
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
         4: .line 685
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         5: .line 686
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         6: .line 687
            aload 1 /* res */
            aload 1 /* res */
            putfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
         7: .line 688
            aload 1 /* res */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         8: .line 689
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 9
            aload 1 /* res */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 690
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            aload 1 /* res */
            areturn
        end local 1 // java.lang.invoke.MemberName res
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/lang/invoke/MemberName;
            3   10     1   res  Ljava/lang/invoke/MemberName;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 695
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getType:()Ljava/lang/Object;
            aastore
            invokestatic java.util.Objects.hash:([Ljava/lang/Object;)I
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Object that
         0: .line 699
            aload 1 /* that */
            instanceof java.lang.invoke.MemberName
            ifeq 1
            aload 0 /* this */
            aload 1 /* that */
            checkcast java.lang.invoke.MemberName
            invokevirtual java.lang.invoke.MemberName.equals:(Ljava/lang/invoke/MemberName;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object that
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/MemberName;
            0    2     1  that  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      that  

  public boolean equals(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.invoke.MemberName that
         0: .line 708
            aload 0 /* this */
            aload 1 /* that */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 709
      StackMap locals:
      StackMap stack:
            aload 1 /* that */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 710
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            aload 1 /* that */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            if_acmpne 7
         3: .line 711
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            aload 1 /* that */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            if_icmpne 7
         4: .line 712
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            aload 1 /* that */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
         5: .line 713
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getType:()Ljava/lang/Object;
            aload 1 /* that */
            invokevirtual java.lang.invoke.MemberName.getType:()Ljava/lang/Object;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
         6: .line 710
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 1 // java.lang.invoke.MemberName that
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/lang/invoke/MemberName;
            0    8     1  that  Ljava/lang/invoke/MemberName;
    MethodParameters:
      Name  Flags
      that  

  public void <init>(java.lang.Class<?>, java.lang.String, java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class defClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Class type
        start local 4 // byte refKind
         0: .line 722
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 723
            aload 0 /* this */
            aload 1 /* defClass */
            aload 2 /* name */
            aload 3 /* type */
            ldc 262144
            iconst_0
            iload 4 /* refKind */
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
         2: .line 724
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         3: .line 725
            return
        end local 4 // byte refKind
        end local 3 // java.lang.Class type
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class defClass
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljava/lang/invoke/MemberName;
            0    4     1  defClass  Ljava/lang/Class<*>;
            0    4     2      name  Ljava/lang/String;
            0    4     3      type  Ljava/lang/Class<*>;
            0    4     4   refKind  B
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/Class<*>;B)V
    MethodParameters:
          Name  Flags
      defClass  
      name      
      type      
      refKind   

  public void <init>(java.lang.Class<?>, java.lang.String, java.lang.invoke.MethodType, );
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class defClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.invoke.MethodType type
        start local 4 // byte refKind
         0: .line 733
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 734
            aload 2 /* name */
            ifnull 2
            aload 2 /* name */
            ldc "<init>"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
            ldc 131072
            goto 3
      StackMap locals: java.lang.invoke.MemberName java.lang.Class java.lang.String java.lang.invoke.MethodType int
      StackMap stack:
         2: ldc 65536
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* initFlags */
        start local 5 // int initFlags
         4: .line 735
            aload 0 /* this */
            aload 1 /* defClass */
            aload 2 /* name */
            aload 3 /* type */
            iload 5 /* initFlags */
            iconst_0
            iload 4 /* refKind */
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
         5: .line 736
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         6: .line 737
            return
        end local 5 // int initFlags
        end local 4 // byte refKind
        end local 3 // java.lang.invoke.MethodType type
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class defClass
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljava/lang/invoke/MemberName;
            0    7     1   defClass  Ljava/lang/Class<*>;
            0    7     2       name  Ljava/lang/String;
            0    7     3       type  Ljava/lang/invoke/MethodType;
            0    7     4    refKind  B
            4    7     5  initFlags  I
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
    MethodParameters:
          Name  Flags
      defClass  
      name      
      type      
      refKind   

  public void <init>(byte, java.lang.Class<?>, java.lang.String, );
    descriptor: (BLjava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // byte refKind
        start local 2 // java.lang.Class defClass
        start local 3 // java.lang.String name
        start local 4 // java.lang.Object type
         0: .line 741
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 743
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsField:(B)Z
            ifeq 5
         2: .line 744
            ldc 262144
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
         3: .line 745
            aload 4 /* type */
            instanceof java.lang.Class
            ifne 15
         4: .line 746
            ldc "not a field type"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 5 // int kindFlags
         5: .line 747
      StackMap locals: java.lang.invoke.MemberName int java.lang.Class java.lang.String java.lang.Object
      StackMap stack:
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsMethod:(B)Z
            ifeq 9
         6: .line 748
            ldc 65536
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
         7: .line 749
            aload 4 /* type */
            instanceof java.lang.invoke.MethodType
            ifne 15
         8: .line 750
            ldc "not a method type"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 5 // int kindFlags
         9: .line 751
      StackMap locals:
      StackMap stack:
            iload 1 /* refKind */
            bipush 8
            if_icmpne 14
        10: .line 752
            ldc 131072
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
        11: .line 753
            aload 4 /* type */
            instanceof java.lang.invoke.MethodType
            ifeq 13
        12: .line 754
            ldc "<init>"
            aload 3 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
        13: .line 755
      StackMap locals: int
      StackMap stack:
            ldc "not a constructor type or name"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 5 // int kindFlags
        14: .line 757
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "bad reference kind "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* refKind */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 5 // int kindFlags
        15: .line 759
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* defClass */
            aload 3 /* name */
            aload 4 /* type */
            iload 5 /* kindFlags */
            iconst_0
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
        16: .line 760
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
        17: .line 761
            return
        end local 5 // int kindFlags
        end local 4 // java.lang.Object type
        end local 3 // java.lang.String name
        end local 2 // java.lang.Class defClass
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Ljava/lang/invoke/MemberName;
            0   18     1    refKind  B
            0   18     2   defClass  Ljava/lang/Class<*>;
            0   18     3       name  Ljava/lang/String;
            0   18     4       type  Ljava/lang/Object;
            3    5     5  kindFlags  I
            7    9     5  kindFlags  I
           11   14     5  kindFlags  I
           15   18     5  kindFlags  I
    Signature: (BLjava/lang/Class<*>;Ljava/lang/String;Ljava/lang/Object;)V
    MethodParameters:
          Name  Flags
      refKind   
      defClass  
      name      
      type      

  public boolean hasReceiverTypeDispatch();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 765
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokestatic java.lang.invoke.MethodHandleNatives.refKindDoesDispatch:(B)Z
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/MemberName;

  public boolean isResolved();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 774
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/MemberName;

  private void initResolved(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // boolean isResolved
         0: .line 778
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 779
      StackMap locals:
      StackMap stack:
            iload 1 /* isResolved */
            ifne 3
         2: .line 780
            aload 0 /* this */
            aload 0 /* this */
            putfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
         3: .line 781
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            iload 1 /* isResolved */
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 782
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean isResolved
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/lang/invoke/MemberName;
            0    5     1  isResolved  Z
    MethodParameters:
            Name  Flags
      isResolved  

  void checkForTypeAlias(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class refc
         0: .line 785
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 9
         1: .line 787
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.invoke.MethodType
            ifeq 4
         2: .line 788
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.invoke.MethodType
            astore 2 /* type */
        start local 2 // java.lang.invoke.MethodType type
         3: goto 6
        end local 2 // java.lang.invoke.MethodType type
         4: .line 790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            dup
            astore 2 /* type */
        start local 2 // java.lang.invoke.MethodType type
         5: putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         6: .line 791
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 2 /* type */
            invokevirtual java.lang.invoke.MethodType.erase:()Ljava/lang/invoke/MethodType;
            aload 2 /* type */
            if_acmpne 7
            return
         7: .line 792
      StackMap locals:
      StackMap stack:
            aload 2 /* type */
            aload 1 /* refc */
            invokestatic sun.invoke.util.VerifyAccess.isTypeVisible:(Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Z
            ifeq 8
            return
         8: .line 793
      StackMap locals:
      StackMap stack:
            new java.lang.LinkageError
            dup
            new java.lang.StringBuilder
            dup
            ldc "bad method type alias: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " not visible from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* refc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.LinkageError.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.invoke.MethodType type
         9: .line 796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.Class
            ifeq 12
        10: .line 797
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            checkcast java.lang.Class
            astore 2 /* type */
        start local 2 // java.lang.Class type
        11: goto 14
        end local 2 // java.lang.Class type
        12: .line 799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            dup
            astore 2 /* type */
        start local 2 // java.lang.Class type
        13: putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
        14: .line 800
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 2 /* type */
            aload 1 /* refc */
            invokestatic sun.invoke.util.VerifyAccess.isTypeVisible:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 15
            return
        15: .line 801
      StackMap locals:
      StackMap stack:
            new java.lang.LinkageError
            dup
            new java.lang.StringBuilder
            dup
            ldc "bad field type alias: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " not visible from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* refc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.LinkageError.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.Class type
        end local 1 // java.lang.Class refc
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Ljava/lang/invoke/MemberName;
            0   16     1  refc  Ljava/lang/Class<*>;
            3    4     2  type  Ljava/lang/invoke/MethodType;
            5    9     2  type  Ljava/lang/invoke/MethodType;
           11   12     2  type  Ljava/lang/Class<*>;
           13   16     2  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
      Name  Flags
      refc  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 816
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ifeq 2
         1: .line 817
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         2: .line 819
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuilder buf
         3: .line 820
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            ifnull 6
         4: .line 821
            aload 1 /* buf */
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            invokestatic java.lang.invoke.MemberName.getName:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 822
            aload 1 /* buf */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 824
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         7: .line 825
            aload 1 /* buf */
            aload 2 /* name */
            ifnonnull 8
            ldc "*"
            goto 9
      StackMap locals: java.lang.invoke.MemberName java.lang.StringBuilder java.lang.String
      StackMap stack: java.lang.StringBuilder
         8: aload 2 /* name */
      StackMap locals: java.lang.invoke.MemberName java.lang.StringBuilder java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
         9: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 826
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getType:()Ljava/lang/Object;
            astore 3 /* type */
        start local 3 // java.lang.Object type
        11: .line 827
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifne 17
        12: .line 828
            aload 1 /* buf */
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 829
            aload 1 /* buf */
            aload 3 /* type */
            ifnonnull 14
            ldc "*"
            goto 15
      StackMap locals: java.lang.invoke.MemberName java.lang.StringBuilder java.lang.String java.lang.Object
      StackMap stack: java.lang.StringBuilder
        14: aload 3 /* type */
            invokestatic java.lang.invoke.MemberName.getName:(Ljava/lang/Object;)Ljava/lang/String;
      StackMap locals: java.lang.invoke.MemberName java.lang.StringBuilder java.lang.String java.lang.Object
      StackMap stack: java.lang.StringBuilder java.lang.String
        15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 830
            goto 20
        17: .line 831
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            aload 3 /* type */
            ifnonnull 18
            ldc "(*)*"
            goto 19
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        18: aload 3 /* type */
            invokestatic java.lang.invoke.MemberName.getName:(Ljava/lang/Object;)Ljava/lang/String;
      StackMap locals: java.lang.invoke.MemberName java.lang.StringBuilder java.lang.String java.lang.Object
      StackMap stack: java.lang.StringBuilder java.lang.String
        19: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 833
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 4 /* refKind */
        start local 4 // byte refKind
        21: .line 834
            iload 4 /* refKind */
            ifeq 24
        22: .line 835
            aload 1 /* buf */
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        23: .line 836
            aload 1 /* buf */
            iload 4 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindName:(B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 839
      StackMap locals: int
      StackMap stack:
            aload 1 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // byte refKind
        end local 3 // java.lang.Object type
        end local 2 // java.lang.String name
        end local 1 // java.lang.StringBuilder buf
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   25     0     this  Ljava/lang/invoke/MemberName;
            3   25     1      buf  Ljava/lang/StringBuilder;
            7   25     2     name  Ljava/lang/String;
           11   25     3     type  Ljava/lang/Object;
           21   25     4  refKind  B

  private static java.lang.String getName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object obj
         0: .line 842
            aload 0 /* obj */
            instanceof java.lang.Class
            ifeq 2
         1: .line 843
            aload 0 /* obj */
            checkcast java.lang.Class
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
         2: .line 844
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.Object obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.IllegalAccessException makeAccessException(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/IllegalAccessException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.String message
        start local 2 // java.lang.Object from
         0: .line 848
            new java.lang.StringBuilder
            dup
            aload 1 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* message */
         1: .line 849
            aload 2 /* from */
            ifnull 2
            new java.lang.StringBuilder
            dup
            aload 1 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ", from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* from */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* message */
         2: .line 850
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalAccessException
            dup
            aload 1 /* message */
            invokespecial java.lang.IllegalAccessException.<init>:(Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.Object from
        end local 1 // java.lang.String message
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Ljava/lang/invoke/MemberName;
            0    3     1  message  Ljava/lang/String;
            0    3     2     from  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      message  
      from     

  private java.lang.String message();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 853
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 2
         1: .line 854
            ldc "no access"
            areturn
         2: .line 855
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 4
         3: .line 856
            ldc "no such constructor"
            areturn
         4: .line 857
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 6
         5: .line 858
            ldc "no such method"
            areturn
         6: .line 860
      StackMap locals:
      StackMap stack:
            ldc "no such field"
            areturn
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/invoke/MemberName;

  public java.lang.ReflectiveOperationException makeAccessException();
    descriptor: ()Ljava/lang/ReflectiveOperationException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 863
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.message:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* message */
        start local 1 // java.lang.String message
         1: .line 865
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 3
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            instanceof java.lang.NoSuchMethodError
            ifne 5
         2: .line 866
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            instanceof java.lang.NoSuchFieldError
            ifne 5
         3: .line 867
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.IllegalAccessException
            dup
            aload 1 /* message */
            invokespecial java.lang.IllegalAccessException.<init>:(Ljava/lang/String;)V
            astore 2 /* ex */
        start local 2 // java.lang.ReflectiveOperationException ex
         4: goto 12
        end local 2 // java.lang.ReflectiveOperationException ex
         5: .line 868
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 8
         6: .line 869
            new java.lang.NoSuchMethodException
            dup
            aload 1 /* message */
            invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
            astore 2 /* ex */
        start local 2 // java.lang.ReflectiveOperationException ex
         7: goto 12
        end local 2 // java.lang.ReflectiveOperationException ex
         8: .line 870
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 11
         9: .line 871
            new java.lang.NoSuchMethodException
            dup
            aload 1 /* message */
            invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
            astore 2 /* ex */
        start local 2 // java.lang.ReflectiveOperationException ex
        10: goto 12
        end local 2 // java.lang.ReflectiveOperationException ex
        11: .line 873
      StackMap locals:
      StackMap stack:
            new java.lang.NoSuchFieldException
            dup
            aload 1 /* message */
            invokespecial java.lang.NoSuchFieldException.<init>:(Ljava/lang/String;)V
            astore 2 /* ex */
        start local 2 // java.lang.ReflectiveOperationException ex
        12: .line 874
      StackMap locals: java.lang.ReflectiveOperationException
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            instanceof java.lang.Throwable
            ifeq 14
        13: .line 875
            aload 2 /* ex */
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            checkcast java.lang.Throwable
            invokevirtual java.lang.ReflectiveOperationException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        14: .line 876
      StackMap locals:
      StackMap stack:
            aload 2 /* ex */
            areturn
        end local 2 // java.lang.ReflectiveOperationException ex
        end local 1 // java.lang.String message
        end local 0 // java.lang.invoke.MemberName this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Ljava/lang/invoke/MemberName;
            1   15     1  message  Ljava/lang/String;
            4    5     2       ex  Ljava/lang/ReflectiveOperationException;
            7    8     2       ex  Ljava/lang/ReflectiveOperationException;
           10   11     2       ex  Ljava/lang/ReflectiveOperationException;
           12   15     2       ex  Ljava/lang/ReflectiveOperationException;

  static java.lang.invoke.MemberName$Factory getFactory();
    descriptor: ()Ljava/lang/invoke/MemberName$Factory;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 881
            getstatic java.lang.invoke.MemberName$Factory.INSTANCE:Ljava/lang/invoke/MemberName$Factory;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual java.lang.invoke.MemberName.clone:()Ljava/lang/invoke/MemberName;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.lang.CloneNotSupportedException
}
SourceFile: "MemberName.java"
NestMembers:
  java.lang.invoke.MemberName$Factory
InnerClasses:
  Factory = java.lang.invoke.MemberName$Factory of java.lang.invoke.MemberName