public class org.glassfish.gmbal.impl.AttributeDescriptor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.glassfish.gmbal.impl.AttributeDescriptor
  super_class: java.lang.Object
{
  private org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration _decl;
    descriptor: Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.glassfish.pfl.basic.algorithm.DumpToString()

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

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

  private org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType _atype;
    descriptor: Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
    flags: (0x0002) ACC_PRIVATE

  private org.glassfish.gmbal.typelib.EvaluatedType _type;
    descriptor: Lorg/glassfish/gmbal/typelib/EvaluatedType;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.glassfish.pfl.basic.algorithm.DumpToString()

  private org.glassfish.gmbal.impl.TypeConverter _tc;
    descriptor: Lorg/glassfish/gmbal/impl/TypeConverter;
    flags: (0x0002) ACC_PRIVATE

  private static final java.security.Permission accessControlPermission;
    descriptor: Ljava/security/Permission;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 47
            new java.lang.reflect.ReflectPermission
            dup
            ldc "suppressAccessChecks"
            invokespecial java.lang.reflect.ReflectPermission.<init>:(Ljava/lang/String;)V
         1: .line 46
            putstatic org.glassfish.gmbal.impl.AttributeDescriptor.accessControlPermission:Ljava/security/Permission;
         2: .line 47
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(org.glassfish.gmbal.impl.ManagedObjectManagerInternal, org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration, java.lang.String, java.lang.String, org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType, org.glassfish.gmbal.typelib.EvaluatedType);
    descriptor: (Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
        start local 1 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
        start local 2 // org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration decl
        start local 3 // java.lang.String id
        start local 4 // java.lang.String description
        start local 5 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType atype
        start local 6 // org.glassfish.gmbal.typelib.EvaluatedType type
         0: .line 49
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 54
            aload 0 /* this */
         2: .line 55
            new org.glassfish.gmbal.impl.AttributeDescriptor$1
            dup
            aload 0 /* this */
            aload 2 /* decl */
            invokespecial org.glassfish.gmbal.impl.AttributeDescriptor$1.<init>:(Lorg/glassfish/gmbal/impl/AttributeDescriptor;Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;)V
         3: .line 54
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
         4: .line 63
            aload 0 /* this */
            aload 3 /* id */
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._id:Ljava/lang/String;
         5: .line 64
            aload 0 /* this */
            aload 4 /* description */
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._description:Ljava/lang/String;
         6: .line 65
            aload 0 /* this */
            aload 5 /* atype */
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._atype:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
         7: .line 66
            aload 0 /* this */
            aload 6 /* type */
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._type:Lorg/glassfish/gmbal/typelib/EvaluatedType;
         8: .line 67
            aload 0 /* this */
            aload 1 /* mom */
            aload 6 /* type */
            invokeinterface org.glassfish.gmbal.impl.ManagedObjectManagerInternal.getTypeConverter:(Lorg/glassfish/gmbal/typelib/EvaluatedType;)Lorg/glassfish/gmbal/impl/TypeConverter;
            putfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
         9: .line 68
            return
        end local 6 // org.glassfish.gmbal.typelib.EvaluatedType type
        end local 5 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType atype
        end local 4 // java.lang.String description
        end local 3 // java.lang.String id
        end local 2 // org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration decl
        end local 1 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            0   10     1          mom  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;
            0   10     2         decl  Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            0   10     3           id  Ljava/lang/String;
            0   10     4  description  Ljava/lang/String;
            0   10     5        atype  Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            0   10     6         type  Lorg/glassfish/gmbal/typelib/EvaluatedType;
    MethodParameters:
             Name  Flags
      mom          final
      decl         final
      id           final
      description  final
      atype        final
      type         final

  public final java.lang.reflect.AccessibleObject accessible();
    descriptor: ()Ljava/lang/reflect/AccessibleObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 70
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration.accessible:()Ljava/lang/reflect/AccessibleObject;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public final java.lang.String id();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 72
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._id:Ljava/lang/String;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public final java.lang.String description();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 74
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._description:Ljava/lang/String;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public final org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType atype();
    descriptor: ()Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 76
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._atype:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public final org.glassfish.gmbal.typelib.EvaluatedType type();
    descriptor: ()Lorg/glassfish/gmbal/typelib/EvaluatedType;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 78
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._type:Lorg/glassfish/gmbal/typelib/EvaluatedType;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public final org.glassfish.gmbal.impl.TypeConverter tc();
    descriptor: ()Lorg/glassfish/gmbal/impl/TypeConverter;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
         0: .line 80
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
            areturn
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;

  public boolean isApplicable(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
        start local 1 // java.lang.Object obj
         0: .line 83
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            ifeq 3
         1: .line 84
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            astore 2 /* em */
        start local 2 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         2: .line 85
            aload 2 /* em */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.method:()Ljava/lang/reflect/Method;
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            aload 1 /* obj */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         3: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            ifeq 6
         4: .line 87
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            astore 2 /* ef */
        start local 2 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         5: .line 88
            aload 2 /* ef */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.field:()Ljava/lang/reflect/Field;
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            aload 1 /* obj */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         6: .line 91
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            0    7     1   obj  Ljava/lang/Object;
            2    3     2    em  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            5    6     2    ef  Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
    MethodParameters:
      Name  Flags
      obj   

  private void checkType(org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType);
    descriptor: (Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
        start local 1 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType at
         0: .line 95
            aload 1 /* at */
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._atype:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            if_acmpeq 2
         1: .line 96
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* at */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.excForCheckType:(Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;)Lorg/glassfish/gmbal/GmbalException;
            athrow
         2: .line 98
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType at
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            0    3     1    at  Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
    MethodParameters:
      Name  Flags
      at    

  public java.lang.Object get(org.glassfish.pfl.basic.facet.FacetAccessor);
    descriptor: (Lorg/glassfish/pfl/basic/facet/FacetAccessor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
        start local 1 // org.glassfish.pfl.basic.facet.FacetAccessor fa
         0: .line 104
            aload 0 /* this */
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.GETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            invokevirtual org.glassfish.gmbal.impl.AttributeDescriptor.checkType:(Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;)V
         1: .line 106
            aconst_null
            astore 2 /* result */
        start local 2 // java.lang.Object result
         2: .line 108
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            ifeq 6
         3: .line 109
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            astore 3 /* em */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         4: .line 110
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 1 /* fa */
            aload 3 /* em */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.method:()Ljava/lang/reflect/Method;
            iconst_0
            anewarray java.lang.Object
            invokeinterface org.glassfish.pfl.basic.facet.FacetAccessor.invoke:(Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.toManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* result */
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         5: .line 111
            goto 11
      StackMap locals: java.lang.Object
      StackMap stack:
         6: aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            ifeq 10
         7: .line 112
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            astore 3 /* ef */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         8: .line 113
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 1 /* fa */
            aload 3 /* ef */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.field:()Ljava/lang/reflect/Field;
            invokeinterface org.glassfish.pfl.basic.facet.FacetAccessor.get:(Ljava/lang/reflect/Field;)Ljava/lang/Object;
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.toManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* result */
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         9: .line 114
            goto 11
        10: .line 115
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            invokeinterface org.glassfish.gmbal.impl.Exceptions.unknownDeclarationType:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Ljava/lang/IllegalArgumentException;
            pop
        11: .line 118
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // java.lang.Object result
        end local 1 // org.glassfish.pfl.basic.facet.FacetAccessor fa
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            0   12     1      fa  Lorg/glassfish/pfl/basic/facet/FacetAccessor;
            2   12     2  result  Ljava/lang/Object;
            4    5     3      em  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            8    9     3      ef  Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
    Exceptions:
      throws javax.management.MBeanException, javax.management.ReflectionException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRuntime()
    MethodParameters:
      Name  Flags
      fa    

  public void set(org.glassfish.pfl.basic.facet.FacetAccessor, java.lang.Object);
    descriptor: (Lorg/glassfish/pfl/basic/facet/FacetAccessor;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
        start local 1 // org.glassfish.pfl.basic.facet.FacetAccessor target
        start local 2 // java.lang.Object value
         0: .line 125
            aload 0 /* this */
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.SETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            invokevirtual org.glassfish.gmbal.impl.AttributeDescriptor.checkType:(Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;)V
         1: .line 127
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            ifeq 6
         2: .line 129
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
         3: .line 128
            astore 3 /* em */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         4: .line 130
            aload 1 /* target */
            aload 3 /* em */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.method:()Ljava/lang/reflect/Method;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 2 /* value */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.fromManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
            aastore
            invokeinterface org.glassfish.pfl.basic.facet.FacetAccessor.invoke:(Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration em
         5: .line 131
            goto 11
      StackMap locals:
      StackMap stack:
         6: aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            instanceof org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            ifeq 10
         7: .line 132
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            checkcast org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            astore 3 /* ef */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         8: .line 133
            aload 1 /* target */
            aload 3 /* ef */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.field:()Ljava/lang/reflect/Field;
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._tc:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 2 /* value */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.fromManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface org.glassfish.pfl.basic.facet.FacetAccessor.set:(Ljava/lang/reflect/Field;Ljava/lang/Object;)V
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration ef
         9: .line 134
            goto 11
        10: .line 135
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.AttributeDescriptor._decl:Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            invokeinterface org.glassfish.gmbal.impl.Exceptions.unknownDeclarationType:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Ljava/lang/IllegalArgumentException;
            pop
        11: .line 137
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object value
        end local 1 // org.glassfish.pfl.basic.facet.FacetAccessor target
        end local 0 // org.glassfish.gmbal.impl.AttributeDescriptor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            0   12     1  target  Lorg/glassfish/pfl/basic/facet/FacetAccessor;
            0   12     2   value  Ljava/lang/Object;
            4    5     3      em  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            8    9     3      ef  Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
    Exceptions:
      throws javax.management.MBeanException, javax.management.ReflectionException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRuntime()
    MethodParameters:
        Name  Flags
      target  
      value   

  private static boolean startsWithNotEquals(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.String str
        start local 1 // java.lang.String prefix
         0: .line 145
            aload 0 /* str */
            aload 1 /* prefix */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            aload 0 /* str */
            aload 1 /* prefix */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String prefix
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0     str  Ljava/lang/String;
            0    2     1  prefix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      str     
      prefix  

  private static java.lang.String stripPrefix(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.String str
        start local 1 // java.lang.String prefix
         0: .line 149
            aload 0 /* str */
            aload 1 /* prefix */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String prefix
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0     str  Ljava/lang/String;
            0    1     1  prefix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      str     
      prefix  

  private static java.lang.String lowerInitialCharacter(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String arg
         0: .line 164
            aload 0 /* arg */
            ifnull 1
            aload 0 /* arg */
            invokevirtual java.lang.String.length:()I
            ifne 2
         1: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* arg */
            areturn
         2: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* arg */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toLowerCase:(C)C
            istore 1 /* initChar */
        start local 1 // char initChar
         3: .line 169
            aload 0 /* arg */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* rest */
        start local 2 // java.lang.String rest
         4: .line 170
            new java.lang.StringBuilder
            dup
            iload 1 /* initChar */
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* rest */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.String rest
        end local 1 // char initChar
        end local 0 // java.lang.String arg
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0       arg  Ljava/lang/String;
            3    5     1  initChar  C
            4    5     2      rest  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   final

  private static java.lang.String getDerivedId(java.lang.String, org.glassfish.pfl.basic.contain.Pair<org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType, org.glassfish.gmbal.typelib.EvaluatedType>, org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType);
    descriptor: (Ljava/lang/String;Lorg/glassfish/pfl/basic/contain/Pair;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.lang.String methodName
        start local 1 // org.glassfish.pfl.basic.contain.Pair ainfo
        start local 2 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
         0: .line 177
            aload 0 /* methodName */
            astore 3 /* result */
        start local 3 // java.lang.String result
         1: .line 178
            aload 2 /* adt */
         2: .line 180
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType.COMPOSITE_DATA_ATTR:Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
         3: .line 178
            if_acmpne 4
            iconst_1
            goto 5
      StackMap locals: java.lang.String
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* needLowerCase */
        start local 4 // boolean needLowerCase
         6: .line 182
            aload 1 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.first:()Ljava/lang/Object;
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.GETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            if_acmpne 18
         7: .line 183
            aload 0 /* methodName */
            ldc "get"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.startsWithNotEquals:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 12
         8: .line 184
            aload 0 /* methodName */
            ldc "get"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.stripPrefix:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
         9: .line 185
            iload 4 /* needLowerCase */
            ifeq 22
        10: .line 186
            aload 3 /* result */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.lowerInitialCharacter:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        11: .line 188
            goto 22
      StackMap locals: int
      StackMap stack:
        12: aload 1 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.second:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedType
            getstatic org.glassfish.gmbal.typelib.EvaluatedType.EBOOLEAN:Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 22
        13: .line 189
            aload 0 /* methodName */
            ldc "is"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.startsWithNotEquals:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 22
        14: .line 190
            aload 0 /* methodName */
            ldc "is"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.stripPrefix:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        15: .line 191
            iload 4 /* needLowerCase */
            ifeq 22
        16: .line 192
            aload 3 /* result */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.lowerInitialCharacter:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        17: .line 195
            goto 22
        18: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* methodName */
            ldc "set"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.startsWithNotEquals:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 22
        19: .line 197
            aload 0 /* methodName */
            ldc "set"
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.stripPrefix:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        20: .line 198
            iload 4 /* needLowerCase */
            ifeq 22
        21: .line 199
            aload 3 /* result */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.lowerInitialCharacter:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        22: .line 204
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 4 // boolean needLowerCase
        end local 3 // java.lang.String result
        end local 2 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
        end local 1 // org.glassfish.pfl.basic.contain.Pair ainfo
        end local 0 // java.lang.String methodName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0     methodName  Ljava/lang/String;
            0   23     1          ainfo  Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
            0   23     2            adt  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
            1   23     3         result  Ljava/lang/String;
            6   23     4  needLowerCase  Z
    Signature: (Ljava/lang/String;Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Ljava/lang/String;
    MethodParameters:
            Name  Flags
      methodName  
      ainfo       final
      adt         final

  private static org.glassfish.pfl.basic.contain.Pair<org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType, org.glassfish.gmbal.typelib.EvaluatedType> getTypeInfo(org.glassfish.gmbal.typelib.EvaluatedDeclaration);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Lorg/glassfish/pfl/basic/contain/Pair;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.glassfish.gmbal.typelib.EvaluatedDeclaration decl
         0: .line 210
            aconst_null
            astore 1 /* evalType */
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedType evalType
         1: .line 211
            aconst_null
            astore 2 /* atype */
        start local 2 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType atype
         2: .line 212
            aload 0 /* decl */
            instanceof org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
            ifeq 17
         3: .line 214
            aload 0 /* decl */
            checkcast org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
         4: .line 213
            astore 3 /* method */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
         5: .line 216
            aload 3 /* method */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.parameterTypes:()Ljava/util/List;
            astore 4 /* atypes */
        start local 4 // java.util.List atypes
         6: .line 218
            aload 3 /* method */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.returnType:()Lorg/glassfish/gmbal/typelib/EvaluatedType;
            getstatic org.glassfish.gmbal.typelib.EvaluatedType.EVOID:Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 12
         7: .line 219
            aload 4 /* atypes */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpeq 9
         8: .line 220
            aconst_null
            areturn
         9: .line 223
      StackMap locals: org.glassfish.gmbal.typelib.EvaluatedDeclaration org.glassfish.gmbal.typelib.EvaluatedType org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration java.util.List
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.SETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            astore 2 /* atype */
        10: .line 224
            aload 4 /* atypes */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedType
            astore 1 /* evalType */
        11: .line 225
            goto 23
        12: .line 226
      StackMap locals:
      StackMap stack:
            aload 4 /* atypes */
            invokeinterface java.util.List.size:()I
            ifeq 14
        13: .line 227
            aconst_null
            areturn
        14: .line 230
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.GETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            astore 2 /* atype */
        15: .line 231
            aload 3 /* method */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.returnType:()Lorg/glassfish/gmbal/typelib/EvaluatedType;
            astore 1 /* evalType */
        end local 4 // java.util.List atypes
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
        16: .line 233
            goto 23
      StackMap locals:
      StackMap stack:
        17: aload 0 /* decl */
            instanceof org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            ifeq 22
        18: .line 234
            aload 0 /* decl */
            checkcast org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
            astore 3 /* field */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration field
        19: .line 236
            aload 3 /* field */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.fieldType:()Lorg/glassfish/gmbal/typelib/EvaluatedType;
            astore 1 /* evalType */
        20: .line 237
            getstatic org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType.GETTER:Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            astore 2 /* atype */
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration field
        21: .line 238
            goto 23
        22: .line 239
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 0 /* decl */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.unknownDeclarationType:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Ljava/lang/IllegalArgumentException;
            pop
        23: .line 242
      StackMap locals:
      StackMap stack:
            new org.glassfish.pfl.basic.contain.Pair
            dup
            aload 2 /* atype */
            aload 1 /* evalType */
            invokespecial org.glassfish.pfl.basic.contain.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 2 // org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType atype
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedType evalType
        end local 0 // org.glassfish.gmbal.typelib.EvaluatedDeclaration decl
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0      decl  Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;
            1   24     1  evalType  Lorg/glassfish/gmbal/typelib/EvaluatedType;
            2   24     2     atype  Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;
            5   16     3    method  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            6   16     4    atypes  Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
           19   21     3     field  Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
    Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
    MethodParameters:
      Name  Flags
      decl  

  private static boolean empty(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String arg
         0: .line 246
            aload 0 /* arg */
            ifnull 1
            aload 0 /* arg */
            invokevirtual java.lang.String.length:()I
            ifeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // java.lang.String arg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   arg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   

  public static org.glassfish.gmbal.impl.AttributeDescriptor makeFromInherited(org.glassfish.gmbal.impl.ManagedObjectManagerInternal, org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration, java.lang.String, java.lang.String, java.lang.String, org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType);
    descriptor: (Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/gmbal/impl/AttributeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=9, args_size=6
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
        start local 2 // java.lang.String id
        start local 3 // java.lang.String methodName
        start local 4 // java.lang.String description
        start local 5 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
         0: .line 258
            aload 3 /* methodName */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.empty:(Ljava/lang/String;)Z
            ifeq 2
            aload 2 /* id */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.empty:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 259
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            invokeinterface org.glassfish.gmbal.impl.Exceptions.excForMakeFromInherited:()Ljava/lang/IllegalArgumentException;
            athrow
         2: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.getTypeInfo:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Lorg/glassfish/pfl/basic/contain/Pair;
            astore 6 /* ainfo */
        start local 6 // org.glassfish.pfl.basic.contain.Pair ainfo
         3: .line 263
            aload 6 /* ainfo */
            ifnonnull 5
         4: .line 264
            aconst_null
            areturn
         5: .line 267
      StackMap locals: org.glassfish.pfl.basic.contain.Pair
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.name:()Ljava/lang/String;
            aload 6 /* ainfo */
            aload 5 /* adt */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.getDerivedId:(Ljava/lang/String;Lorg/glassfish/pfl/basic/contain/Pair;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Ljava/lang/String;
            astore 7 /* derivedId */
        start local 7 // java.lang.String derivedId
         6: .line 269
            aload 3 /* methodName */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.empty:(Ljava/lang/String;)Z
            ifeq 9
         7: .line 270
            aload 7 /* derivedId */
            aload 2 /* id */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
         8: .line 271
            aconst_null
            areturn
         9: .line 273
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* methodName */
            aload 1 /* method */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration.name:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 274
            aconst_null
            areturn
        11: .line 277
      StackMap locals:
      StackMap stack:
            aload 2 /* id */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.empty:(Ljava/lang/String;)Z
            ifeq 12
            aload 7 /* derivedId */
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2 /* id */
      StackMap locals:
      StackMap stack: java.lang.String
        13: astore 8 /* actualId */
        start local 8 // java.lang.String actualId
        14: .line 279
            new org.glassfish.gmbal.impl.AttributeDescriptor
            dup
            aload 0 /* mom */
            aload 1 /* method */
            aload 8 /* actualId */
            aload 4 /* description */
        15: .line 280
            aload 6 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.first:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType
            aload 6 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.second:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedType
        16: .line 279
            invokespecial org.glassfish.gmbal.impl.AttributeDescriptor.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
            areturn
        end local 8 // java.lang.String actualId
        end local 7 // java.lang.String derivedId
        end local 6 // org.glassfish.pfl.basic.contain.Pair ainfo
        end local 5 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
        end local 4 // java.lang.String description
        end local 3 // java.lang.String methodName
        end local 2 // java.lang.String id
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0          mom  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;
            0   17     1       method  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            0   17     2           id  Ljava/lang/String;
            0   17     3   methodName  Ljava/lang/String;
            0   17     4  description  Ljava/lang/String;
            0   17     5          adt  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
            3   17     6        ainfo  Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
            6   17     7    derivedId  Ljava/lang/String;
           14   17     8     actualId  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      mom          final
      method       final
      id           final
      methodName   final
      description  final
      adt          final

  public static org.glassfish.gmbal.impl.AttributeDescriptor makeFromAnnotated(org.glassfish.gmbal.impl.ManagedObjectManagerInternal, org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration, java.lang.String, java.lang.String, org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType);
    descriptor: (Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/gmbal/impl/AttributeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=7, args_size=5
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration decl
        start local 2 // java.lang.String extId
        start local 3 // java.lang.String description
        start local 4 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
         0: .line 294
            aload 1 /* decl */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.getTypeInfo:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Lorg/glassfish/pfl/basic/contain/Pair;
            astore 5 /* ainfo */
        start local 5 // org.glassfish.pfl.basic.contain.Pair ainfo
         1: .line 295
            aload 5 /* ainfo */
            ifnonnull 3
         2: .line 296
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* decl */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.excForMakeFromAnnotated:(Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Ljava/lang/IllegalArgumentException;
            athrow
         3: .line 299
      StackMap locals: org.glassfish.pfl.basic.contain.Pair
      StackMap stack:
            aload 2 /* extId */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.empty:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 300
            aload 1 /* decl */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration.name:()Ljava/lang/String;
            aload 5 /* ainfo */
            aload 4 /* adt */
            invokestatic org.glassfish.gmbal.impl.AttributeDescriptor.getDerivedId:(Ljava/lang/String;Lorg/glassfish/pfl/basic/contain/Pair;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Ljava/lang/String;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 2 /* extId */
         6: .line 299
      StackMap locals:
      StackMap stack: java.lang.String
            astore 6 /* actualId */
        start local 6 // java.lang.String actualId
         7: .line 302
            aload 0 /* mom */
            aload 6 /* actualId */
            invokeinterface org.glassfish.gmbal.impl.ManagedObjectManagerInternal.isAMXAttributeName:(Ljava/lang/String;)Z
            ifeq 11
         8: .line 303
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
         9: .line 304
            aload 6 /* actualId */
            aload 1 /* decl */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration.name:()Ljava/lang/String;
            aload 1 /* decl */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration.containingClass:()Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.name:()Ljava/lang/String;
        10: .line 303
            invokeinterface org.glassfish.gmbal.impl.Exceptions.duplicateAMXFieldName:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
        11: .line 307
      StackMap locals: java.lang.String
      StackMap stack:
            new org.glassfish.gmbal.impl.AttributeDescriptor
            dup
            aload 0 /* mom */
            aload 1 /* decl */
            aload 6 /* actualId */
            aload 3 /* description */
        12: .line 308
            aload 5 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.first:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType
            aload 5 /* ainfo */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.second:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedType
        13: .line 307
            invokespecial org.glassfish.gmbal.impl.AttributeDescriptor.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;Ljava/lang/String;Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
            areturn
        end local 6 // java.lang.String actualId
        end local 5 // org.glassfish.pfl.basic.contain.Pair ainfo
        end local 4 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
        end local 3 // java.lang.String description
        end local 2 // java.lang.String extId
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedAccessibleDeclaration decl
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal mom
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0          mom  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;
            0   14     1         decl  Lorg/glassfish/gmbal/typelib/EvaluatedAccessibleDeclaration;
            0   14     2        extId  Ljava/lang/String;
            0   14     3  description  Ljava/lang/String;
            0   14     4          adt  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
            1   14     5        ainfo  Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/impl/AttributeDescriptor$AttributeType;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
            7   14     6     actualId  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      mom          final
      decl         final
      extId        final
      description  final
      adt          final
}
SourceFile: "AttributeDescriptor.java"
NestMembers:
  org.glassfish.gmbal.impl.AttributeDescriptor$1  org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType
InnerClasses:
  org.glassfish.gmbal.impl.AttributeDescriptor$1
  public final AttributeType = org.glassfish.gmbal.impl.AttributeDescriptor$AttributeType of org.glassfish.gmbal.impl.AttributeDescriptor
  public final AttributeDescriptorType = org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType of org.glassfish.gmbal.impl.ManagedObjectManagerInternal