public abstract class org.hibernate.metamodel.internal.AbstractIdentifiableType<X> extends org.hibernate.metamodel.internal.AbstractManagedType<X> implements javax.persistence.metamodel.IdentifiableType<X>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.metamodel.internal.AbstractIdentifiableType
  super_class: org.hibernate.metamodel.internal.AbstractManagedType
{
  private final boolean hasIdentifierProperty;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean hasIdClass;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.hibernate.metamodel.internal.SingularAttributeImpl<X, ?> id;
    descriptor: Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/hibernate/metamodel/internal/SingularAttributeImpl<TX;*>;

  private java.util.Set<javax.persistence.metamodel.SingularAttribute<? super X, ?>> idClassAttributes;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;

  private final boolean isVersioned;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.hibernate.metamodel.internal.SingularAttributeImpl<X, ?> version;
    descriptor: Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/hibernate/metamodel/internal/SingularAttributeImpl<TX;*>;

  public void <init>(java.lang.Class<X>, java.lang.String, org.hibernate.metamodel.internal.AbstractIdentifiableType<? super X>, boolean, boolean, );
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;ZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.lang.Class javaType
        start local 2 // java.lang.String typeName
        start local 3 // org.hibernate.metamodel.internal.AbstractIdentifiableType superType
        start local 4 // boolean hasIdClass
        start local 5 // boolean hasIdentifierProperty
        start local 6 // boolean versioned
         0: .line 47
            aload 0 /* this */
            aload 1 /* javaType */
            aload 2 /* typeName */
            aload 3 /* superType */
            invokespecial org.hibernate.metamodel.internal.AbstractManagedType.<init>:(Ljava/lang/Class;Ljava/lang/String;Lorg/hibernate/metamodel/internal/AbstractManagedType;)V
         1: .line 48
            aload 0 /* this */
            iload 4 /* hasIdClass */
            putfield org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:Z
         2: .line 49
            aload 0 /* this */
            iload 5 /* hasIdentifierProperty */
            putfield org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdentifierProperty:Z
         3: .line 50
            aload 0 /* this */
            iload 6 /* versioned */
            putfield org.hibernate.metamodel.internal.AbstractIdentifiableType.isVersioned:Z
         4: .line 51
            return
        end local 6 // boolean versioned
        end local 5 // boolean hasIdentifierProperty
        end local 4 // boolean hasIdClass
        end local 3 // org.hibernate.metamodel.internal.AbstractIdentifiableType superType
        end local 2 // java.lang.String typeName
        end local 1 // java.lang.Class javaType
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    5     0                   this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    5     1               javaType  Ljava/lang/Class<TX;>;
            0    5     2               typeName  Ljava/lang/String;
            0    5     3              superType  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<-TX;>;
            0    5     4             hasIdClass  Z
            0    5     5  hasIdentifierProperty  Z
            0    5     6              versioned  Z
    Signature: (Ljava/lang/Class<TX;>;Ljava/lang/String;Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<-TX;>;ZZZ)V
    MethodParameters:
                       Name  Flags
      javaType               
      typeName               
      superType              
      hasIdClass             
      hasIdentifierProperty  
      versioned              

  public boolean hasIdClass();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 54
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:Z
            ireturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public boolean hasSingleIdAttribute();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 59
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:()Z
            ifne 1
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdentifierProperty:Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public org.hibernate.metamodel.internal.AbstractIdentifiableType<? super X> getSupertype();
    descriptor: ()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 66
            aload 0 /* this */
            invokespecial org.hibernate.metamodel.internal.AbstractManagedType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractManagedType;
            checkcast org.hibernate.metamodel.internal.AbstractIdentifiableType
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
    Signature: ()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<-TX;>;

  public <Y> javax.persistence.metamodel.SingularAttribute<? super X, Y> getId(java.lang.Class<Y>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/metamodel/SingularAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.lang.Class javaType
         0: .line 72
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.ensureNoIdClass:()V
         1: .line 73
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.locateIdAttribute:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            astore 2 /* id */
        start local 2 // org.hibernate.metamodel.internal.SingularAttributeImpl id
         2: .line 74
            aload 2 /* id */
            ifnull 4
         3: .line 75
            aload 0 /* this */
            aload 2 /* id */
            aload 1 /* javaType */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkType:(Lorg/hibernate/metamodel/internal/SingularAttributeImpl;Ljava/lang/Class;)V
         4: .line 77
      StackMap locals: org.hibernate.metamodel.internal.SingularAttributeImpl
      StackMap stack:
            aload 2 /* id */
            areturn
        end local 2 // org.hibernate.metamodel.internal.SingularAttributeImpl id
        end local 1 // java.lang.Class javaType
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    5     1  javaType  Ljava/lang/Class<TY;>;
            2    5     2        id  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    Signature: <Y:Ljava/lang/Object;>(Ljava/lang/Class<TY;>;)Ljavax/persistence/metamodel/SingularAttribute<-TX;TY;>;
    MethodParameters:
          Name  Flags
      javaType  

  private void ensureNoIdClass();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 81
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:()Z
            ifeq 4
         1: .line 82
            new java.lang.IllegalArgumentException
            dup
         2: .line 83
            new java.lang.StringBuilder
            dup
            ldc "Illegal call to IdentifiableType#getId for class ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] defined with @IdClass"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 82
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 86
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  private org.hibernate.metamodel.internal.SingularAttributeImpl locateIdAttribute();
    descriptor: ()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 89
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 2
         1: .line 90
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         2: .line 93
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 6
         3: .line 94
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalGetId:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            astore 1 /* id */
        start local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl id
         4: .line 95
            aload 1 /* id */
            ifnull 6
         5: .line 96
            aload 1 /* id */
            areturn
        end local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl id
         6: .line 101
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            4    6     1    id  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;

  protected org.hibernate.metamodel.internal.SingularAttributeImpl internalGetId();
    descriptor: ()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 105
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 2
         1: .line 106
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         2: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 4
         3: .line 110
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalGetId:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         4: .line 114
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  private void checkType(org.hibernate.metamodel.internal.SingularAttributeImpl, java.lang.Class);
    descriptor: (Lorg/hibernate/metamodel/internal/SingularAttributeImpl;Ljava/lang/Class;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl attribute
        start local 2 // java.lang.Class javaType
         0: .line 119
            aload 2 /* javaType */
            aload 1 /* attribute */
            invokevirtual org.hibernate.metamodel.internal.SingularAttributeImpl.getType:()Ljavax/persistence/metamodel/Type;
            invokeinterface javax.persistence.metamodel.Type.getJavaType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 9
         1: .line 120
            new java.lang.IllegalArgumentException
            dup
         2: .line 122
            ldc "Attribute [%s#%s : %s] not castable to requested type [%s]"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
         3: .line 123
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getTypeName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
         4: .line 124
            aload 1 /* attribute */
            invokevirtual org.hibernate.metamodel.internal.SingularAttributeImpl.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
         5: .line 125
            aload 1 /* attribute */
            invokevirtual org.hibernate.metamodel.internal.SingularAttributeImpl.getType:()Ljavax/persistence/metamodel/Type;
            invokeinterface javax.persistence.metamodel.Type.getJavaType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
         6: .line 126
            aload 2 /* javaType */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
         7: .line 121
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         8: .line 120
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 130
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Class javaType
        end local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl attribute
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0   10     1  attribute  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            0   10     2   javaType  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      attribute  
      javaType   

  public <Y> javax.persistence.metamodel.SingularAttribute<X, Y> getDeclaredId(java.lang.Class<Y>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/metamodel/SingularAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.lang.Class javaType
         0: .line 135
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.ensureNoIdClass:()V
         1: .line 136
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnonnull 3
         2: .line 137
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The id attribute is not declared on this type ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            aload 1 /* javaType */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkType:(Lorg/hibernate/metamodel/internal/SingularAttributeImpl;Ljava/lang/Class;)V
         4: .line 140
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.id:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
        end local 1 // java.lang.Class javaType
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    5     1  javaType  Ljava/lang/Class<TY;>;
    Signature: <Y:Ljava/lang/Object;>(Ljava/lang/Class<TY;>;)Ljavax/persistence/metamodel/SingularAttribute<TX;TY;>;
    MethodParameters:
          Name  Flags
      javaType  

  public javax.persistence.metamodel.Type<?> getIdType();
    descriptor: ()Ljavax/persistence/metamodel/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 146
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.locateIdAttribute:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            astore 1 /* id */
        start local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl id
         1: .line 147
            aload 1 /* id */
            ifnull 3
         2: .line 148
            aload 1 /* id */
            invokevirtual org.hibernate.metamodel.internal.SingularAttributeImpl.getType:()Ljavax/persistence/metamodel/Type;
            areturn
         3: .line 151
      StackMap locals: org.hibernate.metamodel.internal.SingularAttributeImpl
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getIdClassAttributesSafely:()Ljava/util/Set;
            astore 2 /* idClassAttributes */
        start local 2 // java.util.Set idClassAttributes
         4: .line 152
            aload 2 /* idClassAttributes */
            ifnull 7
         5: .line 153
            aload 2 /* idClassAttributes */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmpne 7
         6: .line 154
            aload 2 /* idClassAttributes */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.persistence.metamodel.SingularAttribute
            invokeinterface javax.persistence.metamodel.SingularAttribute.getType:()Ljavax/persistence/metamodel/Type;
            areturn
         7: .line 158
      StackMap locals: java.util.Set
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.util.Set idClassAttributes
        end local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl id
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0               this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            1    8     1                 id  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            4    8     2  idClassAttributes  Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;
    Signature: ()Ljavax/persistence/metamodel/Type<*>;

  public java.util.Set<javax.persistence.metamodel.SingularAttribute<? super X, ?>> getIdClassAttributesSafely();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 167
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:()Z
            ifne 2
         1: .line 168
            aconst_null
            areturn
         2: .line 170
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* attributes */
        start local 1 // java.util.Set attributes
         3: .line 171
            aload 0 /* this */
            aload 1 /* attributes */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalCollectIdClassAttributes:(Ljava/util/Set;)V
         4: .line 173
            aload 1 /* attributes */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 6
         5: .line 174
            aconst_null
            areturn
         6: .line 177
      StackMap locals: java.util.Set
      StackMap stack:
            aload 1 /* attributes */
            areturn
        end local 1 // java.util.Set attributes
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            3    7     1  attributes  Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;
    Signature: ()Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;

  public java.util.Set<javax.persistence.metamodel.SingularAttribute<? super X, ?>> getIdClassAttributes();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 182
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasIdClass:()Z
            ifne 2
         1: .line 183
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "This class ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getJavaType:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "] does not define an IdClass"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 186
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* attributes */
        start local 1 // java.util.Set attributes
         3: .line 187
            aload 0 /* this */
            aload 1 /* attributes */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalCollectIdClassAttributes:(Ljava/util/Set;)V
         4: .line 189
            aload 1 /* attributes */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 6
         5: .line 190
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unable to locate IdClass attributes ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getJavaType:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 193
      StackMap locals: java.util.Set
      StackMap stack:
            aload 1 /* attributes */
            areturn
        end local 1 // java.util.Set attributes
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            3    7     1  attributes  Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;
    Signature: ()Ljava/util/Set<Ljavax/persistence/metamodel/SingularAttribute<-TX;*>;>;

  private void internalCollectIdClassAttributes(java.util.Set);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.util.Set attributes
         0: .line 198
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.idClassAttributes:Ljava/util/Set;
            ifnull 3
         1: .line 199
            aload 1 /* attributes */
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.idClassAttributes:Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         2: .line 200
            goto 5
         3: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 5
         4: .line 202
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            aload 1 /* attributes */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalCollectIdClassAttributes:(Ljava/util/Set;)V
         5: .line 204
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Set attributes
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    6     1  attributes  Ljava/util/Set;
    MethodParameters:
            Name  Flags
      attributes  

  public boolean hasVersionAttribute();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 208
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.isVersioned:Z
            ireturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public boolean hasDeclaredVersionAttribute();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 212
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.isVersioned:Z
            ifeq 1
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public <Y> javax.persistence.metamodel.SingularAttribute<? super X, Y> getVersion(java.lang.Class<Y>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/metamodel/SingularAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.lang.Class javaType
         0: .line 219
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasVersionAttribute:()Z
            ifne 2
         1: .line 220
            aconst_null
            areturn
         2: .line 223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.locateVersionAttribute:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            astore 2 /* version */
        start local 2 // org.hibernate.metamodel.internal.SingularAttributeImpl version
         3: .line 224
            aload 2 /* version */
            ifnull 5
         4: .line 225
            aload 0 /* this */
            aload 2 /* version */
            aload 1 /* javaType */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkType:(Lorg/hibernate/metamodel/internal/SingularAttributeImpl;Ljava/lang/Class;)V
         5: .line 227
      StackMap locals: org.hibernate.metamodel.internal.SingularAttributeImpl
      StackMap stack:
            aload 2 /* version */
            areturn
        end local 2 // org.hibernate.metamodel.internal.SingularAttributeImpl version
        end local 1 // java.lang.Class javaType
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    6     1  javaType  Ljava/lang/Class<TY;>;
            3    6     2   version  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    Signature: <Y:Ljava/lang/Object;>(Ljava/lang/Class<TY;>;)Ljavax/persistence/metamodel/SingularAttribute<-TX;TY;>;
    MethodParameters:
          Name  Flags
      javaType  

  private org.hibernate.metamodel.internal.SingularAttributeImpl locateVersionAttribute();
    descriptor: ()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 231
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 2
         1: .line 232
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         2: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 6
         3: .line 236
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalGetVersion:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            astore 1 /* version */
        start local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl version
         4: .line 237
            aload 1 /* version */
            ifnull 6
         5: .line 238
            aload 1 /* version */
            areturn
        end local 1 // org.hibernate.metamodel.internal.SingularAttributeImpl version
         6: .line 243
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            4    6     1  version  Lorg/hibernate/metamodel/internal/SingularAttributeImpl;

  protected org.hibernate.metamodel.internal.SingularAttributeImpl internalGetVersion();
    descriptor: ()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 247
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 2
         1: .line 248
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         2: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 4
         3: .line 252
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.internalGetVersion:()Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
         4: .line 256
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public <Y> javax.persistence.metamodel.SingularAttribute<X, Y> getDeclaredVersion(java.lang.Class<Y>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/metamodel/SingularAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
        start local 1 // java.lang.Class javaType
         0: .line 262
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkDeclaredVersion:()V
         1: .line 263
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            aload 1 /* javaType */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkType:(Lorg/hibernate/metamodel/internal/SingularAttributeImpl;Ljava/lang/Class;)V
         2: .line 264
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
        end local 1 // java.lang.Class javaType
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            0    3     1  javaType  Ljava/lang/Class<TY;>;
    Signature: <Y:Ljava/lang/Object;>(Ljava/lang/Class<TY;>;)Ljavax/persistence/metamodel/SingularAttribute<TX;TY;>;
    MethodParameters:
          Name  Flags
      javaType  

  private void checkDeclaredVersion();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 268
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            ifnull 1
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            ifnull 4
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.hasVersionAttribute:()Z
            ifeq 4
         1: .line 269
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
         2: .line 270
            new java.lang.StringBuilder
            dup
            ldc "The version attribute is not declared by this type ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getJavaType:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 269
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 273
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;

  public javax.persistence.metamodel.SingularAttribute<X, ?> getDeclaredVersion();
    descriptor: ()Ljavax/persistence/metamodel/SingularAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 282
            aload 0 /* this */
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.checkDeclaredVersion:()V
         1: .line 283
            aload 0 /* this */
            getfield org.hibernate.metamodel.internal.AbstractIdentifiableType.version:Lorg/hibernate/metamodel/internal/SingularAttributeImpl;
            areturn
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
    Signature: ()Ljavax/persistence/metamodel/SingularAttribute<TX;*>;

  public org.hibernate.metamodel.internal.AbstractIdentifiableType$Builder<X> getBuilder();
    descriptor: ()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
         0: .line 287
            aload 0 /* this */
            invokespecial org.hibernate.metamodel.internal.AbstractManagedType.getBuilder:()Lorg/hibernate/metamodel/internal/AbstractManagedType$Builder;
            astore 1 /* managedBuilder */
        start local 1 // org.hibernate.metamodel.internal.AbstractManagedType$Builder managedBuilder
         1: .line 288
            new org.hibernate.metamodel.internal.AbstractIdentifiableType$1
            dup
            aload 0 /* this */
            aload 1 /* managedBuilder */
            invokespecial org.hibernate.metamodel.internal.AbstractIdentifiableType$1.<init>:(Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;Lorg/hibernate/metamodel/internal/AbstractManagedType$Builder;)V
            areturn
        end local 1 // org.hibernate.metamodel.internal.AbstractManagedType$Builder managedBuilder
        end local 0 // org.hibernate.metamodel.internal.AbstractIdentifiableType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/metamodel/internal/AbstractIdentifiableType<TX;>;
            1    2     1  managedBuilder  Lorg/hibernate/metamodel/internal/AbstractManagedType$Builder<TX;>;
    Signature: ()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType$Builder<TX;>;

  public javax.persistence.metamodel.IdentifiableType getSupertype();
    descriptor: ()Ljavax/persistence/metamodel/IdentifiableType;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.hibernate.metamodel.internal.AbstractManagedType getSupertype();
    descriptor: ()Lorg/hibernate/metamodel/internal/AbstractManagedType;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getSupertype:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.hibernate.metamodel.internal.AbstractManagedType$Builder getBuilder();
    descriptor: ()Lorg/hibernate/metamodel/internal/AbstractManagedType$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.hibernate.metamodel.internal.AbstractIdentifiableType.getBuilder:()Lorg/hibernate/metamodel/internal/AbstractIdentifiableType$Builder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <X:Ljava/lang/Object;>Lorg/hibernate/metamodel/internal/AbstractManagedType<TX;>;Ljavax/persistence/metamodel/IdentifiableType<TX;>;Ljava/io/Serializable;
SourceFile: "AbstractIdentifiableType.java"
NestMembers:
  org.hibernate.metamodel.internal.AbstractIdentifiableType$1  org.hibernate.metamodel.internal.AbstractIdentifiableType$Builder
InnerClasses:
  org.hibernate.metamodel.internal.AbstractIdentifiableType$1
  public abstract Builder = org.hibernate.metamodel.internal.AbstractIdentifiableType$Builder of org.hibernate.metamodel.internal.AbstractIdentifiableType
  public abstract Builder = org.hibernate.metamodel.internal.AbstractManagedType$Builder of org.hibernate.metamodel.internal.AbstractManagedType