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

  java.lang.Object resolution;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

  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 73
            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 457
            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 86
            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 91
            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 100
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ifnonnull 4
         1: .line 101
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 102
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            ifnonnull 4
         3: .line 103
            aconst_null
            areturn
         4: .line 106
      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 110
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 2
         1: .line 111
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            areturn
         2: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isGetter:()Z
            ifeq 4
         3: .line 113
            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 114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isSetter:()Z
            ifeq 6
         5: .line 115
            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 116
      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 123
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 124
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 125
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 126
            aconst_null
            areturn
         4: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifne 6
         5: .line 130
            ldc "not invocable, no method type"
            invokestatic java.lang.invoke.MethodHandleStatics.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         6: .line 135
      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 136
            aload 1 /* type */
            instanceof java.lang.invoke.MethodType
            ifeq 9
         8: .line 137
            aload 1 /* type */
            checkcast java.lang.invoke.MethodType
            areturn
        end local 1 // java.lang.Object type
         9: .line 142
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
        10: .line 143
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 15
        11: .line 144
            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 145
            aload 2 /* sig */
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.invoke.MethodType.fromDescriptor:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/invoke/MethodType;
            astore 3 /* res */
        start local 3 // java.lang.invoke.MethodType res
        13: .line 146
            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 147
            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 148
            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 149
            aload 2 /* typeInfo */
            iconst_1
            aaload
            checkcast java.lang.Class[]
            astore 3 /* ptypes */
        start local 3 // java.lang.Class[] ptypes
        18: .line 150
            aload 2 /* typeInfo */
            iconst_0
            aaload
            checkcast java.lang.Class
            astore 4 /* rtype */
        start local 4 // java.lang.Class rtype
        19: .line 151
            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 152
            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 155
      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 142
      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 157
      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 165
            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 166
            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 167
            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 168
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            ifne 5
         4: .line 169
            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 170
      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 175
            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 180
            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 188
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 189
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 190
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 191
            aconst_null
            areturn
         4: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 6
         5: .line 195
            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 200
      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 201
            aload 1 /* type */
            instanceof java.lang.Class
            ifeq 9
         8: .line 202
            aload 1 /* type */
            checkcast java.lang.Class
            areturn
        end local 1 // java.lang.Object type
         9: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
        10: .line 208
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 15
        11: .line 209
            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 210
            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.fromDescriptor:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/invoke/MethodType;
            astore 3 /* mtype */
        start local 3 // java.lang.invoke.MethodType mtype
        13: .line 211
            aload 3 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 4 /* res */
        start local 4 // java.lang.Class res
        14: .line 212
            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 215
      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 207
      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 217
      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 222
            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 229
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         1: .line 230
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         2: .line 231
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 4
         3: .line 232
            aconst_null
            areturn
         4: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 6
         5: .line 236
            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 238
      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 245
            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 251
            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 254
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 255
            iload 1 /* refKind */
            ifne 2
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ireturn
         2: .line 256
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isField:()Z
            ifeq 5
         3: .line 257
            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 258
      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 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 7
         6: .line 260
            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 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 16
         8: .line 262
            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 263
      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 264
      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 265
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 17
            iload 1 /* refKind */
            bipush 9
            if_icmpeq 17
        12: .line 266
            iload 1 /* refKind */
            bipush 6
            if_icmpeq 17
        13: .line 267
            iload 1 /* refKind */
            bipush 7
            if_icmpeq 17
        14: .line 268
            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 270
      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 272
      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 275
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ldc Ljava/lang/Object;
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 276
      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 277
            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 278
            iconst_1
            ireturn
         4: .line 279
      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 280
            iconst_1
            ireturn
         6: .line 281
      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 282
            iconst_1
            ireturn
         8: .line 283
      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 286
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 2 /* refKind */
        start local 2 // int refKind
         1: .line 287
            iload 2 /* refKind */
            iload 1 /* originalRefKind */
            if_icmpne 2
            iconst_1
            ireturn
         2: .line 288
      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 291
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 5
            iload 2 /* refKind */
            iconst_5
            if_icmpeq 5
         4: .line 292
            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 293
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         6: .line 297
      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 298
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 299
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 10
            new java.lang.AssertionError
            dup
         9: .line 300
            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 301
      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 304
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 305
            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 308
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 309
            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 310
      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 311
            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 312
      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 313
            aload 2 /* vminfo */
            checkcast java.lang.Object[]
            iconst_1
            aaload
            astore 5 /* vmtarget */
        start local 5 // java.lang.Object vmtarget
         6: .line 314
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsField:(B)Z
            ifeq 9
         7: .line 315
            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 316
      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 318
      StackMap locals:
      StackMap stack:
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindDoesDispatch:(B)Z
            ifeq 11
        10: .line 319
            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 321
      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 322
      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 324
      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 328
            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 329
      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 330
      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 331
            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 335
            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 338
            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 341
            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 349
            aload 0 /* this */
            sipush 280
            sipush 272
            invokevirtual java.lang.invoke.MemberName.testFlags:(II)Z
            ifeq 3
         1: .line 350
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ldc Ljava/lang/invoke/MethodHandle;
            if_acmpne 3
         2: .line 351
            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 353
      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 356
            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 359
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         4: .line 361
      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 isVarHandleMethodInvoke();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 367
            aload 0 /* this */
            sipush 280
            sipush 272
            invokevirtual java.lang.invoke.MemberName.testFlags:(II)Z
            ifeq 3
         1: .line 368
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ldc Ljava/lang/invoke/VarHandle;
            if_acmpne 3
         2: .line 369
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.name:Ljava/lang/String;
            invokestatic java.lang.invoke.MemberName.isVarHandleMethodInvokeName:(Ljava/lang/String;)Z
            ireturn
         3: .line 371
      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 isVarHandleMethodInvokeName(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 375
            aload 0 /* name */
            invokestatic java.lang.invoke.VarHandle$AccessMode.valueFromMethodName:(Ljava/lang/String;)Ljava/lang/invoke/VarHandle$AccessMode;
            pop
         1: .line 376
            iconst_1
            ireturn
         2: .line 377
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
         3: .line 378
            iconst_0
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IllegalArgumentException
    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 385
            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 389
            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 393
            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 397
            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 401
            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 405
            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 409
            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 413
            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 417
            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 429
            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 433
            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 437
            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 461
            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 465
            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 469
            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 473
            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 477
            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 481
            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 485
            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 489
            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=3, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class lookupClass
         0: .line 494
            bipush 31
            istore 2 /* mode */
        start local 2 // int mode
         1: .line 495
            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
         2: .line 496
            aload 1 /* lookupClass */
            iload 2 /* mode */
         3: .line 495
            invokestatic sun.invoke.util.VerifyAccess.isMemberAccessible:(Ljava/lang/Class;Ljava/lang/Class;ILjava/lang/Class;I)Z
            ireturn
        end local 2 // int mode
        end local 1 // java.lang.Class lookupClass
        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  lookupClass  Ljava/lang/Class<*>;
            1    4     2         mode  I
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      lookupClass  

  public boolean refersTo(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // java.lang.Class declc
        start local 2 // java.lang.String n
         0: .line 503
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            aload 1 /* declc */
            if_acmpne 1
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            aload 2 /* n */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // java.lang.String n
        end local 1 // java.lang.Class declc
        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  declc  Ljava/lang/Class<*>;
            0    2     2      n  Ljava/lang/String;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Z
    MethodParameters:
       Name  Flags
      declc  
      n      

  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 512
            aload 0 /* this */
            aload 1 /* defClass */
            putfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
         1: .line 513
            aload 0 /* this */
            aload 2 /* name */
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         2: .line 514
            aload 0 /* this */
            aload 3 /* type */
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         3: .line 515
            aload 0 /* this */
            iload 4 /* flags */
            putfield java.lang.invoke.MemberName.flags:I
         4: .line 516
            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 517
      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 519
      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 526
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnull 2
         1: .line 527
            return
         2: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 4
         3: .line 530
            return
         4: .line 532
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic java.lang.invoke.MethodHandleNatives.expand:(Ljava/lang/invoke/MemberName;)V
         5: .line 533
            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 537
            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 538
      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 539
      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 540
      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 544
            aload 0 /* this */
            aload 1 /* m */
            iconst_0
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Method;Z)V
         1: .line 545
            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 547
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 548
            aload 1 /* m */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 550
            aload 0 /* this */
            aload 1 /* m */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 551
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 19
         4: .line 552
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            ldc Ljava/lang/invoke/MethodHandle;
            if_acmpne 11
         5: .line 553
            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 557
            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 558
            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 559
            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 560
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethodHandleInvoke:()Z
            ifeq 11
        10: .line 561
            return
        end local 4 // int flags
        end local 3 // java.lang.invoke.MethodType type
        11: .line 563
      StackMap locals: java.lang.invoke.MemberName java.lang.reflect.Method int
      StackMap stack:
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            ldc Ljava/lang/invoke/VarHandle;
            if_acmpne 18
        12: .line 564
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            invokestatic java.lang.invoke.MemberName.isVarHandleMethodInvokeName:(Ljava/lang/String;)Z
            ifeq 18
        13: .line 568
            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
        14: .line 569
            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
        15: .line 570
            aload 0 /* this */
            ldc Ljava/lang/invoke/VarHandle;
            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
        16: .line 571
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isVarHandleMethodInvoke:()Z
            ifeq 18
        17: .line 572
            return
        end local 4 // int flags
        end local 3 // java.lang.invoke.MethodType type
        18: .line 574
      StackMap locals:
      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
        19: .line 576
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 21
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 20
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
            ifnonnull 21
      StackMap locals:
      StackMap stack:
        20: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        21: .line 577
      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;
        22: .line 578
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 24
        23: .line 579
            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;
        24: .line 580
      StackMap locals:
      StackMap stack:
            iload 2 /* wantSpecial */
            ifeq 31
        25: .line 581
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isAbstract:()Z
            ifeq 27
        26: .line 582
            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
        27: .line 583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            iconst_5
            if_icmpne 29
        28: .line 584
            aload 0 /* this */
            bipush 7
            iconst_5
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            pop
            goto 31
        29: .line 585
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            bipush 9
            if_icmpne 31
        30: .line 587
            aload 0 /* this */
            bipush 7
            bipush 9
            invokevirtual java.lang.invoke.MemberName.changeReferenceKind:(BB)Ljava/lang/invoke/MemberName;
            pop
        31: .line 589
      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   32     0         this  Ljava/lang/invoke/MemberName;
            0   32     1            m  Ljava/lang/reflect/Method;
            0   32     2  wantSpecial  Z
            7   11     3         type  Ljava/lang/invoke/MethodType;
            8   11     4        flags  I
           14   18     3         type  Ljava/lang/invoke/MethodType;
           15   18     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 591
            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 592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         2: .line 593
      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 594
      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 595
      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 597
      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 603
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 7 - 8
                    7: 1
                    8: 2
              default: 3
          }
         1: .line 604
      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 605
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         3: .line 607
      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 618
            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 619
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 2 /* refKind */
        start local 2 // byte refKind
         4: .line 620
            iload 2 /* refKind */
            istore 3 /* newRefKind */
        start local 3 // byte newRefKind
         5: .line 621
            aload 0 /* this */
            astore 4 /* result */
        start local 4 // java.lang.invoke.MemberName result
         6: .line 622
            iload 2 /* refKind */
            tableswitch { // 5 - 9
                    5: 7
                    6: 8
                    7: 7
                    8: 8
                    9: 7
              default: 8
          }
         7: .line 626
      StackMap locals: java.lang.invoke.MemberName int int int java.lang.invoke.MemberName
      StackMap stack:
            iload 1 /* normalVirtual */
            istore 3 /* newRefKind */
         8: .line 629
      StackMap locals:
      StackMap stack:
            iload 3 /* newRefKind */
            iload 2 /* refKind */
            if_icmpne 10
         9: .line 630
            aload 0 /* this */
            areturn
        10: .line 631
      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 632
            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 633
      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 637
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 638
            aload 1 /* ctor */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 640
            aload 0 /* this */
            aload 1 /* ctor */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 641
            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 642
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "<init>"
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         6: .line 643
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            ifnonnull 8
         7: .line 644
            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 645
      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 649
            aload 0 /* this */
            aload 1 /* fld */
            iconst_0
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Field;Z)V
         1: .line 650
            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 652
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 653
            aload 1 /* fld */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 655
            aload 0 /* this */
            aload 1 /* fld */
            invokestatic java.lang.invoke.MethodHandleNatives.init:(Ljava/lang/invoke/MemberName;Ljava/lang/Object;)V
         3: .line 656
            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 657
      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 658
            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 660
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 3 /* refKind */
        start local 3 // byte refKind
         8: .line 661
            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 662
      StackMap locals:
      StackMap stack:
            iload 2 /* makeSetter */
            ifeq 13
        12: .line 663
            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 665
      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 667
            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 670
            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 673
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 1 /* refKind */
        start local 1 // byte refKind
         1: .line 674
            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 676
      StackMap locals: int
      StackMap stack:
            iload 1 /* refKind */
            iconst_2
            iadd
            i2b
            istore 2 /* setterRefKind */
        start local 2 // byte setterRefKind
         3: .line 677
            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 680
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 681
            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 682
            ldc 524288
            aload 1 /* type */
            invokevirtual java.lang.Class.getModifiers:()I
            iconst_0
            invokestatic java.lang.invoke.MemberName.flagsMods:(IIB)I
         3: .line 681
            invokevirtual java.lang.invoke.MemberName.init:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;I)V
         4: .line 683
            aload 0 /* this */
            iconst_1
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         5: .line 684
            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 693
            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 696
            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 697
            aload 3 /* mem */
            dup
            getfield java.lang.invoke.MemberName.flags:I
            iload 2 /* mods */
            ior
            putfield java.lang.invoke.MemberName.flags:I
         2: .line 698
            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 699
      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  

  static java.lang.invoke.MemberName makeVarHandleMethodInvoke(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 703
            aload 0 /* name */
            aload 1 /* type */
            sipush 4369
            invokestatic java.lang.invoke.MemberName.makeVarHandleMethodInvoke:(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 makeVarHandleMethodInvoke(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 706
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/invoke/VarHandle;
            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 707
            aload 3 /* mem */
            dup
            getfield java.lang.invoke.MemberName.flags:I
            iload 2 /* mods */
            ior
            putfield java.lang.invoke.MemberName.flags:I
         2: .line 708
            getstatic java.lang.invoke.MemberName.$assertionsDisabled:Z
            ifne 3
            aload 3 /* mem */
            invokevirtual java.lang.invoke.MemberName.isVarHandleMethodInvoke:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            aload 3 /* mem */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 709
      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 713
            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 718
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast java.lang.invoke.MemberName
         1: areturn
         2: .line 719
      StackMap locals:
      StackMap stack: java.lang.CloneNotSupportedException
            astore 1 /* ex */
        start local 1 // java.lang.CloneNotSupportedException ex
         3: .line 720
            aload 1 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)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 728
            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 729
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ifeq 2
            aload 0 /* this */
            areturn
         2: .line 730
      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 731
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.clazz:Ljava/lang/Class;
         4: .line 732
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
         5: .line 733
            aload 1 /* res */
            aconst_null
            putfield java.lang.invoke.MemberName.name:Ljava/lang/String;
         6: .line 734
            aload 1 /* res */
            aload 1 /* res */
            putfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
         7: .line 735
            aload 1 /* res */
            invokevirtual java.lang.invoke.MemberName.expandFromVM:()V
         8: .line 736
            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 737
      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=6, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName this
         0: .line 745
            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
            new java.lang.Byte
            dup
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokespecial java.lang.Byte.<init>:(B)V
            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 750
            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 759
            aload 0 /* this */
            aload 1 /* that */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 760
      StackMap locals:
      StackMap stack:
            aload 1 /* that */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 761
      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 762
            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 763
            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 764
            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 761
            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 773
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 774
            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 775
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         3: .line 776
            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 784
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 785
            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 786
            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 787
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
         6: .line 788
            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 792
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 794
            iload 1 /* refKind */
            invokestatic java.lang.invoke.MethodHandleNatives.refKindIsField:(B)Z
            ifeq 5
         2: .line 795
            ldc 262144
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
         3: .line 796
            aload 4 /* type */
            instanceof java.lang.Class
            ifne 15
         4: .line 797
            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 798
      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 799
            ldc 65536
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
         7: .line 800
            aload 4 /* type */
            instanceof java.lang.invoke.MethodType
            ifne 15
         8: .line 801
            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 802
      StackMap locals:
      StackMap stack:
            iload 1 /* refKind */
            bipush 8
            if_icmpne 14
        10: .line 803
            ldc 131072
            istore 5 /* kindFlags */
        start local 5 // int kindFlags
        11: .line 804
            aload 4 /* type */
            instanceof java.lang.invoke.MethodType
            ifeq 13
        12: .line 805
            ldc "<init>"
            aload 3 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
        13: .line 806
      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 808
      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 810
      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 811
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.MemberName.initResolved:(Z)V
        17: .line 812
            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 816
            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 825
            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;

  void initResolved(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.MemberName this
        start local 1 // boolean isResolved
         0: .line 829
            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 830
      StackMap locals:
      StackMap stack:
            iload 1 /* isResolved */
            ifne 3
         2: .line 831
            aload 0 /* this */
            aload 0 /* this */
            putfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
         3: .line 832
      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 833
      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 836
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifeq 9
         1: .line 838
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.invoke.MethodType
            ifeq 4
         2: .line 839
            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 841
      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 842
      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 843
      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 844
      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 847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            instanceof java.lang.Class
            ifeq 12
        10: .line 848
            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 850
      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 851
      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 852
      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 867
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isType:()Z
            ifeq 2
         1: .line 868
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.type:Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         2: .line 870
      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 871
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            ifnull 6
         4: .line 872
            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 873
            aload 1 /* buf */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 875
      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 876
            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 877
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getType:()Ljava/lang/Object;
            astore 3 /* type */
        start local 3 // java.lang.Object type
        11: .line 878
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifne 17
        12: .line 879
            aload 1 /* buf */
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 880
            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 881
            goto 20
        17: .line 882
      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 884
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 4 /* refKind */
        start local 4 // byte refKind
        21: .line 885
            iload 4 /* refKind */
            ifeq 24
        22: .line 886
            aload 1 /* buf */
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        23: .line 887
            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 890
      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 893
            aload 0 /* obj */
            instanceof java.lang.Class
            ifeq 2
         1: .line 894
            aload 0 /* obj */
            checkcast java.lang.Class
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
         2: .line 895
      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=5, 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 899
            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 900
            aload 2 /* from */
            ifnull 11
         2: .line 901
            aload 2 /* from */
            invokestatic java.lang.invoke.MethodHandles.publicLookup:()Ljava/lang/invoke/MethodHandles$Lookup;
            if_acmpne 5
         3: .line 902
            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 public Lookup"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* message */
         4: .line 903
            goto 11
         5: .line 905
      StackMap locals:
      StackMap stack:
            aload 2 /* from */
            instanceof java.lang.invoke.MethodHandles$Lookup
            ifeq 9
         6: .line 906
            aload 2 /* from */
            checkcast java.lang.invoke.MethodHandles$Lookup
            astore 4 /* lookup */
        start local 4 // java.lang.invoke.MethodHandles$Lookup lookup
         7: .line 907
            aload 4 /* lookup */
            invokevirtual java.lang.invoke.MethodHandles$Lookup.lookupClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getModule:()Ljava/lang/Module;
            astore 3 /* m */
        end local 4 // java.lang.invoke.MethodHandles$Lookup lookup
        start local 3 // java.lang.Module m
         8: .line 908
            goto 10
        end local 3 // java.lang.Module m
         9: .line 909
      StackMap locals:
      StackMap stack:
            aload 2 /* from */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getModule:()Ljava/lang/Module;
            astore 3 /* m */
        start local 3 // java.lang.Module m
        10: .line 911
      StackMap locals: java.lang.Module
      StackMap stack:
            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;
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* m */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* message */
        end local 3 // java.lang.Module m
        11: .line 914
      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   12     0     this  Ljava/lang/invoke/MemberName;
            0   12     1  message  Ljava/lang/String;
            0   12     2     from  Ljava/lang/Object;
            8    9     3        m  Ljava/lang/Module;
           10   11     3        m  Ljava/lang/Module;
            7    8     4   lookup  Ljava/lang/invoke/MethodHandles$Lookup;
    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 917
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifeq 2
         1: .line 918
            ldc "no access"
            areturn
         2: .line 919
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 4
         3: .line 920
            ldc "no such constructor"
            areturn
         4: .line 921
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 6
         5: .line 922
            ldc "no such method"
            areturn
         6: .line 924
      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 927
            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 929
            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 930
            aload 0 /* this */
            getfield java.lang.invoke.MemberName.resolution:Ljava/lang/Object;
            instanceof java.lang.NoSuchFieldError
            ifne 5
         3: .line 931
      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 932
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 8
         6: .line 933
            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 934
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 11
         9: .line 935
            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 937
      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 938
      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 939
            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 940
      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 945
            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
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final AccessMode = java.lang.invoke.VarHandle$AccessMode of java.lang.invoke.VarHandle