class java.lang.invoke.DirectMethodHandle extends java.lang.invoke.MethodHandle
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.lang.invoke.DirectMethodHandle
  super_class: java.lang.invoke.MethodHandle
{
  final java.lang.invoke.MemberName member;
    descriptor: Ljava/lang/invoke/MemberName;
    flags: (0x0010) ACC_FINAL

  private static final java.lang.invoke.MemberName$Factory IMPL_NAMES;
    descriptor: Ljava/lang/invoke/MemberName$Factory;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final byte AF_GETFIELD;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  static final byte AF_PUTFIELD;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  static final byte AF_GETSTATIC;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  static final byte AF_PUTSTATIC;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  static final byte AF_GETSTATIC_INIT;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  static final byte AF_PUTSTATIC_INIT;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  static final byte AF_LIMIT;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 6

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

  static final int FT_UNCHECKED_REF;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

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

  private static final java.lang.invoke.LambdaForm[] ACCESSOR_FORMS;
    descriptor: [Ljava/lang/invoke/LambdaForm;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.Stable()

  private static final sun.invoke.util.Wrapper[] ALL_WRAPPERS;
    descriptor: [Lsun/invoke/util/Wrapper;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_internalMemberName;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_internalMemberNameEnsureInit;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_ensureInitialized;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_fieldOffset;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_checkBase;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_staticBase;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_staticOffset;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_checkCast;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_allocateInstance;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_constructorMethod;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_UNSAFE;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.LambdaForm$NamedFunction NF_checkReceiver;
    descriptor: Ljava/lang/invoke/LambdaForm$NamedFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

  private static volatile int[] $SWITCH_TABLE$sun$invoke$util$Wrapper;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=13, locals=1, args_size=0
         0: .line 52
            ldc Ljava/lang/invoke/DirectMethodHandle;
            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.DirectMethodHandle.$assertionsDisabled:Z
         3: .line 157
            invokestatic java.lang.invoke.MemberName.getFactory:()Ljava/lang/invoke/MemberName$Factory;
            putstatic java.lang.invoke.DirectMethodHandle.IMPL_NAMES:Ljava/lang/invoke/MemberName$Factory;
         4: .line 543
            getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            putstatic java.lang.invoke.DirectMethodHandle.FT_UNCHECKED_REF:I
         5: .line 553
            bipush 6
            iconst_0
            iconst_0
            invokestatic java.lang.invoke.DirectMethodHandle.afIndex:(BZI)I
            anewarray java.lang.invoke.LambdaForm
         6: .line 552
            putstatic java.lang.invoke.DirectMethodHandle.ACCESSOR_FORMS:[Ljava/lang/invoke/LambdaForm;
         7: .line 603
            invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
            putstatic java.lang.invoke.DirectMethodHandle.ALL_WRAPPERS:[Lsun/invoke/util/Wrapper;
         8: .line 772
            bipush 12
            anewarray java.lang.invoke.LambdaForm$NamedFunction
            dup
            iconst_0
         9: .line 773
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        10: .line 774
            ldc "internalMemberName"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        11: .line 773
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberName:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            iconst_1
        12: .line 775
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        13: .line 776
            ldc "internalMemberNameEnsureInit"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        14: .line 775
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberNameEnsureInit:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            iconst_2
        15: .line 777
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        16: .line 778
            ldc "ensureInitialized"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        17: .line 777
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_ensureInitialized:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            iconst_3
        18: .line 779
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        19: .line 780
            ldc "fieldOffset"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        20: .line 779
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_fieldOffset:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            iconst_4
        21: .line 781
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        22: .line 782
            ldc "checkBase"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        23: .line 781
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_checkBase:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            iconst_5
        24: .line 783
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        25: .line 784
            ldc "staticBase"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        26: .line 783
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_staticBase:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 6
        27: .line 785
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        28: .line 786
            ldc "staticOffset"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        29: .line 785
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_staticOffset:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 7
        30: .line 787
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        31: .line 788
            ldc "checkCast"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        32: .line 787
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_checkCast:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 8
        33: .line 789
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        34: .line 790
            ldc "allocateInstance"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        35: .line 789
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_allocateInstance:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 9
        36: .line 791
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle;
        37: .line 792
            ldc "constructorMethod"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
        38: .line 791
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/reflect/Method;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_constructorMethod:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 10
        39: .line 793
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/invoke/MethodHandleStatics;
        40: .line 794
            ldc "UNSAFE"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Field;)V
        41: .line 793
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/invoke/MemberName;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_UNSAFE:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
            dup
            bipush 11
        42: .line 795
            new java.lang.invoke.LambdaForm$NamedFunction
            dup
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/invoke/DirectMethodHandle$Interface;
        43: .line 796
            ldc "checkReceiver"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/reflect/Method;)V
        44: .line 795
            invokespecial java.lang.invoke.LambdaForm$NamedFunction.<init>:(Ljava/lang/invoke/MemberName;)V
            dup
            putstatic java.lang.invoke.DirectMethodHandle.NF_checkReceiver:Ljava/lang/invoke/LambdaForm$NamedFunction;
            aastore
        45: .line 772
            astore 0 /* nfs */
        start local 0 // java.lang.invoke.LambdaForm$NamedFunction[] nfs
        46: .line 799
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 49
            aload 0 /* nfs */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocable:([Ljava/lang/invoke/LambdaForm$NamedFunction;)Z
            ifne 49
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 0 // java.lang.invoke.LambdaForm$NamedFunction[] nfs
        47: .line 800
      StackMap locals:
      StackMap stack: java.lang.ReflectiveOperationException
            astore 0 /* ex */
        start local 0 // java.lang.ReflectiveOperationException ex
        48: .line 801
            aload 0 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)Ljava/lang/InternalError;
            athrow
        end local 0 // java.lang.ReflectiveOperationException ex
        49: .line 810
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            ldc Ljava/lang/invoke/DirectMethodHandle$Holder;
            invokevirtual jdk.internal.misc.Unsafe.ensureClassInitialized:(Ljava/lang/Class;)V
        50: .line 811
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           46   47     0   nfs  [Ljava/lang/invoke/LambdaForm$NamedFunction;
           48   49     0    ex  Ljava/lang/ReflectiveOperationException;
      Exception table:
        from    to  target  type
           8    47      47  Class java.lang.ReflectiveOperationException

  private void <init>(java.lang.invoke.MethodType, java.lang.invoke.LambdaForm, java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // java.lang.invoke.DirectMethodHandle this
        start local 1 // java.lang.invoke.MethodType mtype
        start local 2 // java.lang.invoke.LambdaForm form
        start local 3 // java.lang.invoke.MemberName member
         0: .line 57
            aload 0 /* this */
            aload 1 /* mtype */
            aload 2 /* form */
            invokespecial java.lang.invoke.MethodHandle.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;)V
         1: .line 58
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.isResolved:()Z
            ifne 2
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
         2: .line 60
      StackMap locals: java.lang.invoke.DirectMethodHandle java.lang.invoke.MethodType java.lang.invoke.LambdaForm java.lang.invoke.MemberName
      StackMap stack:
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
            ifeq 9
         3: .line 61
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 9
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.isAbstract:()Z
            ifne 9
         4: .line 63
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/Object;
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 4 /* m */
        start local 4 // java.lang.invoke.MemberName m
         5: .line 64
            invokestatic java.lang.invoke.MemberName.getFactory:()Ljava/lang/invoke/MemberName$Factory;
            aload 4 /* m */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            aload 4 /* m */
            aconst_null
            invokevirtual java.lang.invoke.MemberName$Factory.resolveOrNull:(BLjava/lang/invoke/MemberName;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            astore 4 /* m */
         6: .line 65
            aload 4 /* m */
            ifnull 9
            aload 4 /* m */
            invokevirtual java.lang.invoke.MemberName.isPublic:()Z
            ifeq 9
         7: .line 66
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 8
            aload 3 /* member */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            aload 4 /* m */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            if_icmpeq 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 67
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            aload 4 /* m */
            astore 3 /* member */
        end local 4 // java.lang.invoke.MemberName m
         9: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* member */
            putfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
        10: .line 72
            return
        end local 3 // java.lang.invoke.MemberName member
        end local 2 // java.lang.invoke.LambdaForm form
        end local 1 // java.lang.invoke.MethodType mtype
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Ljava/lang/invoke/DirectMethodHandle;
            0   11     1   mtype  Ljava/lang/invoke/MethodType;
            0   11     2    form  Ljava/lang/invoke/LambdaForm;
            0   11     3  member  Ljava/lang/invoke/MemberName;
            5    9     4       m  Ljava/lang/invoke/MemberName;
    MethodParameters:
        Name  Flags
      mtype   
      form    
      member  

  static java.lang.invoke.DirectMethodHandle make(byte, java.lang.Class<?>, java.lang.invoke.MemberName);
    descriptor: (BLjava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=8, locals=8, args_size=3
        start local 0 // byte refKind
        start local 1 // java.lang.Class receiver
        start local 2 // java.lang.invoke.MemberName member
         0: .line 76
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.getMethodOrFieldType:()Ljava/lang/invoke/MethodType;
            astore 3 /* mtype */
        start local 3 // java.lang.invoke.MethodType mtype
         1: .line 77
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            ifne 5
         2: .line 78
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            aload 1 /* receiver */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 3
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 4
         3: .line 79
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            new java.lang.InternalError
            dup
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 80
      StackMap locals:
      StackMap stack:
            aload 3 /* mtype */
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            aload 1 /* receiver */
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 3 /* mtype */
         5: .line 82
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.isField:()Z
            ifne 14
         6: .line 83
            iload 0 /* refKind */
            tableswitch { // 7 - 9
                    7: 7
                    8: 12
                    9: 10
              default: 12
          }
         7: .line 85
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.asSpecial:()Ljava/lang/invoke/MemberName;
            astore 2 /* member */
         8: .line 86
            aload 2 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            astore 4 /* lform */
        start local 4 // java.lang.invoke.LambdaForm lform
         9: .line 87
            new java.lang.invoke.DirectMethodHandle$Special
            dup
            aload 3 /* mtype */
            aload 4 /* lform */
            aload 2 /* member */
            invokespecial java.lang.invoke.DirectMethodHandle$Special.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
            areturn
        end local 4 // java.lang.invoke.LambdaForm lform
        10: .line 90
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            astore 4 /* lform */
        start local 4 // java.lang.invoke.LambdaForm lform
        11: .line 91
            new java.lang.invoke.DirectMethodHandle$Interface
            dup
            aload 3 /* mtype */
            aload 4 /* lform */
            aload 2 /* member */
            aload 1 /* receiver */
            invokespecial java.lang.invoke.DirectMethodHandle$Interface.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;Ljava/lang/Class;)V
            areturn
        end local 4 // java.lang.invoke.LambdaForm lform
        12: .line 94
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            astore 4 /* lform */
        start local 4 // java.lang.invoke.LambdaForm lform
        13: .line 95
            new java.lang.invoke.DirectMethodHandle
            dup
            aload 3 /* mtype */
            aload 4 /* lform */
            aload 2 /* member */
            invokespecial java.lang.invoke.DirectMethodHandle.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
            areturn
        end local 4 // java.lang.invoke.LambdaForm lform
        14: .line 99
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            astore 4 /* lform */
        start local 4 // java.lang.invoke.LambdaForm lform
        15: .line 100
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.isStatic:()Z
            ifeq 19
        16: .line 101
            aload 2 /* member */
            invokestatic java.lang.invoke.MethodHandleNatives.staticFieldOffset:(Ljava/lang/invoke/MemberName;)J
            lstore 5 /* offset */
        start local 5 // long offset
        17: .line 102
            aload 2 /* member */
            invokestatic java.lang.invoke.MethodHandleNatives.staticFieldBase:(Ljava/lang/invoke/MemberName;)Ljava/lang/Object;
            astore 7 /* base */
        start local 7 // java.lang.Object base
        18: .line 103
            new java.lang.invoke.DirectMethodHandle$StaticAccessor
            dup
            aload 3 /* mtype */
            aload 4 /* lform */
            aload 2 /* member */
            aload 7 /* base */
            lload 5 /* offset */
            invokespecial java.lang.invoke.DirectMethodHandle$StaticAccessor.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;Ljava/lang/Object;J)V
            areturn
        end local 7 // java.lang.Object base
        end local 5 // long offset
        19: .line 105
      StackMap locals: java.lang.invoke.LambdaForm
      StackMap stack:
            aload 2 /* member */
            invokestatic java.lang.invoke.MethodHandleNatives.objectFieldOffset:(Ljava/lang/invoke/MemberName;)J
            lstore 5 /* offset */
        start local 5 // long offset
        20: .line 106
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 21
            lload 5 /* offset */
            lload 5 /* offset */
            l2i
            i2l
            lcmp
            ifeq 21
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        21: .line 107
      StackMap locals: long
      StackMap stack:
            new java.lang.invoke.DirectMethodHandle$Accessor
            dup
            aload 3 /* mtype */
            aload 4 /* lform */
            aload 2 /* member */
            lload 5 /* offset */
            l2i
            invokespecial java.lang.invoke.DirectMethodHandle$Accessor.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;I)V
            areturn
        end local 5 // long offset
        end local 4 // java.lang.invoke.LambdaForm lform
        end local 3 // java.lang.invoke.MethodType mtype
        end local 2 // java.lang.invoke.MemberName member
        end local 1 // java.lang.Class receiver
        end local 0 // byte refKind
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0   refKind  B
            0   22     1  receiver  Ljava/lang/Class<*>;
            0   22     2    member  Ljava/lang/invoke/MemberName;
            1   22     3     mtype  Ljava/lang/invoke/MethodType;
            9   10     4     lform  Ljava/lang/invoke/LambdaForm;
           11   12     4     lform  Ljava/lang/invoke/LambdaForm;
           13   14     4     lform  Ljava/lang/invoke/LambdaForm;
           15   22     4     lform  Ljava/lang/invoke/LambdaForm;
           17   19     5    offset  J
           18   19     7      base  Ljava/lang/Object;
           20   22     5    offset  J
    Signature: (BLjava/lang/Class<*>;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    MethodParameters:
          Name  Flags
      refKind   
      receiver  
      member    

  static java.lang.invoke.DirectMethodHandle make(java.lang.Class<?>, java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.Class receiver
        start local 1 // java.lang.invoke.MemberName member
         0: .line 112
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 2 /* refKind */
        start local 2 // byte refKind
         1: .line 113
            iload 2 /* refKind */
            bipush 7
            if_icmpne 3
         2: .line 114
            iconst_5
            istore 2 /* refKind */
         3: .line 115
      StackMap locals: int
      StackMap stack:
            iload 2 /* refKind */
            aload 0 /* receiver */
            aload 1 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.make:(BLjava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
            areturn
        end local 2 // byte refKind
        end local 1 // java.lang.invoke.MemberName member
        end local 0 // java.lang.Class receiver
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  receiver  Ljava/lang/Class<*>;
            0    4     1    member  Ljava/lang/invoke/MemberName;
            1    4     2   refKind  B
    Signature: (Ljava/lang/Class<*>;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    MethodParameters:
          Name  Flags
      receiver  
      member    

  static java.lang.invoke.DirectMethodHandle make(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.MemberName member
         0: .line 118
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 2
         1: .line 119
            aload 0 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.makeAllocator:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
            areturn
         2: .line 120
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            aload 0 /* member */
            invokestatic java.lang.invoke.DirectMethodHandle.make:(Ljava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
            areturn
        end local 0 // java.lang.invoke.MemberName member
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  member  Ljava/lang/invoke/MemberName;
    MethodParameters:
        Name  Flags
      member  

  private static java.lang.invoke.DirectMethodHandle makeAllocator(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=1
        start local 0 // java.lang.invoke.MemberName ctor
         0: .line 123
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 2
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 1
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            ldc "<init>"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            astore 1 /* instanceClass */
        start local 1 // java.lang.Class instanceClass
         3: .line 125
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.asConstructor:()Ljava/lang/invoke/MemberName;
            astore 0 /* ctor */
         4: .line 126
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 6
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 5
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            bipush 8
            if_icmpeq 6
      StackMap locals: java.lang.Class
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            aload 0 /* ctor */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 127
      StackMap locals:
      StackMap stack:
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            aload 1 /* instanceClass */
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 2 /* mtype */
        start local 2 // java.lang.invoke.MethodType mtype
         7: .line 128
            aload 0 /* ctor */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            astore 3 /* lform */
        start local 3 // java.lang.invoke.LambdaForm lform
         8: .line 129
            aload 0 /* ctor */
            invokevirtual java.lang.invoke.MemberName.asSpecial:()Ljava/lang/invoke/MemberName;
            astore 4 /* init */
        start local 4 // java.lang.invoke.MemberName init
         9: .line 130
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 10
            aload 4 /* init */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 131
      StackMap locals: java.lang.invoke.MethodType java.lang.invoke.LambdaForm java.lang.invoke.MemberName
      StackMap stack:
            new java.lang.invoke.DirectMethodHandle$Constructor
            dup
            aload 2 /* mtype */
            aload 3 /* lform */
            aload 0 /* ctor */
            aload 4 /* init */
            aload 1 /* instanceClass */
            invokespecial java.lang.invoke.DirectMethodHandle$Constructor.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;Ljava/lang/invoke/MemberName;Ljava/lang/Class;)V
            areturn
        end local 4 // java.lang.invoke.MemberName init
        end local 3 // java.lang.invoke.LambdaForm lform
        end local 2 // java.lang.invoke.MethodType mtype
        end local 1 // java.lang.Class instanceClass
        end local 0 // java.lang.invoke.MemberName ctor
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           ctor  Ljava/lang/invoke/MemberName;
            3   11     1  instanceClass  Ljava/lang/Class<*>;
            7   11     2          mtype  Ljava/lang/invoke/MethodType;
            8   11     3          lform  Ljava/lang/invoke/LambdaForm;
            9   11     4           init  Ljava/lang/invoke/MemberName;
    MethodParameters:
      Name  Flags
      ctor  

  java.lang.invoke.BoundMethodHandle rebind();
    descriptor: ()Ljava/lang/invoke/BoundMethodHandle;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.DirectMethodHandle this
         0: .line 136
            aload 0 /* this */
            invokestatic java.lang.invoke.BoundMethodHandle.makeReinvoker:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/BoundMethodHandle;
            areturn
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/DirectMethodHandle;

  java.lang.invoke.MethodHandle copyWith(java.lang.invoke.MethodType, java.lang.invoke.LambdaForm);
    descriptor: (Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;)Ljava/lang/invoke/MethodHandle;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.invoke.DirectMethodHandle this
        start local 1 // java.lang.invoke.MethodType mt
        start local 2 // java.lang.invoke.LambdaForm lf
         0: .line 141
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/invoke/DirectMethodHandle;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 142
      StackMap locals:
      StackMap stack:
            new java.lang.invoke.DirectMethodHandle
            dup
            aload 1 /* mt */
            aload 2 /* lf */
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokespecial java.lang.invoke.DirectMethodHandle.<init>:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
            areturn
        end local 2 // java.lang.invoke.LambdaForm lf
        end local 1 // java.lang.invoke.MethodType mt
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/DirectMethodHandle;
            0    2     1    mt  Ljava/lang/invoke/MethodType;
            0    2     2    lf  Ljava/lang/invoke/LambdaForm;
    MethodParameters:
      Name  Flags
      mt    
      lf    

  java.lang.String internalProperties();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.DirectMethodHandle this
         0: .line 147
            new java.lang.StringBuilder
            dup
            ldc "\n& DMH.MN="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.invoke.DirectMethodHandle.internalMemberName:()Ljava/lang/invoke/MemberName;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/DirectMethodHandle;

  java.lang.invoke.MemberName internalMemberName();
    descriptor: ()Ljava/lang/invoke/MemberName;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.DirectMethodHandle this
         0: .line 154
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            areturn
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/DirectMethodHandle;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()

  private static java.lang.invoke.LambdaForm preparedLambdaForm(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // java.lang.invoke.MemberName m
         0: .line 165
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 1
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.isInvocable:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            aload 0 /* m */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 166
      StackMap locals:
      StackMap stack:
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            astore 1 /* mtype */
        start local 1 // java.lang.invoke.MethodType mtype
         2: .line 167
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 3
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.isMethodHandleInvoke:()Z
            ifeq 3
            new java.lang.AssertionError
            dup
            aload 0 /* m */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 169
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 5 - 9
                    5: 4
                    6: 6
                    7: 8
                    8: 12
                    9: 10
              default: 14
          }
         4: .line 170
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* which */
        start local 2 // int which
         5: goto 15
        end local 2 // int which
         6: .line 171
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* which */
        start local 2 // int which
         7: goto 15
        end local 2 // int which
         8: .line 172
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 2 /* which */
        start local 2 // int which
         9: goto 15
        end local 2 // int which
        10: .line 173
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 2 /* which */
        start local 2 // int which
        11: goto 15
        end local 2 // int which
        12: .line 174
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 2 /* which */
        start local 2 // int which
        13: goto 15
        end local 2 // int which
        14: .line 175
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 2 // int which
        15: .line 177
      StackMap locals: int
      StackMap stack:
            iload 2 /* which */
            iconst_1
            if_icmpne 18
            aload 0 /* m */
            invokestatic java.lang.invoke.DirectMethodHandle.shouldBeInitialized:(Ljava/lang/invoke/MemberName;)Z
            ifeq 18
        16: .line 179
            aload 1 /* mtype */
            iload 2 /* which */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/LambdaForm;
            pop
        17: .line 180
            iconst_5
            istore 2 /* which */
        18: .line 182
      StackMap locals:
      StackMap stack:
            aload 1 /* mtype */
            iload 2 /* which */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/LambdaForm;
            astore 3 /* lform */
        start local 3 // java.lang.invoke.LambdaForm lform
        19: .line 183
            aload 3 /* lform */
            aload 0 /* m */
            invokestatic java.lang.invoke.DirectMethodHandle.maybeCompile:(Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
        20: .line 184
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 23
            aload 3 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.methodType:()Ljava/lang/invoke/MethodType;
            iconst_0
            iconst_1
            invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
        21: .line 185
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.equals:(Ljava/lang/Object;)Z
            ifne 23
            new java.lang.AssertionError
            dup
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        22: .line 186
            aload 0 /* m */
            aastore
            dup
            iconst_1
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            aastore
            dup
            iconst_2
            aload 3 /* lform */
            aastore
            dup
            iconst_3
            aload 3 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.methodType:()Ljava/lang/invoke/MethodType;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        23: .line 187
      StackMap locals: java.lang.invoke.LambdaForm
      StackMap stack:
            aload 3 /* lform */
            areturn
        end local 3 // java.lang.invoke.LambdaForm lform
        end local 2 // int which
        end local 1 // java.lang.invoke.MethodType mtype
        end local 0 // java.lang.invoke.MemberName m
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   24     0      m  Ljava/lang/invoke/MemberName;
            2   24     1  mtype  Ljava/lang/invoke/MethodType;
            5    6     2  which  I
            7    8     2  which  I
            9   10     2  which  I
           11   12     2  which  I
           13   14     2  which  I
           15   24     2  which  I
           19   24     3  lform  Ljava/lang/invoke/LambdaForm;
    MethodParameters:
      Name  Flags
      m     

  private static java.lang.invoke.LambdaForm preparedLambdaForm(java.lang.invoke.MethodType, int);
    descriptor: (Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/LambdaForm;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.invoke.MethodType mtype
        start local 1 // int which
         0: .line 191
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.form:()Ljava/lang/invoke/MethodTypeForm;
            iload 1 /* which */
            invokevirtual java.lang.invoke.MethodTypeForm.cachedLambdaForm:(I)Ljava/lang/invoke/LambdaForm;
            astore 2 /* lform */
        start local 2 // java.lang.invoke.LambdaForm lform
         1: .line 192
            aload 2 /* lform */
            ifnull 2
            aload 2 /* lform */
            areturn
         2: .line 193
      StackMap locals: java.lang.invoke.LambdaForm
      StackMap stack:
            aload 0 /* mtype */
            iload 1 /* which */
            invokestatic java.lang.invoke.DirectMethodHandle.makePreparedLambdaForm:(Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/LambdaForm;
            astore 2 /* lform */
         3: .line 194
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.form:()Ljava/lang/invoke/MethodTypeForm;
            iload 1 /* which */
            aload 2 /* lform */
            invokevirtual java.lang.invoke.MethodTypeForm.setCachedLambdaForm:(ILjava/lang/invoke/LambdaForm;)Ljava/lang/invoke/LambdaForm;
            areturn
        end local 2 // java.lang.invoke.LambdaForm lform
        end local 1 // int which
        end local 0 // java.lang.invoke.MethodType mtype
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  mtype  Ljava/lang/invoke/MethodType;
            0    4     1  which  I
            1    4     2  lform  Ljava/lang/invoke/LambdaForm;
    MethodParameters:
       Name  Flags
      mtype  
      which  

  static java.lang.invoke.LambdaForm makePreparedLambdaForm(java.lang.invoke.MethodType, int);
    descriptor: (Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/LambdaForm;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=10, locals=20, args_size=2
        start local 0 // java.lang.invoke.MethodType mtype
        start local 1 // int which
         0: .line 198
            iload 1 /* which */
            iconst_5
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* needsInit */
        start local 2 // boolean needsInit
         3: .line 199
            iload 1 /* which */
            iconst_3
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* doesAlloc */
        start local 3 // boolean doesAlloc
         6: .line 200
            iload 1 /* which */
            iconst_4
            if_icmpne 7
            iconst_1
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 4 /* needsReceiverCheck */
        start local 4 // boolean needsReceiverCheck
         9: .line 203
            iload 1 /* which */
            tableswitch { // 0 - 5
                    0: 10
                    1: 13
                    2: 19
                    3: 25
                    4: 22
                    5: 16
              default: 28
          }
        10: .line 204
      StackMap locals: int
      StackMap stack:
            ldc "linkToVirtual"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        11: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_VIRTUAL:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        12: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        13: .line 205
      StackMap locals:
      StackMap stack:
            ldc "linkToStatic"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        14: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_STATIC:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        15: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        16: .line 206
      StackMap locals:
      StackMap stack:
            ldc "linkToStatic"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        17: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_STATIC_INIT:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        18: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        19: .line 207
      StackMap locals:
      StackMap stack:
            ldc "linkToSpecial"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        20: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_SPECIAL:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        21: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        22: .line 208
      StackMap locals:
      StackMap stack:
            ldc "linkToInterface"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        23: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_INTERFACE:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        24: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        25: .line 209
      StackMap locals:
      StackMap stack:
            ldc "linkToSpecial"
            astore 5 /* linkerName */
        start local 5 // java.lang.String linkerName
        26: getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_NEW_INVOKE_SPECIAL:Ljava/lang/invoke/LambdaForm$Kind;
            astore 6 /* kind */
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        27: goto 29
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        28: .line 210
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "which="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* which */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 5 // java.lang.String linkerName
        start local 6 // java.lang.invoke.LambdaForm$Kind kind
        29: .line 213
      StackMap locals: java.lang.String java.lang.invoke.LambdaForm$Kind
      StackMap stack:
            aload 0 /* mtype */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/invoke/MemberName;
            aastore
            invokevirtual java.lang.invoke.MethodType.appendParameterTypes:([Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 7 /* mtypeWithArg */
        start local 7 // java.lang.invoke.MethodType mtypeWithArg
        30: .line 214
            iload 3 /* doesAlloc */
            ifeq 35
        31: .line 215
            aload 7 /* mtypeWithArg */
        32: .line 216
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        33: .line 217
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        34: .line 215
            astore 7 /* mtypeWithArg */
        35: .line 218
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            new java.lang.invoke.MemberName
            dup
            ldc Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerName */
            aload 7 /* mtypeWithArg */
            bipush 6
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 8 /* linker */
        start local 8 // java.lang.invoke.MemberName linker
        36: .line 220
            getstatic java.lang.invoke.DirectMethodHandle.IMPL_NAMES:Ljava/lang/invoke/MemberName$Factory;
            bipush 6
            aload 8 /* linker */
            aconst_null
            ldc Ljava/lang/NoSuchMethodException;
            invokevirtual java.lang.invoke.MemberName$Factory.resolveOrFail:(BLjava/lang/invoke/MemberName;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            astore 8 /* linker */
        37: .line 221
            goto 40
      StackMap locals: java.lang.invoke.MethodType int int int int java.lang.String java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName
      StackMap stack: java.lang.ReflectiveOperationException
        38: astore 9 /* ex */
        start local 9 // java.lang.ReflectiveOperationException ex
        39: .line 222
            aload 9 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)Ljava/lang/InternalError;
            athrow
        end local 9 // java.lang.ReflectiveOperationException ex
        40: .line 226
      StackMap locals:
      StackMap stack:
            iconst_1
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iadd
            istore 9 /* ARG_LIMIT */
        start local 9 // int ARG_LIMIT
        41: .line 227
            iload 9 /* ARG_LIMIT */
            istore 10 /* nameCursor */
        start local 10 // int nameCursor
        42: .line 228
            iload 3 /* doesAlloc */
            ifeq 43
            iload 10 /* nameCursor */
            iinc 10 /* nameCursor */ 1
            goto 44
      StackMap locals: int int
      StackMap stack:
        43: iconst_m1
      StackMap locals:
      StackMap stack: int
        44: istore 11 /* NEW_OBJ */
        start local 11 // int NEW_OBJ
        45: .line 229
            iload 10 /* nameCursor */
            iinc 10 /* nameCursor */ 1
            istore 12 /* GET_MEMBER */
        start local 12 // int GET_MEMBER
        46: .line 230
            iload 4 /* needsReceiverCheck */
            ifeq 47
            iload 10 /* nameCursor */
            iinc 10 /* nameCursor */ 1
            goto 48
      StackMap locals: int int
      StackMap stack:
        47: iconst_m1
      StackMap locals:
      StackMap stack: int
        48: istore 13 /* CHECK_RECEIVER */
        start local 13 // int CHECK_RECEIVER
        49: .line 231
            iload 10 /* nameCursor */
            iinc 10 /* nameCursor */ 1
            istore 14 /* LINKER_CALL */
        start local 14 // int LINKER_CALL
        50: .line 232
            iload 10 /* nameCursor */
            iload 9 /* ARG_LIMIT */
            isub
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.invokerType:()Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.LambdaForm.arguments:(ILjava/lang/invoke/MethodType;)[Ljava/lang/invoke/LambdaForm$Name;
            astore 15 /* names */
        start local 15 // java.lang.invoke.LambdaForm$Name[] names
        51: .line 233
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 52
            aload 15 /* names */
            arraylength
            iload 10 /* nameCursor */
            if_icmpeq 52
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        52: .line 234
      StackMap locals: int int java.lang.invoke.LambdaForm$Name[]
      StackMap stack:
            iload 3 /* doesAlloc */
            ifeq 56
        53: .line 236
            aload 15 /* names */
            iload 11 /* NEW_OBJ */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_allocateInstance:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 15 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        54: .line 237
            aload 15 /* names */
            iload 12 /* GET_MEMBER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_constructorMethod:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 15 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        55: .line 238
            goto 60
      StackMap locals:
      StackMap stack:
        56: iload 2 /* needsInit */
            ifeq 59
        57: .line 239
            aload 15 /* names */
            iload 12 /* GET_MEMBER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberNameEnsureInit:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 15 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        58: .line 240
            goto 60
        59: .line 241
      StackMap locals:
      StackMap stack:
            aload 15 /* names */
            iload 12 /* GET_MEMBER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberName:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 15 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        60: .line 243
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 61
            aload 15 /* names */
            iload 12 /* GET_MEMBER */
            aaload
            invokestatic java.lang.invoke.DirectMethodHandle.findDirectMethodHandle:(Ljava/lang/invoke/LambdaForm$Name;)Ljava/lang/Object;
            aload 15 /* names */
            iconst_0
            aaload
            if_acmpeq 61
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        61: .line 244
      StackMap locals:
      StackMap stack:
            aload 15 /* names */
            iconst_1
            iload 12 /* GET_MEMBER */
            iconst_1
            iadd
            ldc [Ljava/lang/Object;
            invokestatic java.util.Arrays.copyOfRange:([Ljava/lang/Object;IILjava/lang/Class;)[Ljava/lang/Object;
            astore 16 /* outArgs */
        start local 16 // java.lang.Object[] outArgs
        62: .line 245
            iload 4 /* needsReceiverCheck */
            ifeq 65
        63: .line 246
            aload 15 /* names */
            iload 13 /* CHECK_RECEIVER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_checkReceiver:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 15 /* names */
            iconst_0
            aaload
            aastore
            dup
            iconst_1
            aload 15 /* names */
            iconst_1
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        64: .line 247
            aload 16 /* outArgs */
            iconst_0
            aload 15 /* names */
            iload 13 /* CHECK_RECEIVER */
            aaload
            aastore
        65: .line 249
      StackMap locals: java.lang.Object[]
      StackMap stack:
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 66
            aload 16 /* outArgs */
            aload 16 /* outArgs */
            arraylength
            iconst_1
            isub
            aaload
            aload 15 /* names */
            iload 12 /* GET_MEMBER */
            aaload
            if_acmpeq 66
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        66: .line 250
      StackMap locals:
      StackMap stack:
            bipush -2
            istore 17 /* result */
        start local 17 // int result
        67: .line 251
            iload 3 /* doesAlloc */
            ifeq 72
        68: .line 252
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 69
            aload 16 /* outArgs */
            aload 16 /* outArgs */
            arraylength
            iconst_2
            isub
            aaload
            aload 15 /* names */
            iload 11 /* NEW_OBJ */
            aaload
            if_acmpeq 69
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        69: .line 253
      StackMap locals: int
      StackMap stack:
            aload 16 /* outArgs */
            iconst_0
            aload 16 /* outArgs */
            iconst_1
            aload 16 /* outArgs */
            arraylength
            iconst_2
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        70: .line 254
            aload 16 /* outArgs */
            iconst_0
            aload 15 /* names */
            iload 11 /* NEW_OBJ */
            aaload
            aastore
        71: .line 255
            iload 11 /* NEW_OBJ */
            istore 17 /* result */
        72: .line 257
      StackMap locals:
      StackMap stack:
            aload 15 /* names */
            iload 14 /* LINKER_CALL */
            new java.lang.invoke.LambdaForm$Name
            dup
            aload 8 /* linker */
            aload 16 /* outArgs */
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/MemberName;[Ljava/lang/Object;)V
            aastore
        73: .line 258
            new java.lang.StringBuilder
            dup
            aload 6 /* kind */
            getfield java.lang.invoke.LambdaForm$Kind.defaultLambdaName: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 /* mtype */
            invokestatic java.lang.invoke.LambdaForm.basicTypeSignature:(Ljava/lang/invoke/MethodType;)Ljava/lang/String;
            invokestatic java.lang.invoke.LambdaForm.shortenSignature:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 18 /* lambdaName */
        start local 18 // java.lang.String lambdaName
        74: .line 259
            new java.lang.invoke.LambdaForm
            dup
            aload 18 /* lambdaName */
            iload 9 /* ARG_LIMIT */
            aload 15 /* names */
            iload 17 /* result */
            aload 6 /* kind */
            invokespecial java.lang.invoke.LambdaForm.<init>:(Ljava/lang/String;I[Ljava/lang/invoke/LambdaForm$Name;ILjava/lang/invoke/LambdaForm$Kind;)V
            astore 19 /* lform */
        start local 19 // java.lang.invoke.LambdaForm lform
        75: .line 262
            aload 19 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.compileToBytecode:()V
        76: .line 263
            aload 19 /* lform */
            areturn
        end local 19 // java.lang.invoke.LambdaForm lform
        end local 18 // java.lang.String lambdaName
        end local 17 // int result
        end local 16 // java.lang.Object[] outArgs
        end local 15 // java.lang.invoke.LambdaForm$Name[] names
        end local 14 // int LINKER_CALL
        end local 13 // int CHECK_RECEIVER
        end local 12 // int GET_MEMBER
        end local 11 // int NEW_OBJ
        end local 10 // int nameCursor
        end local 9 // int ARG_LIMIT
        end local 8 // java.lang.invoke.MemberName linker
        end local 7 // java.lang.invoke.MethodType mtypeWithArg
        end local 6 // java.lang.invoke.LambdaForm$Kind kind
        end local 5 // java.lang.String linkerName
        end local 4 // boolean needsReceiverCheck
        end local 3 // boolean doesAlloc
        end local 2 // boolean needsInit
        end local 1 // int which
        end local 0 // java.lang.invoke.MethodType mtype
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   77     0               mtype  Ljava/lang/invoke/MethodType;
            0   77     1               which  I
            3   77     2           needsInit  Z
            6   77     3           doesAlloc  Z
            9   77     4  needsReceiverCheck  Z
           11   13     5          linkerName  Ljava/lang/String;
           14   16     5          linkerName  Ljava/lang/String;
           17   19     5          linkerName  Ljava/lang/String;
           20   22     5          linkerName  Ljava/lang/String;
           23   25     5          linkerName  Ljava/lang/String;
           26   28     5          linkerName  Ljava/lang/String;
           29   77     5          linkerName  Ljava/lang/String;
           12   13     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           15   16     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           18   19     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           21   22     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           24   25     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           27   28     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           29   77     6                kind  Ljava/lang/invoke/LambdaForm$Kind;
           30   77     7        mtypeWithArg  Ljava/lang/invoke/MethodType;
           36   77     8              linker  Ljava/lang/invoke/MemberName;
           39   40     9                  ex  Ljava/lang/ReflectiveOperationException;
           41   77     9           ARG_LIMIT  I
           42   77    10          nameCursor  I
           45   77    11             NEW_OBJ  I
           46   77    12          GET_MEMBER  I
           49   77    13      CHECK_RECEIVER  I
           50   77    14         LINKER_CALL  I
           51   77    15               names  [Ljava/lang/invoke/LambdaForm$Name;
           62   77    16             outArgs  [Ljava/lang/Object;
           67   77    17              result  I
           74   77    18          lambdaName  Ljava/lang/String;
           75   77    19               lform  Ljava/lang/invoke/LambdaForm;
      Exception table:
        from    to  target  type
          36    37      38  Class java.lang.ReflectiveOperationException
    MethodParameters:
       Name  Flags
      mtype  
      which  

  static java.lang.Object findDirectMethodHandle(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.LambdaForm$Name name
         0: .line 267
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            getstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberName:Ljava/lang/invoke/LambdaForm$NamedFunction;
            if_acmpeq 3
         1: .line 268
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            getstatic java.lang.invoke.DirectMethodHandle.NF_internalMemberNameEnsureInit:Ljava/lang/invoke/LambdaForm$NamedFunction;
            if_acmpeq 3
         2: .line 269
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            getstatic java.lang.invoke.DirectMethodHandle.NF_constructorMethod:Ljava/lang/invoke/LambdaForm$NamedFunction;
            if_acmpne 5
         3: .line 270
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 4
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            iconst_1
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_0
            aaload
            areturn
         5: .line 273
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.invoke.LambdaForm$Name name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  private static void maybeCompile(java.lang.invoke.LambdaForm, java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.LambdaForm lform
        start local 1 // java.lang.invoke.MemberName m
         0: .line 277
            aload 0 /* lform */
            getfield java.lang.invoke.LambdaForm.vmentry:Ljava/lang/invoke/MemberName;
            ifnonnull 2
            aload 1 /* m */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            ldc Ljava/lang/invoke/MethodHandle;
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 2
         1: .line 279
            aload 0 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.compileToBytecode:()V
         2: .line 280
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.invoke.MemberName m
        end local 0 // java.lang.invoke.LambdaForm lform
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  lform  Ljava/lang/invoke/LambdaForm;
            0    3     1      m  Ljava/lang/invoke/MemberName;
    MethodParameters:
       Name  Flags
      lform  
      m      

  static java.lang.Object internalMemberName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object mh
         0: .line 285
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            areturn
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    mh  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      mh    

  static java.lang.Object internalMemberNameEnsureInit(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.lang.Object mh
         0: .line 292
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle
            astore 1 /* dmh */
        start local 1 // java.lang.invoke.DirectMethodHandle dmh
         1: .line 293
            aload 1 /* dmh */
            invokevirtual java.lang.invoke.DirectMethodHandle.ensureInitialized:()V
         2: .line 294
            aload 1 /* dmh */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            areturn
        end local 1 // java.lang.invoke.DirectMethodHandle dmh
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    mh  Ljava/lang/Object;
            1    3     1   dmh  Ljava/lang/invoke/DirectMethodHandle;
    MethodParameters:
      Name  Flags
      mh    

  static boolean shouldBeInitialized(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName member
         0: .line 299
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 2 - 8
                    2: 1
                    3: 2
                    4: 1
                    5: 2
                    6: 1
                    7: 2
                    8: 1
              default: 2
          }
         1: .line 304
      StackMap locals:
      StackMap stack:
            goto 3
         2: .line 307
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         3: .line 309
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            astore 1 /* cls */
        start local 1 // java.lang.Class cls
         4: .line 310
            aload 1 /* cls */
            ldc Lsun/invoke/util/ValueConversions;
            if_acmpeq 7
         5: .line 311
            aload 1 /* cls */
            ldc Ljava/lang/invoke/MethodHandleImpl;
            if_acmpeq 7
         6: .line 312
            aload 1 /* cls */
            ldc Ljava/lang/invoke/Invokers;
            if_acmpne 8
         7: .line 315
      StackMap locals: java.lang.Class
      StackMap stack:
            iconst_0
            ireturn
         8: .line 317
      StackMap locals:
      StackMap stack:
            ldc Ljava/lang/invoke/MethodHandle;
            aload 1 /* cls */
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifne 10
         9: .line 318
            ldc Lsun/invoke/util/ValueConversions;
            aload 1 /* cls */
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 13
        10: .line 321
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* cls */
            invokevirtual jdk.internal.misc.Unsafe.shouldBeInitialized:(Ljava/lang/Class;)Z
            ifeq 12
        11: .line 322
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* cls */
            invokevirtual jdk.internal.misc.Unsafe.ensureClassInitialized:(Ljava/lang/Class;)V
        12: .line 324
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        13: .line 326
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* cls */
            invokevirtual jdk.internal.misc.Unsafe.shouldBeInitialized:(Ljava/lang/Class;)Z
            ireturn
        end local 1 // java.lang.Class cls
        end local 0 // java.lang.invoke.MemberName member
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0  member  Ljava/lang/invoke/MemberName;
            4   14     1     cls  Ljava/lang/Class<*>;
    MethodParameters:
        Name  Flags
      member  

  private void ensureInitialized();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.DirectMethodHandle this
         0: .line 343
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokestatic java.lang.invoke.DirectMethodHandle.checkInitialized:(Ljava/lang/invoke/MemberName;)Z
            ifeq 4
         1: .line 345
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokevirtual java.lang.invoke.MemberName.isField:()Z
            ifeq 3
         2: .line 346
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokestatic java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            invokevirtual java.lang.invoke.DirectMethodHandle.updateForm:(Ljava/lang/invoke/LambdaForm;)V
            goto 4
         3: .line 348
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokestatic java.lang.invoke.DirectMethodHandle.preparedLambdaForm:(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
            invokevirtual java.lang.invoke.DirectMethodHandle.updateForm:(Ljava/lang/invoke/LambdaForm;)V
         4: .line 350
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/lang/invoke/DirectMethodHandle;

  private static boolean checkInitialized(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.lang.invoke.MemberName member
         0: .line 352
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            astore 1 /* defc */
        start local 1 // java.lang.Class defc
         1: .line 353
            getstatic java.lang.invoke.DirectMethodHandle$EnsureInitialized.INSTANCE:Ljava/lang/invoke/DirectMethodHandle$EnsureInitialized;
            aload 1 /* defc */
            invokevirtual java.lang.invoke.DirectMethodHandle$EnsureInitialized.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.ref.WeakReference
            astore 2 /* ref */
        start local 2 // java.lang.ref.WeakReference ref
         2: .line 354
            aload 2 /* ref */
            ifnonnull 4
         3: .line 355
            iconst_1
            ireturn
         4: .line 357
      StackMap locals: java.lang.Class java.lang.ref.WeakReference
      StackMap stack:
            aload 2 /* ref */
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast java.lang.Thread
            astore 3 /* clinitThread */
        start local 3 // java.lang.Thread clinitThread
         5: .line 359
            aload 3 /* clinitThread */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            if_acmpne 8
         6: .line 361
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* defc */
            invokevirtual jdk.internal.misc.Unsafe.shouldBeInitialized:(Ljava/lang/Class;)Z
            ifeq 9
         7: .line 363
            iconst_0
            ireturn
         8: .line 366
      StackMap locals: java.lang.Thread
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* defc */
            invokevirtual jdk.internal.misc.Unsafe.ensureClassInitialized:(Ljava/lang/Class;)V
         9: .line 368
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 10
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* defc */
            invokevirtual jdk.internal.misc.Unsafe.shouldBeInitialized:(Ljava/lang/Class;)Z
            ifeq 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 370
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.DirectMethodHandle$EnsureInitialized.INSTANCE:Ljava/lang/invoke/DirectMethodHandle$EnsureInitialized;
            aload 1 /* defc */
            invokevirtual java.lang.invoke.DirectMethodHandle$EnsureInitialized.remove:(Ljava/lang/Class;)V
        11: .line 371
            iconst_1
            ireturn
        end local 3 // java.lang.Thread clinitThread
        end local 2 // java.lang.ref.WeakReference ref
        end local 1 // java.lang.Class defc
        end local 0 // java.lang.invoke.MemberName member
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0        member  Ljava/lang/invoke/MemberName;
            1   12     1          defc  Ljava/lang/Class<*>;
            2   12     2           ref  Ljava/lang/ref/WeakReference<Ljava/lang/Thread;>;
            5   12     3  clinitThread  Ljava/lang/Thread;
    MethodParameters:
        Name  Flags
      member  

  static void ensureInitialized(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object mh
         0: .line 375
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle
            invokevirtual java.lang.invoke.DirectMethodHandle.ensureInitialized:()V
         1: .line 376
            return
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    mh  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      mh    

  static java.lang.Object constructorMethod(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.lang.Object mh
         0: .line 435
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle$Constructor
            astore 1 /* dmh */
        start local 1 // java.lang.invoke.DirectMethodHandle$Constructor dmh
         1: .line 436
            aload 1 /* dmh */
            getfield java.lang.invoke.DirectMethodHandle$Constructor.initMethod:Ljava/lang/invoke/MemberName;
            areturn
        end local 1 // java.lang.invoke.DirectMethodHandle$Constructor dmh
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    mh  Ljava/lang/Object;
            1    2     1   dmh  Ljava/lang/invoke/DirectMethodHandle$Constructor;
    MethodParameters:
      Name  Flags
      mh    

  static java.lang.Object allocateInstance(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Object mh
         0: .line 440
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle$Constructor
            astore 1 /* dmh */
        start local 1 // java.lang.invoke.DirectMethodHandle$Constructor dmh
         1: .line 441
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 1 /* dmh */
            getfield java.lang.invoke.DirectMethodHandle$Constructor.instanceClass:Ljava/lang/Class;
            invokevirtual jdk.internal.misc.Unsafe.allocateInstance:(Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.invoke.DirectMethodHandle$Constructor dmh
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    mh  Ljava/lang/Object;
            1    2     1   dmh  Ljava/lang/invoke/DirectMethodHandle$Constructor;
    Exceptions:
      throws java.lang.InstantiationException
    MethodParameters:
      Name  Flags
      mh    

  static long fieldOffset(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object accessorObj
         0: .line 468
            aload 0 /* accessorObj */
            checkcast java.lang.invoke.DirectMethodHandle$Accessor
            getfield java.lang.invoke.DirectMethodHandle$Accessor.fieldOffset:I
            i2l
            lreturn
        end local 0 // java.lang.Object accessorObj
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  accessorObj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
             Name  Flags
      accessorObj  

  static java.lang.Object checkBase(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object obj
         0: .line 480
            aload 0 /* obj */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 0 // java.lang.Object obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   obj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  static java.lang.Object nullCheck(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object obj
         0: .line 508
            aload 0 /* obj */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 0 // java.lang.Object obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   obj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  static java.lang.Object staticBase(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object accessorObj
         0: .line 513
            aload 0 /* accessorObj */
            checkcast java.lang.invoke.DirectMethodHandle$StaticAccessor
            getfield java.lang.invoke.DirectMethodHandle$StaticAccessor.staticBase:Ljava/lang/Object;
            areturn
        end local 0 // java.lang.Object accessorObj
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  accessorObj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
             Name  Flags
      accessorObj  

  static long staticOffset(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object accessorObj
         0: .line 518
            aload 0 /* accessorObj */
            checkcast java.lang.invoke.DirectMethodHandle$StaticAccessor
            getfield java.lang.invoke.DirectMethodHandle$StaticAccessor.staticOffset:J
            lreturn
        end local 0 // java.lang.Object accessorObj
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  accessorObj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
             Name  Flags
      accessorObj  

  static java.lang.Object checkCast(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Object mh
        start local 1 // java.lang.Object obj
         0: .line 523
            aload 0 /* mh */
            checkcast java.lang.invoke.DirectMethodHandle
            aload 1 /* obj */
            invokevirtual java.lang.invoke.DirectMethodHandle.checkCast:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.Object mh
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    mh  Ljava/lang/Object;
            0    1     1   obj  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      mh    
      obj   

  java.lang.Object checkCast(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.DirectMethodHandle this
        start local 1 // java.lang.Object obj
         0: .line 527
            aload 0 /* this */
            getfield java.lang.invoke.DirectMethodHandle.member:Ljava/lang/invoke/MemberName;
            invokevirtual java.lang.invoke.MemberName.getReturnType:()Ljava/lang/Class;
            aload 1 /* obj */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.invoke.DirectMethodHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/DirectMethodHandle;
            0    1     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  private static int afIndex(byte, boolean, int);
    descriptor: (BZI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // byte formOp
        start local 1 // boolean isVolatile
        start local 2 // int ftypeKind
         0: .line 547
            iload 0 /* formOp */
            bipush 11
            imul
            iconst_2
            imul
         1: .line 548
            iload 1 /* isVolatile */
            ifeq 2
            bipush 11
            goto 3
      StackMap locals:
      StackMap stack: int
         2: iconst_0
         3: .line 547
      StackMap locals: int int int
      StackMap stack: int int
            iadd
         4: .line 549
            iload 2 /* ftypeKind */
         5: .line 547
            iadd
            ireturn
        end local 2 // int ftypeKind
        end local 1 // boolean isVolatile
        end local 0 // byte formOp
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0      formOp  B
            0    6     1  isVolatile  Z
            0    6     2   ftypeKind  I
    MethodParameters:
            Name  Flags
      formOp      
      isVolatile  
      ftypeKind   

  static int ftypeKind(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Class ftype
         0: .line 555
            aload 0 /* ftype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 2
         1: .line 556
            aload 0 /* ftype */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            ireturn
         2: .line 557
      StackMap locals:
      StackMap stack:
            ldc Ljava/lang/Object;
            aload 0 /* ftype */
            invokestatic sun.invoke.util.VerifyType.isNullReferenceConversion:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 4
         3: .line 558
            getstatic java.lang.invoke.DirectMethodHandle.FT_UNCHECKED_REF:I
            ireturn
         4: .line 560
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
        end local 0 // java.lang.Class ftype
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  ftype  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)I
    MethodParameters:
       Name  Flags
      ftype  

  private static java.lang.invoke.LambdaForm preparedFieldLambdaForm(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // java.lang.invoke.MemberName m
         0: .line 569
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            astore 1 /* ftype */
        start local 1 // java.lang.Class ftype
         1: .line 570
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.isVolatile:()Z
            istore 2 /* isVolatile */
        start local 2 // boolean isVolatile
         2: .line 572
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            tableswitch { // 1 - 4
                    1: 3
                    2: 7
                    3: 5
                    4: 9
              default: 11
          }
         3: .line 573
      StackMap locals: java.lang.Class int
      StackMap stack:
            iconst_0
            istore 3 /* formOp */
        start local 3 // byte formOp
         4: goto 12
        end local 3 // byte formOp
         5: .line 574
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* formOp */
        start local 3 // byte formOp
         6: goto 12
        end local 3 // byte formOp
         7: .line 575
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 3 /* formOp */
        start local 3 // byte formOp
         8: goto 12
        end local 3 // byte formOp
         9: .line 576
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 3 /* formOp */
        start local 3 // byte formOp
        10: goto 12
        end local 3 // byte formOp
        11: .line 577
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 3 // byte formOp
        12: .line 579
      StackMap locals: int
      StackMap stack:
            aload 0 /* m */
            invokestatic java.lang.invoke.DirectMethodHandle.shouldBeInitialized:(Ljava/lang/invoke/MemberName;)Z
            ifeq 15
        13: .line 581
            iload 3 /* formOp */
            iload 2 /* isVolatile */
            aload 1 /* ftype */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm:(BZLjava/lang/Class;)Ljava/lang/invoke/LambdaForm;
            pop
        14: .line 584
            iload 3 /* formOp */
            iconst_2
            iadd
            i2b
            istore 3 /* formOp */
        15: .line 586
      StackMap locals:
      StackMap stack:
            iload 3 /* formOp */
            iload 2 /* isVolatile */
            aload 1 /* ftype */
            invokestatic java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm:(BZLjava/lang/Class;)Ljava/lang/invoke/LambdaForm;
            astore 4 /* lform */
        start local 4 // java.lang.invoke.LambdaForm lform
        16: .line 587
            aload 4 /* lform */
            aload 0 /* m */
            invokestatic java.lang.invoke.DirectMethodHandle.maybeCompile:(Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MemberName;)V
        17: .line 588
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 20
            aload 4 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.methodType:()Ljava/lang/invoke/MethodType;
            iconst_0
            iconst_1
            invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
        18: .line 589
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.equals:(Ljava/lang/Object;)Z
            ifne 20
            new java.lang.AssertionError
            dup
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        19: .line 590
            aload 0 /* m */
            aastore
            dup
            iconst_1
            aload 0 /* m */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            aastore
            dup
            iconst_2
            aload 4 /* lform */
            aastore
            dup
            iconst_3
            aload 4 /* lform */
            invokevirtual java.lang.invoke.LambdaForm.methodType:()Ljava/lang/invoke/MethodType;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        20: .line 591
      StackMap locals: java.lang.invoke.LambdaForm
      StackMap stack:
            aload 4 /* lform */
            areturn
        end local 4 // java.lang.invoke.LambdaForm lform
        end local 3 // byte formOp
        end local 2 // boolean isVolatile
        end local 1 // java.lang.Class ftype
        end local 0 // java.lang.invoke.MemberName m
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0           m  Ljava/lang/invoke/MemberName;
            1   21     1       ftype  Ljava/lang/Class<*>;
            2   21     2  isVolatile  Z
            4    5     3      formOp  B
            6    7     3      formOp  B
            8    9     3      formOp  B
           10   11     3      formOp  B
           12   21     3      formOp  B
           16   21     4       lform  Ljava/lang/invoke/LambdaForm;
    MethodParameters:
      Name  Flags
      m     

  private static java.lang.invoke.LambdaForm preparedFieldLambdaForm(byte, boolean, java.lang.Class<?>);
    descriptor: (BZLjava/lang/Class;)Ljava/lang/invoke/LambdaForm;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // byte formOp
        start local 1 // boolean isVolatile
        start local 2 // java.lang.Class ftype
         0: .line 594
            aload 2 /* ftype */
            invokestatic java.lang.invoke.DirectMethodHandle.ftypeKind:(Ljava/lang/Class;)I
            istore 3 /* ftypeKind */
        start local 3 // int ftypeKind
         1: .line 595
            iload 0 /* formOp */
            iload 1 /* isVolatile */
            iload 3 /* ftypeKind */
            invokestatic java.lang.invoke.DirectMethodHandle.afIndex:(BZI)I
            istore 4 /* afIndex */
        start local 4 // int afIndex
         2: .line 596
            getstatic java.lang.invoke.DirectMethodHandle.ACCESSOR_FORMS:[Ljava/lang/invoke/LambdaForm;
            iload 4 /* afIndex */
            aaload
            astore 5 /* lform */
        start local 5 // java.lang.invoke.LambdaForm lform
         3: .line 597
            aload 5 /* lform */
            ifnull 4
            aload 5 /* lform */
            areturn
         4: .line 598
      StackMap locals: int int java.lang.invoke.LambdaForm
      StackMap stack:
            iload 0 /* formOp */
            iload 1 /* isVolatile */
            iload 3 /* ftypeKind */
            invokestatic java.lang.invoke.DirectMethodHandle.makePreparedFieldLambdaForm:(BZI)Ljava/lang/invoke/LambdaForm;
            astore 5 /* lform */
         5: .line 599
            getstatic java.lang.invoke.DirectMethodHandle.ACCESSOR_FORMS:[Ljava/lang/invoke/LambdaForm;
            iload 4 /* afIndex */
            aload 5 /* lform */
            aastore
         6: .line 600
            aload 5 /* lform */
            areturn
        end local 5 // java.lang.invoke.LambdaForm lform
        end local 4 // int afIndex
        end local 3 // int ftypeKind
        end local 2 // java.lang.Class ftype
        end local 1 // boolean isVolatile
        end local 0 // byte formOp
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0      formOp  B
            0    7     1  isVolatile  Z
            0    7     2       ftype  Ljava/lang/Class<*>;
            1    7     3   ftypeKind  I
            2    7     4     afIndex  I
            3    7     5       lform  Ljava/lang/invoke/LambdaForm;
    Signature: (BZLjava/lang/Class<*>;)Ljava/lang/invoke/LambdaForm;
    MethodParameters:
            Name  Flags
      formOp      
      isVolatile  
      ftype       

  private static java.lang.invoke.LambdaForm$Kind getFieldKind(boolean, boolean, sun.invoke.util.Wrapper);
    descriptor: (ZZLsun/invoke/util/Wrapper;)Ljava/lang/invoke/LambdaForm$Kind;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // boolean isGetter
        start local 1 // boolean isVolatile
        start local 2 // sun.invoke.util.Wrapper wrapper
         0: .line 606
            iload 0 /* isGetter */
            ifeq 24
         1: .line 607
            iload 1 /* isVolatile */
            ifeq 13
         2: .line 608
            invokestatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 9
                    1: 3
                    2: 4
                    3: 5
                    4: 6
                    5: 7
                    6: 8
                    7: 9
                    8: 10
                    9: 11
              default: 12
          }
         3: .line 609
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BOOLEAN_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         4: .line 610
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BYTE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         5: .line 611
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_SHORT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         6: .line 612
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_CHAR_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         7: .line 613
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_INT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         8: .line 614
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_LONG_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
         9: .line 615
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_FLOAT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        10: .line 616
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_DOUBLE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        11: .line 617
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_OBJECT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        12: .line 619
      StackMap locals:
      StackMap stack:
            goto 46
        13: .line 620
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 9
                    1: 14
                    2: 15
                    3: 16
                    4: 17
                    5: 18
                    6: 19
                    7: 20
                    8: 21
                    9: 22
              default: 23
          }
        14: .line 621
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BOOLEAN:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        15: .line 622
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BYTE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        16: .line 623
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_SHORT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        17: .line 624
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_CHAR:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        18: .line 625
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_INT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        19: .line 626
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_LONG:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        20: .line 627
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_FLOAT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        21: .line 628
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_DOUBLE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        22: .line 629
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.GET_OBJECT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        23: .line 632
      StackMap locals:
      StackMap stack:
            goto 46
        24: .line 633
      StackMap locals:
      StackMap stack:
            iload 1 /* isVolatile */
            ifeq 36
        25: .line 634
            invokestatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 9
                    1: 26
                    2: 27
                    3: 28
                    4: 29
                    5: 30
                    6: 31
                    7: 32
                    8: 33
                    9: 34
              default: 35
          }
        26: .line 635
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BOOLEAN_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        27: .line 636
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BYTE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        28: .line 637
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_SHORT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        29: .line 638
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_CHAR_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        30: .line 639
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_INT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        31: .line 640
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_LONG_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        32: .line 641
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_FLOAT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        33: .line 642
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_DOUBLE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        34: .line 643
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_OBJECT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        35: .line 645
      StackMap locals:
      StackMap stack:
            goto 46
        36: .line 646
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 9
                    1: 37
                    2: 38
                    3: 39
                    4: 40
                    5: 41
                    6: 42
                    7: 43
                    8: 44
                    9: 45
              default: 46
          }
        37: .line 647
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BOOLEAN:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        38: .line 648
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BYTE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        39: .line 649
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_SHORT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        40: .line 650
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_CHAR:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        41: .line 651
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_INT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        42: .line 652
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_LONG:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        43: .line 653
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_FLOAT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        44: .line 654
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_DOUBLE:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        45: .line 655
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_OBJECT:Ljava/lang/invoke/LambdaForm$Kind;
            areturn
        46: .line 659
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            ldc "Invalid arguments"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 2 // sun.invoke.util.Wrapper wrapper
        end local 1 // boolean isVolatile
        end local 0 // boolean isGetter
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   47     0    isGetter  Z
            0   47     1  isVolatile  Z
            0   47     2     wrapper  Lsun/invoke/util/Wrapper;
    MethodParameters:
            Name  Flags
      isGetter    
      isVolatile  
      wrapper     

  static java.lang.invoke.LambdaForm makePreparedFieldLambdaForm(byte, boolean, int);
    descriptor: (BZI)Ljava/lang/invoke/LambdaForm;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=12, locals=32, args_size=3
        start local 0 // byte formOp
        start local 1 // boolean isVolatile
        start local 2 // int ftypeKind
         0: .line 663
            iload 0 /* formOp */
            iconst_1
            iand
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 3 /* isGetter */
        start local 3 // boolean isGetter
         3: .line 664
            iload 0 /* formOp */
            iconst_2
            if_icmplt 4
            iconst_1
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* isStatic */
        start local 4 // boolean isStatic
         6: .line 665
            iload 0 /* formOp */
            iconst_4
            if_icmplt 7
            iconst_1
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 5 /* needsInit */
        start local 5 // boolean needsInit
         9: .line 666
            iload 2 /* ftypeKind */
            bipush 10
            if_icmpne 10
            iconst_1
            goto 11
      StackMap locals: int
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 6 /* needsCast */
        start local 6 // boolean needsCast
        12: .line 667
            iload 6 /* needsCast */
            ifeq 13
            getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
            goto 14
      StackMap locals: int
      StackMap stack:
        13: getstatic java.lang.invoke.DirectMethodHandle.ALL_WRAPPERS:[Lsun/invoke/util/Wrapper;
            iload 2 /* ftypeKind */
            aaload
      StackMap locals:
      StackMap stack: sun.invoke.util.Wrapper
        14: astore 7 /* fw */
        start local 7 // sun.invoke.util.Wrapper fw
        15: .line 668
            aload 7 /* fw */
            invokevirtual sun.invoke.util.Wrapper.primitiveType:()Ljava/lang/Class;
            astore 8 /* ft */
        start local 8 // java.lang.Class ft
        16: .line 669
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 19
            iload 6 /* needsCast */
            ifeq 17
            ldc Ljava/lang/String;
            goto 18
      StackMap locals: sun.invoke.util.Wrapper java.lang.Class
      StackMap stack:
        17: aload 8 /* ft */
      StackMap locals:
      StackMap stack: java.lang.Class
        18: invokestatic java.lang.invoke.DirectMethodHandle.ftypeKind:(Ljava/lang/Class;)I
            iload 2 /* ftypeKind */
            if_icmpeq 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 672
      StackMap locals:
      StackMap stack:
            iload 3 /* isGetter */
            iload 1 /* isVolatile */
            aload 7 /* fw */
            invokestatic java.lang.invoke.DirectMethodHandle.getFieldKind:(ZZLsun/invoke/util/Wrapper;)Ljava/lang/invoke/LambdaForm$Kind;
            astore 9 /* kind */
        start local 9 // java.lang.invoke.LambdaForm$Kind kind
        20: .line 675
            iload 3 /* isGetter */
            ifeq 23
        21: .line 676
            aload 8 /* ft */
            ldc Ljava/lang/Object;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aastore
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 10 /* linkerType */
        start local 10 // java.lang.invoke.MethodType linkerType
        22: goto 24
        end local 10 // java.lang.invoke.MethodType linkerType
        23: .line 678
      StackMap locals: java.lang.invoke.LambdaForm$Kind
      StackMap stack:
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Object;
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 8 /* ft */
            aastore
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 10 /* linkerType */
        start local 10 // java.lang.invoke.MethodType linkerType
        24: .line 679
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            new java.lang.invoke.MemberName
            dup
            ldc Ljdk/internal/misc/Unsafe;
            aload 9 /* kind */
            getfield java.lang.invoke.LambdaForm$Kind.methodName:Ljava/lang/String;
            aload 10 /* linkerType */
            iconst_5
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 11 /* linker */
        start local 11 // java.lang.invoke.MemberName linker
        25: .line 681
            getstatic java.lang.invoke.DirectMethodHandle.IMPL_NAMES:Ljava/lang/invoke/MemberName$Factory;
            iconst_5
            aload 11 /* linker */
            aconst_null
            ldc Ljava/lang/NoSuchMethodException;
            invokevirtual java.lang.invoke.MemberName$Factory.resolveOrFail:(BLjava/lang/invoke/MemberName;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            astore 11 /* linker */
        26: .line 682
            goto 29
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName
      StackMap stack: java.lang.ReflectiveOperationException
        27: astore 12 /* ex */
        start local 12 // java.lang.ReflectiveOperationException ex
        28: .line 683
            aload 12 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)Ljava/lang/InternalError;
            athrow
        end local 12 // java.lang.ReflectiveOperationException ex
        29: .line 688
      StackMap locals:
      StackMap stack:
            iload 3 /* isGetter */
            ifeq 32
        30: .line 689
            aload 8 /* ft */
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 12 /* mtype */
        start local 12 // java.lang.invoke.MethodType mtype
        31: goto 33
        end local 12 // java.lang.invoke.MethodType mtype
        32: .line 691
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            aload 8 /* ft */
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 12 /* mtype */
        start local 12 // java.lang.invoke.MethodType mtype
        33: .line 692
      StackMap locals: java.lang.invoke.MethodType
      StackMap stack:
            aload 12 /* mtype */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            astore 12 /* mtype */
        34: .line 693
            iload 4 /* isStatic */
            ifne 36
        35: .line 694
            aload 12 /* mtype */
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 12 /* mtype */
        36: .line 697
      StackMap locals:
      StackMap stack:
            iconst_1
            aload 12 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iadd
            istore 13 /* ARG_LIMIT */
        start local 13 // int ARG_LIMIT
        37: .line 699
            iload 4 /* isStatic */
            ifeq 38
            iconst_m1
            goto 39
      StackMap locals: int
      StackMap stack:
        38: iconst_1
      StackMap locals:
      StackMap stack: int
        39: istore 14 /* OBJ_BASE */
        start local 14 // int OBJ_BASE
        40: .line 701
            iload 3 /* isGetter */
            ifeq 41
            iconst_m1
            goto 42
      StackMap locals: int
      StackMap stack:
        41: iload 13 /* ARG_LIMIT */
            iconst_1
            isub
      StackMap locals:
      StackMap stack: int
        42: istore 15 /* SET_VALUE */
        start local 15 // int SET_VALUE
        43: .line 702
            iload 13 /* ARG_LIMIT */
            istore 16 /* nameCursor */
        start local 16 // int nameCursor
        44: .line 703
            iload 4 /* isStatic */
            ifeq 45
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            goto 46
      StackMap locals: int int
      StackMap stack:
        45: iconst_m1
      StackMap locals:
      StackMap stack: int
        46: istore 17 /* F_HOLDER */
        start local 17 // int F_HOLDER
        47: .line 704
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            istore 18 /* F_OFFSET */
        start local 18 // int F_OFFSET
        48: .line 705
            iload 14 /* OBJ_BASE */
            iflt 49
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            goto 50
      StackMap locals: int int
      StackMap stack:
        49: iconst_m1
      StackMap locals:
      StackMap stack: int
        50: istore 19 /* OBJ_CHECK */
        start local 19 // int OBJ_CHECK
        51: .line 706
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            istore 20 /* U_HOLDER */
        start local 20 // int U_HOLDER
        52: .line 707
            iload 5 /* needsInit */
            ifeq 53
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            goto 54
      StackMap locals: int int
      StackMap stack:
        53: iconst_m1
      StackMap locals:
      StackMap stack: int
        54: istore 21 /* INIT_BAR */
        start local 21 // int INIT_BAR
        55: .line 708
            iload 6 /* needsCast */
            ifeq 56
            iload 3 /* isGetter */
            ifne 56
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            goto 57
      StackMap locals: int
      StackMap stack:
        56: iconst_m1
      StackMap locals:
      StackMap stack: int
        57: istore 22 /* PRE_CAST */
        start local 22 // int PRE_CAST
        58: .line 709
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            istore 23 /* LINKER_CALL */
        start local 23 // int LINKER_CALL
        59: .line 710
            iload 6 /* needsCast */
            ifeq 60
            iload 3 /* isGetter */
            ifeq 60
            iload 16 /* nameCursor */
            iinc 16 /* nameCursor */ 1
            goto 61
      StackMap locals: int int
      StackMap stack:
        60: iconst_m1
      StackMap locals:
      StackMap stack: int
        61: istore 24 /* POST_CAST */
        start local 24 // int POST_CAST
        62: .line 711
            iload 16 /* nameCursor */
            iconst_1
            isub
            istore 25 /* RESULT */
        start local 25 // int RESULT
        63: .line 712
            iload 16 /* nameCursor */
            iload 13 /* ARG_LIMIT */
            isub
            aload 12 /* mtype */
            invokevirtual java.lang.invoke.MethodType.invokerType:()Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.LambdaForm.arguments:(ILjava/lang/invoke/MethodType;)[Ljava/lang/invoke/LambdaForm$Name;
            astore 26 /* names */
        start local 26 // java.lang.invoke.LambdaForm$Name[] names
        64: .line 713
            iload 5 /* needsInit */
            ifeq 66
        65: .line 714
            aload 26 /* names */
            iload 21 /* INIT_BAR */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_ensureInitialized:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        66: .line 715
      StackMap locals: int int java.lang.invoke.LambdaForm$Name[]
      StackMap stack:
            iload 6 /* needsCast */
            ifeq 68
            iload 3 /* isGetter */
            ifne 68
        67: .line 716
            aload 26 /* names */
            iload 22 /* PRE_CAST */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_checkCast:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            dup
            iconst_1
            aload 26 /* names */
            iload 15 /* SET_VALUE */
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        68: .line 717
      StackMap locals:
      StackMap stack:
            iconst_1
            aload 10 /* linkerType */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iadd
            anewarray java.lang.Object
            astore 27 /* outArgs */
        start local 27 // java.lang.Object[] outArgs
        69: .line 718
            getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 72
            aload 27 /* outArgs */
            arraylength
            iload 3 /* isGetter */
            ifeq 70
            iconst_3
            goto 71
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[]
      StackMap stack: int
        70: iconst_4
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[]
      StackMap stack: int int
        71: if_icmpeq 72
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        72: .line 719
      StackMap locals:
      StackMap stack:
            aload 27 /* outArgs */
            iconst_0
            aload 26 /* names */
            iload 20 /* U_HOLDER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_UNSAFE:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_0
            anewarray java.lang.Object
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            dup_x2
            aastore
            aastore
        73: .line 720
            iload 4 /* isStatic */
            ifeq 77
        74: .line 721
            aload 27 /* outArgs */
            iconst_1
            aload 26 /* names */
            iload 17 /* F_HOLDER */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_staticBase:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            dup_x2
            aastore
            aastore
        75: .line 722
            aload 27 /* outArgs */
            iconst_2
            aload 26 /* names */
            iload 18 /* F_OFFSET */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_staticOffset:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            dup_x2
            aastore
            aastore
        76: .line 723
            goto 79
        77: .line 724
      StackMap locals:
      StackMap stack:
            aload 27 /* outArgs */
            iconst_1
            aload 26 /* names */
            iload 19 /* OBJ_CHECK */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_checkBase:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iload 14 /* OBJ_BASE */
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            dup_x2
            aastore
            aastore
        78: .line 725
            aload 27 /* outArgs */
            iconst_2
            aload 26 /* names */
            iload 18 /* F_OFFSET */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_fieldOffset:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            dup_x2
            aastore
            aastore
        79: .line 727
      StackMap locals:
      StackMap stack:
            iload 3 /* isGetter */
            ifne 83
        80: .line 728
            aload 27 /* outArgs */
            iconst_3
            iload 6 /* needsCast */
            ifeq 81
            aload 26 /* names */
            iload 22 /* PRE_CAST */
            aaload
            goto 82
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[]
      StackMap stack: java.lang.Object[] int
        81: aload 26 /* names */
            iload 15 /* SET_VALUE */
            aaload
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[]
      StackMap stack: java.lang.Object[] int java.lang.invoke.LambdaForm$Name
        82: aastore
        83: .line 730
      StackMap locals:
      StackMap stack:
            aload 27 /* outArgs */
            dup
            astore 31
            arraylength
            istore 30
            iconst_0
            istore 29
            goto 87
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[] top int int java.lang.Object[]
      StackMap stack:
        84: aload 31
            iload 29
            aaload
            astore 28 /* a */
        start local 28 // java.lang.Object a
        85: getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 86
            aload 28 /* a */
            ifnonnull 86
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 28 // java.lang.Object a
      StackMap locals:
      StackMap stack:
        86: iinc 29 1
      StackMap locals:
      StackMap stack:
        87: iload 29
            iload 30
            if_icmplt 84
        88: .line 731
            aload 26 /* names */
            iload 23 /* LINKER_CALL */
            new java.lang.invoke.LambdaForm$Name
            dup
            aload 11 /* linker */
            aload 27 /* outArgs */
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/MemberName;[Ljava/lang/Object;)V
            aastore
        89: .line 732
            iload 6 /* needsCast */
            ifeq 91
            iload 3 /* isGetter */
            ifeq 91
        90: .line 733
            aload 26 /* names */
            iload 24 /* POST_CAST */
            new java.lang.invoke.LambdaForm$Name
            dup
            getstatic java.lang.invoke.DirectMethodHandle.NF_checkCast:Ljava/lang/invoke/LambdaForm$NamedFunction;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 26 /* names */
            iconst_0
            aaload
            aastore
            dup
            iconst_1
            aload 26 /* names */
            iload 23 /* LINKER_CALL */
            aaload
            aastore
            invokespecial java.lang.invoke.LambdaForm$Name.<init>:(Ljava/lang/invoke/LambdaForm$NamedFunction;[Ljava/lang/Object;)V
            aastore
        91: .line 734
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[]
      StackMap stack:
            aload 26 /* names */
            dup
            astore 31
            arraylength
            istore 30
            iconst_0
            istore 29
            goto 95
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[] top int int java.lang.invoke.LambdaForm$Name[]
      StackMap stack:
        92: aload 31
            iload 29
            aaload
            astore 28 /* n */
        start local 28 // java.lang.invoke.LambdaForm$Name n
        93: getstatic java.lang.invoke.DirectMethodHandle.$assertionsDisabled:Z
            ifne 94
            aload 28 /* n */
            ifnonnull 94
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 28 // java.lang.invoke.LambdaForm$Name n
      StackMap locals:
      StackMap stack:
        94: iinc 29 1
      StackMap locals:
      StackMap stack:
        95: iload 29
            iload 30
            if_icmplt 92
        96: .line 737
            new java.lang.StringBuilder
            dup
            aload 9 /* kind */
            getfield java.lang.invoke.LambdaForm$Kind.methodName:Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 28 /* nameBuilder */
        start local 28 // java.lang.StringBuilder nameBuilder
        97: .line 738
            iload 4 /* isStatic */
            ifeq 100
        98: .line 739
            aload 28 /* nameBuilder */
            ldc "Static"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        99: .line 740
            goto 101
       100: .line 741
      StackMap locals: int int int int int int int sun.invoke.util.Wrapper java.lang.Class java.lang.invoke.LambdaForm$Kind java.lang.invoke.MethodType java.lang.invoke.MemberName java.lang.invoke.MethodType int int int int int int int int int int int int int java.lang.invoke.LambdaForm$Name[] java.lang.Object[] java.lang.StringBuilder
      StackMap stack:
            aload 28 /* nameBuilder */
            ldc "Field"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       101: .line 743
      StackMap locals:
      StackMap stack:
            iload 6 /* needsCast */
            ifeq 102
            aload 28 /* nameBuilder */
            ldc "Cast"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       102: .line 744
      StackMap locals:
      StackMap stack:
            iload 5 /* needsInit */
            ifeq 103
            aload 28 /* nameBuilder */
            ldc "Init"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       103: .line 745
      StackMap locals:
      StackMap stack:
            iload 6 /* needsCast */
            ifne 104
            iload 5 /* needsInit */
            ifeq 105
       104: .line 747
      StackMap locals:
      StackMap stack:
            new java.lang.invoke.LambdaForm
            dup
            aload 28 /* nameBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 13 /* ARG_LIMIT */
            aload 26 /* names */
            iload 25 /* RESULT */
            invokespecial java.lang.invoke.LambdaForm.<init>:(Ljava/lang/String;I[Ljava/lang/invoke/LambdaForm$Name;I)V
            areturn
       105: .line 749
      StackMap locals:
      StackMap stack:
            new java.lang.invoke.LambdaForm
            dup
            aload 28 /* nameBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 13 /* ARG_LIMIT */
            aload 26 /* names */
            iload 25 /* RESULT */
            aload 9 /* kind */
            invokespecial java.lang.invoke.LambdaForm.<init>:(Ljava/lang/String;I[Ljava/lang/invoke/LambdaForm$Name;ILjava/lang/invoke/LambdaForm$Kind;)V
            areturn
        end local 28 // java.lang.StringBuilder nameBuilder
        end local 27 // java.lang.Object[] outArgs
        end local 26 // java.lang.invoke.LambdaForm$Name[] names
        end local 25 // int RESULT
        end local 24 // int POST_CAST
        end local 23 // int LINKER_CALL
        end local 22 // int PRE_CAST
        end local 21 // int INIT_BAR
        end local 20 // int U_HOLDER
        end local 19 // int OBJ_CHECK
        end local 18 // int F_OFFSET
        end local 17 // int F_HOLDER
        end local 16 // int nameCursor
        end local 15 // int SET_VALUE
        end local 14 // int OBJ_BASE
        end local 13 // int ARG_LIMIT
        end local 12 // java.lang.invoke.MethodType mtype
        end local 11 // java.lang.invoke.MemberName linker
        end local 10 // java.lang.invoke.MethodType linkerType
        end local 9 // java.lang.invoke.LambdaForm$Kind kind
        end local 8 // java.lang.Class ft
        end local 7 // sun.invoke.util.Wrapper fw
        end local 6 // boolean needsCast
        end local 5 // boolean needsInit
        end local 4 // boolean isStatic
        end local 3 // boolean isGetter
        end local 2 // int ftypeKind
        end local 1 // boolean isVolatile
        end local 0 // byte formOp
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  106     0       formOp  B
            0  106     1   isVolatile  Z
            0  106     2    ftypeKind  I
            3  106     3     isGetter  Z
            6  106     4     isStatic  Z
            9  106     5    needsInit  Z
           12  106     6    needsCast  Z
           15  106     7           fw  Lsun/invoke/util/Wrapper;
           16  106     8           ft  Ljava/lang/Class<*>;
           20  106     9         kind  Ljava/lang/invoke/LambdaForm$Kind;
           22   23    10   linkerType  Ljava/lang/invoke/MethodType;
           24  106    10   linkerType  Ljava/lang/invoke/MethodType;
           25  106    11       linker  Ljava/lang/invoke/MemberName;
           28   29    12           ex  Ljava/lang/ReflectiveOperationException;
           31   32    12        mtype  Ljava/lang/invoke/MethodType;
           33  106    12        mtype  Ljava/lang/invoke/MethodType;
           37  106    13    ARG_LIMIT  I
           40  106    14     OBJ_BASE  I
           43  106    15    SET_VALUE  I
           44  106    16   nameCursor  I
           47  106    17     F_HOLDER  I
           48  106    18     F_OFFSET  I
           51  106    19    OBJ_CHECK  I
           52  106    20     U_HOLDER  I
           55  106    21     INIT_BAR  I
           58  106    22     PRE_CAST  I
           59  106    23  LINKER_CALL  I
           62  106    24    POST_CAST  I
           63  106    25       RESULT  I
           64  106    26        names  [Ljava/lang/invoke/LambdaForm$Name;
           69  106    27      outArgs  [Ljava/lang/Object;
           85   86    28            a  Ljava/lang/Object;
           93   94    28            n  Ljava/lang/invoke/LambdaForm$Name;
           97  106    28  nameBuilder  Ljava/lang/StringBuilder;
      Exception table:
        from    to  target  type
          25    26      27  Class java.lang.ReflectiveOperationException
    MethodParameters:
            Name  Flags
      formOp      
      isVolatile  
      ftypeKind   

  java.lang.Object internalProperties();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual java.lang.invoke.DirectMethodHandle.internalProperties:()Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$sun$invoke$util$Wrapper();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 52
            getstatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 7
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_5
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 6
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 9
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_3
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 10
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            dup
            putstatic java.lang.invoke.DirectMethodHandle.$SWITCH_TABLE$sun$invoke$util$Wrapper:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
}
SourceFile: "DirectMethodHandle.java"
NestMembers:
  java.lang.invoke.DirectMethodHandle$Accessor  java.lang.invoke.DirectMethodHandle$Constructor  java.lang.invoke.DirectMethodHandle$EnsureInitialized  java.lang.invoke.DirectMethodHandle$Holder  java.lang.invoke.DirectMethodHandle$Interface  java.lang.invoke.DirectMethodHandle$Special  java.lang.invoke.DirectMethodHandle$StaticAccessor
InnerClasses:
  Accessor = java.lang.invoke.DirectMethodHandle$Accessor of java.lang.invoke.DirectMethodHandle
  Constructor = java.lang.invoke.DirectMethodHandle$Constructor of java.lang.invoke.DirectMethodHandle
  private EnsureInitialized = java.lang.invoke.DirectMethodHandle$EnsureInitialized of java.lang.invoke.DirectMethodHandle
  final Holder = java.lang.invoke.DirectMethodHandle$Holder of java.lang.invoke.DirectMethodHandle
  Interface = java.lang.invoke.DirectMethodHandle$Interface of java.lang.invoke.DirectMethodHandle
  Special = java.lang.invoke.DirectMethodHandle$Special of java.lang.invoke.DirectMethodHandle
  StaticAccessor = java.lang.invoke.DirectMethodHandle$StaticAccessor of java.lang.invoke.DirectMethodHandle
  final Kind = java.lang.invoke.LambdaForm$Kind of java.lang.invoke.LambdaForm
  final Name = java.lang.invoke.LambdaForm$Name of java.lang.invoke.LambdaForm
  NamedFunction = java.lang.invoke.LambdaForm$NamedFunction of java.lang.invoke.LambdaForm
  Factory = java.lang.invoke.MemberName$Factory of java.lang.invoke.MemberName