class jdk.dynalink.beans.BeanLinker extends jdk.dynalink.beans.AbstractJavaLinker implements jdk.dynalink.linker.TypeBasedGuardingDynamicLinker
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.dynalink.beans.BeanLinker
  super_class: jdk.dynalink.beans.AbstractJavaLinker
{
  private static final java.lang.invoke.MethodHandle GET_LIST_ELEMENT;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle GET_MAP_ELEMENT;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle LIST_GUARD;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle MAP_GUARD;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle NULL_GETTER_1;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle NULL_GETTER_2;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle RANGE_CHECK_ARRAY;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle RANGE_CHECK_LIST;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle CONTAINS_MAP;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle SET_LIST_ELEMENT;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle PUT_MAP_ELEMENT;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle NO_OP_SETTER_2;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle NO_OP_SETTER_3;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle GET_COLLECTION_LENGTH;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle GET_MAP_LENGTH;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=1, args_size=0
         0: .line 111
            ldc Ljdk/dynalink/beans/BeanLinker;
            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 jdk.dynalink.beans.BeanLinker.$assertionsDisabled:Z
         3: .line 160
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/List;
            ldc "get"
         4: .line 161
            ldc Ljava/lang/Object;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
         5: .line 160
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.GET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
         6: .line 163
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/Map;
            ldc "get"
         7: .line 164
            ldc Ljava/lang/Object;
            ldc Ljava/lang/Object;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
         8: .line 163
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.GET_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
         9: .line 166
            ldc Ljava/util/List;
            invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.LIST_GUARD:Ljava/lang/invoke/MethodHandle;
        10: .line 167
            ldc Ljava/util/Map;
            invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.MAP_GUARD:Ljava/lang/invoke/MethodHandle;
        11: .line 172
            ldc Ljava/lang/Object;
            aconst_null
            invokestatic java.lang.invoke.MethodHandles.constant:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
            astore 0 /* constantNull */
        start local 0 // java.lang.invoke.MethodHandle constantNull
        12: .line 173
            aload 0 /* constantNull */
            iconst_1
            invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_1:Ljava/lang/invoke/MethodHandle;
        13: .line 174
            aload 0 /* constantNull */
            iconst_2
            invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_2:Ljava/lang/invoke/MethodHandle;
        end local 0 // java.lang.invoke.MethodHandle constantNull
        14: .line 378
            ldc Ljava/lang/Object;
            invokestatic jdk.dynalink.beans.BeanLinker.findRangeCheck:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_ARRAY:Ljava/lang/invoke/MethodHandle;
        15: .line 379
            ldc Ljava/util/List;
            invokestatic jdk.dynalink.beans.BeanLinker.findRangeCheck:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_LIST:Ljava/lang/invoke/MethodHandle;
        16: .line 380
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/Map;
            ldc "containsKey"
        17: .line 381
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Object;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        18: .line 380
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.CONTAINS_MAP:Ljava/lang/invoke/MethodHandle;
        19: .line 417
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/List;
            ldc "set"
        20: .line 418
            ldc Ljava/lang/Object;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        21: .line 417
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.SET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
        22: .line 420
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/Map;
            ldc "put"
        23: .line 421
            ldc Ljava/lang/Object;
            ldc Ljava/lang/Object;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        24: .line 420
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.PUT_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
        25: .line 426
            invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
            ldc "noOpSetter"
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokestatic jdk.dynalink.linker.support.Lookup.findOwnStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            astore 0 /* noOpSetter */
        start local 0 // java.lang.invoke.MethodHandle noOpSetter
        26: .line 427
            aload 0 /* noOpSetter */
            iconst_2
            invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.NO_OP_SETTER_2:Ljava/lang/invoke/MethodHandle;
        27: .line 428
            aload 0 /* noOpSetter */
            iconst_3
            invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.NO_OP_SETTER_3:Ljava/lang/invoke/MethodHandle;
        end local 0 // java.lang.invoke.MethodHandle noOpSetter
        28: .line 524
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/Collection;
            ldc "size"
        29: .line 525
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        30: .line 524
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.GET_COLLECTION_LENGTH:Ljava/lang/invoke/MethodHandle;
        31: .line 527
            getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
            ldc Ljava/util/Map;
            ldc "size"
        32: .line 528
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        33: .line 527
            invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.dynalink.beans.BeanLinker.GET_MAP_LENGTH:Ljava/lang/invoke/MethodHandle;
        34: .line 528
            return
      LocalVariableTable:
        Start  End  Slot          Name  Signature
           12   14     0  constantNull  Ljava/lang/invoke/MethodHandle;
           26   28     0    noOpSetter  Ljava/lang/invoke/MethodHandle;

  void <init>(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // java.lang.Class clazz
         0: .line 113
            aload 0 /* this */
            aload 1 /* clazz */
            aload 1 /* clazz */
            invokestatic jdk.dynalink.linker.support.Guards.getClassGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            aload 1 /* clazz */
            invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            invokespecial jdk.dynalink.beans.AbstractJavaLinker.<init>:(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
         1: .line 114
            aload 1 /* clazz */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 4
         2: .line 117
            aload 0 /* this */
            ldc "length"
            aload 1 /* clazz */
            invokestatic java.lang.invoke.MethodHandles.arrayLength:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
            invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
         3: .line 118
            goto 9
      StackMap locals: jdk.dynalink.beans.BeanLinker java.lang.Class
      StackMap stack:
         4: ldc Ljava/util/Collection;
            aload 1 /* clazz */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 7
         5: .line 119
            aload 0 /* this */
            ldc "length"
            getstatic jdk.dynalink.beans.BeanLinker.GET_COLLECTION_LENGTH:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
            invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
         6: .line 120
            goto 9
      StackMap locals:
      StackMap stack:
         7: ldc Ljava/util/Map;
            aload 1 /* clazz */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 9
         8: .line 121
            aload 0 /* this */
            ldc "length"
            getstatic jdk.dynalink.beans.BeanLinker.GET_MAP_LENGTH:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
            invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
         9: .line 123
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ljdk/dynalink/beans/BeanLinker;
            0   10     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
       Name  Flags
      clazz  final

  public boolean canLinkType(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // java.lang.Class type
         0: .line 127
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Class type
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/dynalink/beans/BeanLinker;
            0    2     1  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
      Name  Flags
      type  final

  jdk.dynalink.beans.FacetIntrospector createFacetIntrospector();
    descriptor: ()Ljdk/dynalink/beans/FacetIntrospector;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.dynalink.beans.BeanLinker this
         0: .line 132
            new jdk.dynalink.beans.BeanIntrospector
            dup
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokespecial jdk.dynalink.beans.BeanIntrospector.<init>:(Ljava/lang/Class;)V
            areturn
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/dynalink/beans/BeanLinker;

  protected jdk.dynalink.beans.GuardedInvocationComponent getGuardedInvocationComponent(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
    descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
         0: .line 137
            aload 0 /* this */
            aload 1 /* req */
            invokespecial jdk.dynalink.beans.AbstractJavaLinker.getGuardedInvocationComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 2 /* superGic */
        start local 2 // jdk.dynalink.beans.GuardedInvocationComponent superGic
         1: .line 138
            aload 2 /* superGic */
            ifnull 3
         2: .line 139
            aload 2 /* superGic */
            areturn
         3: .line 141
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.namespaces:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 11
         4: .line 142
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.baseOperation:Ljdk/dynalink/Operation;
            astore 3 /* op */
        start local 3 // jdk.dynalink.Operation op
         5: .line 143
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.namespaces:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.dynalink.Namespace
            astore 4 /* ns */
        start local 4 // jdk.dynalink.Namespace ns
         6: .line 144
            aload 4 /* ns */
            getstatic jdk.dynalink.StandardNamespace.ELEMENT:Ljdk/dynalink/StandardNamespace;
            if_acmpne 11
         7: .line 145
            aload 3 /* op */
            getstatic jdk.dynalink.StandardOperation.GET:Ljdk/dynalink/StandardOperation;
            if_acmpne 9
         8: .line 146
            aload 0 /* this */
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
            invokevirtual jdk.dynalink.beans.BeanLinker.getElementGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            areturn
         9: .line 147
      StackMap locals: jdk.dynalink.Operation jdk.dynalink.Namespace
      StackMap stack:
            aload 3 /* op */
            getstatic jdk.dynalink.StandardOperation.SET:Ljdk/dynalink/StandardOperation;
            if_acmpne 11
        10: .line 148
            aload 0 /* this */
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
            invokevirtual jdk.dynalink.beans.BeanLinker.getElementSetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            areturn
        end local 4 // jdk.dynalink.Namespace ns
        end local 3 // jdk.dynalink.Operation op
        11: .line 152
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // jdk.dynalink.beans.GuardedInvocationComponent superGic
        end local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Ljdk/dynalink/beans/BeanLinker;
            0   12     1       req  Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
            1   12     2  superGic  Ljdk/dynalink/beans/GuardedInvocationComponent;
            5   11     3        op  Ljdk/dynalink/Operation;
            6   11     4        ns  Ljdk/dynalink/Namespace;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      req   final

  jdk.dynalink.beans.SingleDynamicMethod getConstructorMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // java.lang.String signature
         0: .line 157
            aconst_null
            areturn
        end local 1 // java.lang.String signature
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Ljdk/dynalink/beans/BeanLinker;
            0    1     1  signature  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      signature  final

  private static java.lang.invoke.MethodHandle dropObjectArguments(java.lang.invoke.MethodHandle, int);
    descriptor: (Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.invoke.MethodHandle m
        start local 1 // int n
         0: .line 178
            aload 0 /* m */
            iconst_0
            iload 1 /* n */
            ldc Ljava/lang/Object;
            invokestatic java.util.Collections.nCopies:(ILjava/lang/Object;)Ljava/util/List;
            invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
            areturn
        end local 1 // int n
        end local 0 // java.lang.invoke.MethodHandle m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/lang/invoke/MethodHandle;
            0    1     1     n  I
    MethodParameters:
      Name  Flags
      m     final
      n     final

  private jdk.dynalink.beans.GuardedInvocationComponent getElementGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
    descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=18, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
         0: .line 186
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
            astore 2 /* callSiteDescriptor */
        start local 2 // jdk.dynalink.CallSiteDescriptor callSiteDescriptor
         1: .line 187
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
            astore 3 /* name */
        start local 3 // java.lang.Object name
         2: .line 188
            aload 3 /* name */
            ifnull 3
            iconst_1
            goto 4
      StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.Object
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* isFixedKey */
        start local 4 // boolean isFixedKey
         5: .line 189
            aload 2 /* callSiteDescriptor */
            iload 4 /* isFixedKey */
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
      StackMap stack: jdk.dynalink.CallSiteDescriptor
         6: iconst_2
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
      StackMap stack: jdk.dynalink.CallSiteDescriptor int
         7: invokestatic jdk.dynalink.beans.BeanLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
         8: .line 190
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
            astore 5 /* linkerServices */
        start local 5 // jdk.dynalink.linker.LinkerServices linkerServices
         9: .line 191
            aload 2 /* callSiteDescriptor */
            invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
            astore 6 /* callSiteType */
        start local 6 // java.lang.invoke.MethodType callSiteType
        10: .line 192
            aload 6 /* callSiteType */
            iconst_0
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 7 /* declaredType */
        start local 7 // java.lang.Class declaredType
        11: .line 193
            aload 0 /* this */
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* nextComponent */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent nextComponent
        12: .line 202
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 16
        13: .line 203
            aload 7 /* declaredType */
            invokestatic java.lang.invoke.MethodHandles.arrayElementGetter:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        14: .line 204
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        15: .line 205
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
        16: ldc Ljava/util/List;
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 20
        17: .line 206
            getstatic jdk.dynalink.beans.BeanLinker.GET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        18: .line 207
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        19: .line 208
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        20: ldc Ljava/util/Map;
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 24
        21: .line 209
            getstatic jdk.dynalink.beans.BeanLinker.GET_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        22: .line 210
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        23: .line 211
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        24: aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 28
        25: .line 212
            aload 0 /* this */
            aload 5 /* linkerServices */
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodHandles.arrayElementGetter:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            aload 6 /* callSiteType */
            invokevirtual jdk.dynalink.beans.BeanLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        26: .line 213
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        27: .line 214
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        28: ldc Ljava/util/List;
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 34
        29: .line 215
            getstatic jdk.dynalink.beans.BeanLinker.GET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.BeanLinker.LIST_GUARD:Ljava/lang/invoke/MethodHandle;
            aload 6 /* callSiteType */
            invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            ldc Ljava/util/List;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
        30: .line 216
            aload 5 /* linkerServices */
        31: .line 215
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        32: .line 217
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        33: .line 218
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        34: ldc Ljava/util/Map;
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 40
        35: .line 219
            getstatic jdk.dynalink.beans.BeanLinker.GET_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.BeanLinker.MAP_GUARD:Ljava/lang/invoke/MethodHandle;
            aload 6 /* callSiteType */
            invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            ldc Ljava/util/Map;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
        36: .line 220
            aload 5 /* linkerServices */
        37: .line 219
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 9 /* gic */
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        38: .line 221
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 10 /* collectionType */
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        39: .line 222
            goto 41
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        40: .line 224
      StackMap locals:
      StackMap stack:
            aload 8 /* nextComponent */
            areturn
        start local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        start local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        41: .line 229
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType
      StackMap stack:
            aload 10 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpeq 47
            iload 4 /* isFixedKey */
            ifeq 47
        42: .line 230
            aload 3 /* name */
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.convertKeyToInteger:(Ljava/lang/Object;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/Integer;
            astore 12 /* integer */
        start local 12 // java.lang.Integer integer
        43: .line 231
            aload 12 /* integer */
            ifnull 44
            aload 12 /* integer */
            invokevirtual java.lang.Integer.intValue:()I
            ifge 45
        44: .line 234
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType top java.lang.Integer
      StackMap stack:
            aload 8 /* nextComponent */
            areturn
        45: .line 236
      StackMap locals:
      StackMap stack:
            aload 12 /* integer */
            astore 11 /* typedName */
        end local 12 // java.lang.Integer integer
        start local 11 // java.lang.Object typedName
        46: .line 237
            goto 48
        end local 11 // java.lang.Object typedName
        47: .line 238
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType
      StackMap stack:
            aload 3 /* name */
            astore 11 /* typedName */
        start local 11 // java.lang.Object typedName
        48: .line 241
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 9 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
            astore 12 /* gi */
        start local 12 // jdk.dynalink.linker.GuardedInvocation gi
        49: .line 242
            new jdk.dynalink.beans.BeanLinker$Binder
            dup
            aload 5 /* linkerServices */
            aload 6 /* callSiteType */
            aload 11 /* typedName */
            invokespecial jdk.dynalink.beans.BeanLinker$Binder.<init>:(Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)V
            astore 13 /* binder */
        start local 13 // jdk.dynalink.beans.BeanLinker$Binder binder
        50: .line 243
            aload 12 /* gi */
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
            astore 14 /* invocation */
        start local 14 // java.lang.invoke.MethodHandle invocation
        51: .line 246
            invokestatic jdk.dynalink.beans.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:()[I
            aload 10 /* collectionType */
            invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 56
                    2: 52
                    3: 54
              default: 58
          }
        52: .line 248
      StackMap locals: jdk.dynalink.linker.GuardedInvocation jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
      StackMap stack:
            getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_LIST:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            aload 2 /* callSiteDescriptor */
            invokestatic jdk.dynalink.beans.BeanLinker.convertArgToNumber:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
            astore 15 /* checkGuard */
        start local 15 // java.lang.invoke.MethodHandle checkGuard
        53: .line 249
            goto 59
        end local 15 // java.lang.invoke.MethodHandle checkGuard
        54: .line 251
      StackMap locals:
      StackMap stack:
            aload 5 /* linkerServices */
            getstatic jdk.dynalink.beans.BeanLinker.CONTAINS_MAP:Ljava/lang/invoke/MethodHandle;
            invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            astore 15 /* checkGuard */
        start local 15 // java.lang.invoke.MethodHandle checkGuard
        55: .line 252
            goto 59
        end local 15 // java.lang.invoke.MethodHandle checkGuard
        56: .line 254
      StackMap locals:
      StackMap stack:
            getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_ARRAY:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            aload 2 /* callSiteDescriptor */
            invokestatic jdk.dynalink.beans.BeanLinker.convertArgToNumber:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
            astore 15 /* checkGuard */
        start local 15 // java.lang.invoke.MethodHandle checkGuard
        57: .line 255
            goto 59
        end local 15 // java.lang.invoke.MethodHandle checkGuard
        58: .line 257
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        start local 15 // java.lang.invoke.MethodHandle checkGuard
        59: .line 262
      StackMap locals: java.lang.invoke.MethodHandle
      StackMap stack:
            aload 8 /* nextComponent */
            ifnull 62
        60: .line 263
            aload 8 /* nextComponent */
            astore 16 /* finalNextComponent */
        start local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        61: .line 264
            goto 66
        end local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        62: .line 265
      StackMap locals:
      StackMap stack:
            iload 4 /* isFixedKey */
            ifeq 63
            getstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_1:Ljava/lang/invoke/MethodHandle;
            goto 64
      StackMap locals:
      StackMap stack:
        63: getstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_2:Ljava/lang/invoke/MethodHandle;
      StackMap locals:
      StackMap stack: java.lang.invoke.MethodHandle
        64: astore 17 /* nullGetterHandle */
        start local 17 // java.lang.invoke.MethodHandle nullGetterHandle
        65: .line 266
            aload 17 /* nullGetterHandle */
            aload 6 /* callSiteType */
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createGuardedInvocationComponentAsType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 16 /* finalNextComponent */
        end local 17 // java.lang.invoke.MethodHandle nullGetterHandle
        start local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        66: .line 269
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
            aload 13 /* binder */
            aload 14 /* invocation */
            invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bind:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
        67: .line 270
            aload 16 /* finalNextComponent */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
        68: .line 269
            invokestatic jdk.dynalink.beans.BeanLinker.matchReturnTypes:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
            astore 17 /* matchedInvocations */
        start local 17 // jdk.dynalink.beans.AbstractJavaLinker$MethodPair matchedInvocations
        69: .line 271
            aload 16 /* finalNextComponent */
            aload 17 /* matchedInvocations */
            aload 13 /* binder */
            aload 15 /* checkGuard */
            invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bindTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$MethodPair.guardWithTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            aload 12 /* gi */
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
        70: .line 272
            aload 9 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidatorClass:()Ljava/lang/Class;
            aload 9 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidationType:()Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
        71: .line 271
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.compose:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            areturn
        end local 17 // jdk.dynalink.beans.AbstractJavaLinker$MethodPair matchedInvocations
        end local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        end local 15 // java.lang.invoke.MethodHandle checkGuard
        end local 14 // java.lang.invoke.MethodHandle invocation
        end local 13 // jdk.dynalink.beans.BeanLinker$Binder binder
        end local 12 // jdk.dynalink.linker.GuardedInvocation gi
        end local 11 // java.lang.Object typedName
        end local 10 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 9 // jdk.dynalink.beans.GuardedInvocationComponent gic
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent nextComponent
        end local 7 // java.lang.Class declaredType
        end local 6 // java.lang.invoke.MethodType callSiteType
        end local 5 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 4 // boolean isFixedKey
        end local 3 // java.lang.Object name
        end local 2 // jdk.dynalink.CallSiteDescriptor callSiteDescriptor
        end local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   72     0                this  Ljdk/dynalink/beans/BeanLinker;
            0   72     1                 req  Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
            1   72     2  callSiteDescriptor  Ljdk/dynalink/CallSiteDescriptor;
            2   72     3                name  Ljava/lang/Object;
            5   72     4          isFixedKey  Z
            9   72     5      linkerServices  Ljdk/dynalink/linker/LinkerServices;
           10   72     6        callSiteType  Ljava/lang/invoke/MethodType;
           11   72     7        declaredType  Ljava/lang/Class<*>;
           12   72     8       nextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           14   16     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           18   20     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           22   24     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           26   28     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           32   34     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           38   40     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           41   72     9                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           15   16    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           19   20    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           23   24    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           27   28    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           33   34    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           39   40    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           41   72    10      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           46   47    11           typedName  Ljava/lang/Object;
           48   72    11           typedName  Ljava/lang/Object;
           43   46    12             integer  Ljava/lang/Integer;
           49   72    12                  gi  Ljdk/dynalink/linker/GuardedInvocation;
           50   72    13              binder  Ljdk/dynalink/beans/BeanLinker$Binder;
           51   72    14          invocation  Ljava/lang/invoke/MethodHandle;
           53   54    15          checkGuard  Ljava/lang/invoke/MethodHandle;
           55   56    15          checkGuard  Ljava/lang/invoke/MethodHandle;
           57   58    15          checkGuard  Ljava/lang/invoke/MethodHandle;
           59   72    15          checkGuard  Ljava/lang/invoke/MethodHandle;
           61   62    16  finalNextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           66   72    16  finalNextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           65   66    17    nullGetterHandle  Ljava/lang/invoke/MethodHandle;
           69   72    17  matchedInvocations  Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      req   final

  private static jdk.dynalink.beans.GuardedInvocationComponent createInternalFilteredGuardedInvocationComponent(java.lang.invoke.MethodHandle, jdk.dynalink.linker.LinkerServices);
    descriptor: (Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.invoke.MethodHandle invocation
        start local 1 // jdk.dynalink.linker.LinkerServices linkerServices
         0: .line 277
            new jdk.dynalink.beans.GuardedInvocationComponent
            dup
            aload 1 /* linkerServices */
            aload 0 /* invocation */
            invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;)V
            areturn
        end local 1 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 0 // java.lang.invoke.MethodHandle invocation
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      invocation  Ljava/lang/invoke/MethodHandle;
            0    1     1  linkerServices  Ljdk/dynalink/linker/LinkerServices;
    MethodParameters:
                Name  Flags
      invocation      final
      linkerServices  final

  private static jdk.dynalink.beans.GuardedInvocationComponent createGuardedInvocationComponentAsType(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType, jdk.dynalink.linker.LinkerServices);
    descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.invoke.MethodHandle invocation
        start local 1 // java.lang.invoke.MethodType fromType
        start local 2 // jdk.dynalink.linker.LinkerServices linkerServices
         0: .line 282
            new jdk.dynalink.beans.GuardedInvocationComponent
            dup
            aload 2 /* linkerServices */
            aload 0 /* invocation */
            aload 1 /* fromType */
            invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;)V
            areturn
        end local 2 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 1 // java.lang.invoke.MethodType fromType
        end local 0 // java.lang.invoke.MethodHandle invocation
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      invocation  Ljava/lang/invoke/MethodHandle;
            0    1     1        fromType  Ljava/lang/invoke/MethodType;
            0    1     2  linkerServices  Ljdk/dynalink/linker/LinkerServices;
    MethodParameters:
                Name  Flags
      invocation      final
      fromType        final
      linkerServices  final

  private static jdk.dynalink.beans.GuardedInvocationComponent createInternalFilteredGuardedInvocationComponent(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.Class<?>, jdk.dynalink.beans.GuardedInvocationComponent$ValidationType, jdk.dynalink.linker.LinkerServices);
    descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // java.lang.invoke.MethodHandle invocation
        start local 1 // java.lang.invoke.MethodHandle guard
        start local 2 // java.lang.Class validatorClass
        start local 3 // jdk.dynalink.beans.GuardedInvocationComponent$ValidationType validationType
        start local 4 // jdk.dynalink.linker.LinkerServices linkerServices
         0: .line 288
            new jdk.dynalink.beans.GuardedInvocationComponent
            dup
            aload 4 /* linkerServices */
            aload 0 /* invocation */
            invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            aload 1 /* guard */
         1: .line 289
            aload 2 /* validatorClass */
            aload 3 /* validationType */
         2: .line 288
            invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
            areturn
        end local 4 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 3 // jdk.dynalink.beans.GuardedInvocationComponent$ValidationType validationType
        end local 2 // java.lang.Class validatorClass
        end local 1 // java.lang.invoke.MethodHandle guard
        end local 0 // java.lang.invoke.MethodHandle invocation
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0      invocation  Ljava/lang/invoke/MethodHandle;
            0    3     1           guard  Ljava/lang/invoke/MethodHandle;
            0    3     2  validatorClass  Ljava/lang/Class<*>;
            0    3     3  validationType  Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
            0    3     4  linkerServices  Ljdk/dynalink/linker/LinkerServices;
    Signature: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class<*>;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    MethodParameters:
                Name  Flags
      invocation      final
      guard           final
      validatorClass  final
      validationType  final
      linkerServices  final

  private static java.lang.Integer convertKeyToInteger(java.lang.Object, jdk.dynalink.linker.LinkerServices);
    descriptor: (Ljava/lang/Object;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/Integer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.lang.Object fixedKey
        start local 1 // jdk.dynalink.linker.LinkerServices linkerServices
         0: .line 293
            aload 0 /* fixedKey */
            instanceof java.lang.Integer
            ifeq 2
         1: .line 294
            aload 0 /* fixedKey */
            checkcast java.lang.Integer
            areturn
         2: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* fixedKey */
            instanceof java.lang.Number
            ifeq 5
         3: .line 299
            aload 0 /* fixedKey */
            checkcast java.lang.Number
            astore 2 /* n */
        start local 2 // java.lang.Number n
         4: .line 300
            goto 23
        end local 2 // java.lang.Number n
         5: .line 301
      StackMap locals:
      StackMap stack:
            aload 0 /* fixedKey */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 3 /* keyClass */
        start local 3 // java.lang.Class keyClass
         6: .line 302
            aload 1 /* linkerServices */
            aload 3 /* keyClass */
            ldc Ljava/lang/Number;
            invokeinterface jdk.dynalink.linker.LinkerServices.canConvert:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 17
         7: .line 305
            aload 1 /* linkerServices */
            aload 3 /* keyClass */
            ldc Ljava/lang/Number;
            invokeinterface jdk.dynalink.linker.LinkerServices.getTypeConverter:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            aload 0 /* fixedKey */
            invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* val */
        start local 4 // java.lang.Object val
         8: .line 306
            goto 13
        end local 4 // java.lang.Object val
      StackMap locals: java.lang.Object jdk.dynalink.linker.LinkerServices top java.lang.Class
      StackMap stack: java.lang.Throwable
         9: astore 5 /* e */
        start local 5 // java.lang.Throwable e
        10: .line 307
            aload 5 /* e */
            athrow
        end local 5 // java.lang.Throwable e
        11: .line 308
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5 /* t */
        start local 5 // java.lang.Throwable t
        12: .line 309
            new java.lang.RuntimeException
            dup
            aload 5 /* t */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.lang.Throwable t
        start local 4 // java.lang.Object val
        13: .line 311
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* val */
            instanceof java.lang.Number
            ifne 15
        14: .line 312
            aconst_null
            areturn
        15: .line 314
      StackMap locals:
      StackMap stack:
            aload 4 /* val */
            checkcast java.lang.Number
            astore 2 /* n */
        end local 4 // java.lang.Object val
        start local 2 // java.lang.Number n
        16: .line 315
            goto 23
        end local 2 // java.lang.Number n
      StackMap locals:
      StackMap stack:
        17: aload 0 /* fixedKey */
            instanceof java.lang.String
            ifeq 22
        18: .line 317
            aload 0 /* fixedKey */
            checkcast java.lang.String
            invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
        19: areturn
        20: .line 318
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        21: .line 320
            aconst_null
            areturn
        22: .line 323
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.Class keyClass
        start local 2 // java.lang.Number n
        23: .line 327
      StackMap locals: java.lang.Object jdk.dynalink.linker.LinkerServices java.lang.Number
      StackMap stack:
            aload 2 /* n */
            instanceof java.lang.Integer
            ifeq 25
        24: .line 328
            aload 2 /* n */
            checkcast java.lang.Integer
            areturn
        25: .line 330
      StackMap locals:
      StackMap stack:
            aload 2 /* n */
            invokevirtual java.lang.Number.intValue:()I
            istore 3 /* intIndex */
        start local 3 // int intIndex
        26: .line 331
            aload 2 /* n */
            invokevirtual java.lang.Number.doubleValue:()D
            dstore 4 /* doubleValue */
        start local 4 // double doubleValue
        27: .line 332
            iload 3 /* intIndex */
            i2d
            dload 4 /* doubleValue */
            dcmpl
            ifeq 29
            dload 4 /* doubleValue */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifne 29
        28: .line 333
            aconst_null
            areturn
        29: .line 335
      StackMap locals: int double
      StackMap stack:
            iload 3 /* intIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        end local 4 // double doubleValue
        end local 3 // int intIndex
        end local 2 // java.lang.Number n
        end local 1 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 0 // java.lang.Object fixedKey
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   30     0        fixedKey  Ljava/lang/Object;
            0   30     1  linkerServices  Ljdk/dynalink/linker/LinkerServices;
            4    5     2               n  Ljava/lang/Number;
           16   17     2               n  Ljava/lang/Number;
           23   30     2               n  Ljava/lang/Number;
            6   23     3        keyClass  Ljava/lang/Class<*>;
            8    9     4             val  Ljava/lang/Object;
           13   16     4             val  Ljava/lang/Object;
           10   11     5               e  Ljava/lang/Throwable;
           12   13     5               t  Ljava/lang/Throwable;
           26   30     3        intIndex  I
           27   30     4     doubleValue  D
      Exception table:
        from    to  target  type
           7     8       9  Class java.lang.Exception
           7     8       9  Class java.lang.Error
           7     8      11  Class java.lang.Throwable
          18    19      20  Class java.lang.NumberFormatException
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
                Name  Flags
      fixedKey        final
      linkerServices  final

  private static java.lang.invoke.MethodHandle convertArgToNumber(java.lang.invoke.MethodHandle, jdk.dynalink.linker.LinkerServices, jdk.dynalink.CallSiteDescriptor);
    descriptor: (Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=3
        start local 0 // java.lang.invoke.MethodHandle mh
        start local 1 // jdk.dynalink.linker.LinkerServices ls
        start local 2 // jdk.dynalink.CallSiteDescriptor desc
         0: .line 339
            aload 2 /* desc */
            invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
            iconst_1
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 3 /* sourceType */
        start local 3 // java.lang.Class sourceType
         1: .line 340
            aload 3 /* sourceType */
            ldc Ljava/lang/Number;
            invokestatic jdk.dynalink.linker.support.TypeUtilities.isMethodInvocationConvertible:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 3
         2: .line 341
            aload 0 /* mh */
            areturn
         3: .line 342
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 1 /* ls */
            aload 3 /* sourceType */
            ldc Ljava/lang/Number;
            invokeinterface jdk.dynalink.linker.LinkerServices.canConvert:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 8
         4: .line 343
            aload 1 /* ls */
            aload 3 /* sourceType */
            ldc Ljava/lang/Number;
            invokeinterface jdk.dynalink.linker.LinkerServices.getTypeConverter:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            astore 4 /* converter */
        start local 4 // java.lang.invoke.MethodHandle converter
         5: .line 344
            aload 0 /* mh */
            iconst_1
            iconst_1
            anewarray java.lang.invoke.MethodHandle
            dup
            iconst_0
            aload 4 /* converter */
            aload 4 /* converter */
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
         6: .line 345
            aload 0 /* mh */
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
            iconst_1
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
         7: .line 344
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            aastore
            invokestatic java.lang.invoke.MethodHandles.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            areturn
        end local 4 // java.lang.invoke.MethodHandle converter
         8: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* mh */
            areturn
        end local 3 // java.lang.Class sourceType
        end local 2 // jdk.dynalink.CallSiteDescriptor desc
        end local 1 // jdk.dynalink.linker.LinkerServices ls
        end local 0 // java.lang.invoke.MethodHandle mh
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0          mh  Ljava/lang/invoke/MethodHandle;
            0    9     1          ls  Ljdk/dynalink/linker/LinkerServices;
            0    9     2        desc  Ljdk/dynalink/CallSiteDescriptor;
            1    9     3  sourceType  Ljava/lang/Class<*>;
            5    8     4   converter  Ljava/lang/invoke/MethodHandle;
    MethodParameters:
      Name  Flags
      mh    final
      ls    final
      desc  final

  private static java.lang.invoke.MethodHandle findRangeCheck(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // java.lang.Class collectionType
         0: .line 384
            invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
            ldc "rangeCheck"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            aload 0 /* collectionType */
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Object;
            aastore
            invokestatic jdk.dynalink.linker.support.Lookup.findOwnStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            areturn
        end local 0 // java.lang.Class collectionType
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0  collectionType  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/invoke/MethodHandle;
    MethodParameters:
                Name  Flags
      collectionType  final

  private static boolean rangeCheck(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.Object array
        start local 1 // java.lang.Object index
         0: .line 389
            aload 1 /* index */
            instanceof java.lang.Number
            ifne 2
         1: .line 390
            iconst_0
            ireturn
         2: .line 392
      StackMap locals:
      StackMap stack:
            aload 1 /* index */
            checkcast java.lang.Number
            astore 2 /* n */
        start local 2 // java.lang.Number n
         3: .line 393
            aload 2 /* n */
            invokevirtual java.lang.Number.intValue:()I
            istore 3 /* intIndex */
        start local 3 // int intIndex
         4: .line 394
            iload 3 /* intIndex */
            i2d
            aload 2 /* n */
            invokevirtual java.lang.Number.doubleValue:()D
            dcmpl
            ifeq 6
         5: .line 395
            iconst_0
            ireturn
         6: .line 397
      StackMap locals: java.lang.Number int
      StackMap stack:
            iload 3 /* intIndex */
            iflt 7
            iload 3 /* intIndex */
            aload 0 /* array */
            invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
            if_icmpge 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 3 // int intIndex
        end local 2 // java.lang.Number n
        end local 1 // java.lang.Object index
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     array  Ljava/lang/Object;
            0    8     1     index  Ljava/lang/Object;
            3    8     2         n  Ljava/lang/Number;
            4    8     3  intIndex  I
    MethodParameters:
       Name  Flags
      array  final
      index  final

  private static boolean rangeCheck(java.util.List<?>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object index
         0: .line 402
            aload 1 /* index */
            instanceof java.lang.Number
            ifne 2
         1: .line 403
            iconst_0
            ireturn
         2: .line 405
      StackMap locals:
      StackMap stack:
            aload 1 /* index */
            checkcast java.lang.Number
            astore 2 /* n */
        start local 2 // java.lang.Number n
         3: .line 406
            aload 2 /* n */
            invokevirtual java.lang.Number.intValue:()I
            istore 3 /* intIndex */
        start local 3 // int intIndex
         4: .line 407
            iload 3 /* intIndex */
            i2d
            aload 2 /* n */
            invokevirtual java.lang.Number.doubleValue:()D
            dcmpl
            ifeq 6
         5: .line 408
            iconst_0
            ireturn
         6: .line 410
      StackMap locals: java.lang.Number int
      StackMap stack:
            iload 3 /* intIndex */
            iflt 7
            iload 3 /* intIndex */
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            if_icmpge 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 3 // int intIndex
        end local 2 // java.lang.Number n
        end local 1 // java.lang.Object index
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      list  Ljava/util/List<*>;
            0    8     1     index  Ljava/lang/Object;
            3    8     2         n  Ljava/lang/Number;
            4    8     3  intIndex  I
    Signature: (Ljava/util/List<*>;Ljava/lang/Object;)Z
    MethodParameters:
       Name  Flags
      list   final
      index  final

  private static void noOpSetter();
    descriptor: ()V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 415
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private jdk.dynalink.beans.GuardedInvocationComponent getElementSetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
    descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=18, args_size=2
        start local 0 // jdk.dynalink.beans.BeanLinker this
        start local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
         0: .line 432
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
            astore 2 /* callSiteDescriptor */
        start local 2 // jdk.dynalink.CallSiteDescriptor callSiteDescriptor
         1: .line 433
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
            astore 3 /* name */
        start local 3 // java.lang.Object name
         2: .line 434
            aload 3 /* name */
            ifnull 3
            iconst_1
            goto 4
      StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.Object
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* isFixedKey */
        start local 4 // boolean isFixedKey
         5: .line 435
            aload 2 /* callSiteDescriptor */
            iload 4 /* isFixedKey */
            ifeq 6
            iconst_2
            goto 7
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
      StackMap stack: jdk.dynalink.CallSiteDescriptor
         6: iconst_3
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
      StackMap stack: jdk.dynalink.CallSiteDescriptor int
         7: invokestatic jdk.dynalink.beans.BeanLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
         8: .line 436
            aload 1 /* req */
            getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
            astore 5 /* linkerServices */
        start local 5 // jdk.dynalink.linker.LinkerServices linkerServices
         9: .line 437
            aload 2 /* callSiteDescriptor */
            invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
            astore 6 /* callSiteType */
        start local 6 // java.lang.invoke.MethodType callSiteType
        10: .line 438
            aload 6 /* callSiteType */
            iconst_0
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 7 /* declaredType */
        start local 7 // java.lang.Class declaredType
        11: .line 447
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 15
        12: .line 448
            aload 7 /* declaredType */
            invokestatic java.lang.invoke.MethodHandles.arrayElementSetter:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        13: .line 449
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        14: .line 450
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals: jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class
      StackMap stack:
        15: ldc Ljava/util/List;
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 19
        16: .line 451
            getstatic jdk.dynalink.beans.BeanLinker.SET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        17: .line 452
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        18: .line 453
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        19: ldc Ljava/util/Map;
            aload 7 /* declaredType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 23
        20: .line 454
            getstatic jdk.dynalink.beans.BeanLinker.PUT_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        21: .line 455
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        22: .line 456
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        23: aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 31
        24: .line 457
            aload 0 /* this */
            aload 5 /* linkerServices */
        25: .line 458
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodHandles.arrayElementSetter:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
        26: .line 457
            invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
        27: .line 458
            aload 6 /* callSiteType */
        28: .line 457
            invokevirtual jdk.dynalink.beans.BeanLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        29: .line 459
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        30: .line 460
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        31: ldc Ljava/util/List;
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 37
        32: .line 461
            getstatic jdk.dynalink.beans.BeanLinker.SET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.BeanLinker.LIST_GUARD:Ljava/lang/invoke/MethodHandle;
            aload 6 /* callSiteType */
            invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            ldc Ljava/util/List;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
        33: .line 462
            aload 5 /* linkerServices */
        34: .line 461
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        35: .line 463
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        36: .line 464
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
      StackMap locals:
      StackMap stack:
        37: ldc Ljava/util/Map;
            aload 0 /* this */
            getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 43
        38: .line 465
            getstatic jdk.dynalink.beans.BeanLinker.PUT_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
            getstatic jdk.dynalink.beans.BeanLinker.MAP_GUARD:Ljava/lang/invoke/MethodHandle;
            aload 6 /* callSiteType */
            invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
        39: .line 466
            ldc Ljava/util/Map;
            getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
            aload 5 /* linkerServices */
        40: .line 465
            invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        41: .line 467
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        42: .line 468
            goto 45
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        43: .line 470
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* gic */
        start local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        44: .line 471
            aconst_null
            astore 9 /* collectionType */
        start local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        45: .line 477
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType
      StackMap stack:
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpne 46
            aconst_null
            goto 47
      StackMap locals:
      StackMap stack:
        46: aload 0 /* this */
            aload 1 /* req */
            invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
      StackMap locals:
      StackMap stack: jdk.dynalink.beans.GuardedInvocationComponent
        47: astore 10 /* nextComponent */
        start local 10 // jdk.dynalink.beans.GuardedInvocationComponent nextComponent
        48: .line 478
            aload 8 /* gic */
            ifnonnull 50
        49: .line 479
            aload 10 /* nextComponent */
            areturn
        50: .line 484
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpeq 56
            iload 4 /* isFixedKey */
            ifeq 56
        51: .line 485
            aload 3 /* name */
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.convertKeyToInteger:(Ljava/lang/Object;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/Integer;
            astore 12 /* integer */
        start local 12 // java.lang.Integer integer
        52: .line 486
            aload 12 /* integer */
            ifnull 53
            aload 12 /* integer */
            invokevirtual java.lang.Integer.intValue:()I
            ifge 54
        53: .line 489
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType jdk.dynalink.beans.GuardedInvocationComponent top java.lang.Integer
      StackMap stack:
            aload 10 /* nextComponent */
            areturn
        54: .line 491
      StackMap locals:
      StackMap stack:
            aload 12 /* integer */
            astore 11 /* typedName */
        end local 12 // java.lang.Integer integer
        start local 11 // java.lang.Object typedName
        55: .line 492
            goto 57
        end local 11 // java.lang.Object typedName
        56: .line 493
      StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.Class jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$CollectionType jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
            aload 3 /* name */
            astore 11 /* typedName */
        start local 11 // java.lang.Object typedName
        57: .line 496
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 8 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
            astore 12 /* gi */
        start local 12 // jdk.dynalink.linker.GuardedInvocation gi
        58: .line 497
            new jdk.dynalink.beans.BeanLinker$Binder
            dup
            aload 5 /* linkerServices */
            aload 6 /* callSiteType */
            aload 11 /* typedName */
            invokespecial jdk.dynalink.beans.BeanLinker$Binder.<init>:(Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)V
            astore 13 /* binder */
        start local 13 // jdk.dynalink.beans.BeanLinker$Binder binder
        59: .line 498
            aload 12 /* gi */
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
            astore 14 /* invocation */
        start local 14 // java.lang.invoke.MethodHandle invocation
        60: .line 500
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpne 63
        61: .line 501
            getstatic jdk.dynalink.beans.BeanLinker.$assertionsDisabled:Z
            ifne 62
            aload 10 /* nextComponent */
            ifnull 62
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        62: .line 502
      StackMap locals: jdk.dynalink.linker.GuardedInvocation jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
      StackMap stack:
            aload 8 /* gic */
            aload 13 /* binder */
            aload 14 /* invocation */
            invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bind:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.replaceInvocation:(Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            areturn
        63: .line 505
      StackMap locals:
      StackMap stack:
            getstatic jdk.dynalink.beans.BeanLinker.$assertionsDisabled:Z
            ifne 64
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpeq 64
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpeq 64
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        64: .line 506
      StackMap locals:
      StackMap stack:
            aload 9 /* collectionType */
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            if_acmpne 65
            getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_LIST:Ljava/lang/invoke/MethodHandle;
            goto 66
        65: .line 507
      StackMap locals:
      StackMap stack:
            getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_ARRAY:Ljava/lang/invoke/MethodHandle;
      StackMap locals:
      StackMap stack: java.lang.invoke.MethodHandle
        66: aload 5 /* linkerServices */
            aload 2 /* callSiteDescriptor */
        67: .line 506
            invokestatic jdk.dynalink.beans.BeanLinker.convertArgToNumber:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
            astore 15 /* checkGuard */
        start local 15 // java.lang.invoke.MethodHandle checkGuard
        68: .line 511
            aload 10 /* nextComponent */
            ifnull 71
        69: .line 512
            aload 10 /* nextComponent */
            astore 16 /* finalNextComponent */
        start local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        70: .line 513
            goto 75
        end local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        71: .line 514
      StackMap locals: java.lang.invoke.MethodHandle
      StackMap stack:
            iload 4 /* isFixedKey */
            ifeq 72
            getstatic jdk.dynalink.beans.BeanLinker.NO_OP_SETTER_2:Ljava/lang/invoke/MethodHandle;
            goto 73
      StackMap locals:
      StackMap stack:
        72: getstatic jdk.dynalink.beans.BeanLinker.NO_OP_SETTER_3:Ljava/lang/invoke/MethodHandle;
      StackMap locals:
      StackMap stack: java.lang.invoke.MethodHandle
        73: astore 17 /* noOpSetterHandle */
        start local 17 // java.lang.invoke.MethodHandle noOpSetterHandle
        74: .line 515
            aload 17 /* noOpSetterHandle */
            aload 6 /* callSiteType */
            aload 5 /* linkerServices */
            invokestatic jdk.dynalink.beans.BeanLinker.createGuardedInvocationComponentAsType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            astore 16 /* finalNextComponent */
        end local 17 // java.lang.invoke.MethodHandle noOpSetterHandle
        start local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        75: .line 518
      StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
      StackMap stack:
            aload 13 /* binder */
            aload 14 /* invocation */
            invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bind:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
        76: .line 519
            aload 16 /* finalNextComponent */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
        77: .line 518
            invokestatic jdk.dynalink.beans.BeanLinker.matchReturnTypes:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
            astore 17 /* matchedInvocations */
        start local 17 // jdk.dynalink.beans.AbstractJavaLinker$MethodPair matchedInvocations
        78: .line 520
            aload 16 /* finalNextComponent */
            aload 17 /* matchedInvocations */
            aload 13 /* binder */
            aload 15 /* checkGuard */
            invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bindTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            invokevirtual jdk.dynalink.beans.AbstractJavaLinker$MethodPair.guardWithTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
            aload 12 /* gi */
            invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
        79: .line 521
            aload 8 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidatorClass:()Ljava/lang/Class;
            aload 8 /* gic */
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidationType:()Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
        80: .line 520
            invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.compose:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
            areturn
        end local 17 // jdk.dynalink.beans.AbstractJavaLinker$MethodPair matchedInvocations
        end local 16 // jdk.dynalink.beans.GuardedInvocationComponent finalNextComponent
        end local 15 // java.lang.invoke.MethodHandle checkGuard
        end local 14 // java.lang.invoke.MethodHandle invocation
        end local 13 // jdk.dynalink.beans.BeanLinker$Binder binder
        end local 12 // jdk.dynalink.linker.GuardedInvocation gi
        end local 11 // java.lang.Object typedName
        end local 10 // jdk.dynalink.beans.GuardedInvocationComponent nextComponent
        end local 9 // jdk.dynalink.beans.BeanLinker$CollectionType collectionType
        end local 8 // jdk.dynalink.beans.GuardedInvocationComponent gic
        end local 7 // java.lang.Class declaredType
        end local 6 // java.lang.invoke.MethodType callSiteType
        end local 5 // jdk.dynalink.linker.LinkerServices linkerServices
        end local 4 // boolean isFixedKey
        end local 3 // java.lang.Object name
        end local 2 // jdk.dynalink.CallSiteDescriptor callSiteDescriptor
        end local 1 // jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest req
        end local 0 // jdk.dynalink.beans.BeanLinker this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   81     0                this  Ljdk/dynalink/beans/BeanLinker;
            0   81     1                 req  Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
            1   81     2  callSiteDescriptor  Ljdk/dynalink/CallSiteDescriptor;
            2   81     3                name  Ljava/lang/Object;
            5   81     4          isFixedKey  Z
            9   81     5      linkerServices  Ljdk/dynalink/linker/LinkerServices;
           10   81     6        callSiteType  Ljava/lang/invoke/MethodType;
           11   81     7        declaredType  Ljava/lang/Class<*>;
           13   15     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           17   19     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           21   23     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           29   31     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           35   37     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           41   43     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           44   81     8                 gic  Ljdk/dynalink/beans/GuardedInvocationComponent;
           14   15     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           18   19     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           22   23     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           30   31     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           36   37     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           42   43     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           45   81     9      collectionType  Ljdk/dynalink/beans/BeanLinker$CollectionType;
           48   81    10       nextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           55   56    11           typedName  Ljava/lang/Object;
           57   81    11           typedName  Ljava/lang/Object;
           52   55    12             integer  Ljava/lang/Integer;
           58   81    12                  gi  Ljdk/dynalink/linker/GuardedInvocation;
           59   81    13              binder  Ljdk/dynalink/beans/BeanLinker$Binder;
           60   81    14          invocation  Ljava/lang/invoke/MethodHandle;
           68   81    15          checkGuard  Ljava/lang/invoke/MethodHandle;
           70   71    16  finalNextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           75   81    16  finalNextComponent  Ljdk/dynalink/beans/GuardedInvocationComponent;
           74   75    17    noOpSetterHandle  Ljava/lang/invoke/MethodHandle;
           78   81    17  matchedInvocations  Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      req   final

  private static void assertParameterCount(jdk.dynalink.CallSiteDescriptor, int);
    descriptor: (Ljdk/dynalink/CallSiteDescriptor;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.dynalink.CallSiteDescriptor descriptor
        start local 1 // int paramCount
         0: .line 531
            aload 0 /* descriptor */
            invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iload 1 /* paramCount */
            if_icmpeq 2
         1: .line 532
            new java.lang.BootstrapMethodError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* descriptor */
            invokevirtual jdk.dynalink.CallSiteDescriptor.getOperation:()Ljdk/dynalink/Operation;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " must have exactly "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* paramCount */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " parameters."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.BootstrapMethodError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 534
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int paramCount
        end local 0 // jdk.dynalink.CallSiteDescriptor descriptor
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  descriptor  Ljdk/dynalink/CallSiteDescriptor;
            0    3     1  paramCount  I
    MethodParameters:
            Name  Flags
      descriptor  final
      paramCount  final

  static int[] $SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 111
            getstatic jdk.dynalink.beans.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.dynalink.beans.BeanLinker$CollectionType.values:()[Ljdk/dynalink/beans/BeanLinker$CollectionType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.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 jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.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 jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
            invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic jdk.dynalink.beans.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:[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
}
SourceFile: "BeanLinker.java"
NestMembers:
  jdk.dynalink.beans.BeanLinker$Binder  jdk.dynalink.beans.BeanLinker$CollectionType
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  final ComponentLinkRequest = jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest of jdk.dynalink.beans.AbstractJavaLinker
  MethodPair = jdk.dynalink.beans.AbstractJavaLinker$MethodPair of jdk.dynalink.beans.AbstractJavaLinker
  private Binder = jdk.dynalink.beans.BeanLinker$Binder of jdk.dynalink.beans.BeanLinker
  private final CollectionType = jdk.dynalink.beans.BeanLinker$CollectionType of jdk.dynalink.beans.BeanLinker
  final ValidationType = jdk.dynalink.beans.GuardedInvocationComponent$ValidationType of jdk.dynalink.beans.GuardedInvocationComponent