public abstract class org.hibernate.type.EntityType extends org.hibernate.type.AbstractType implements org.hibernate.type.AssociationType
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.type.EntityType
  super_class: org.hibernate.type.AbstractType
{
  private final org.hibernate.type.TypeFactory$TypeScope scope;
    descriptor: Lorg/hibernate/type/TypeFactory$TypeScope;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String associatedEntityName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final java.lang.String uniqueKeyPropertyName;
    descriptor: Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final boolean isEmbeddedInXML;
    descriptor: Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

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

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

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

  private volatile transient org.hibernate.type.Type associatedIdentifierType;
    descriptor: Lorg/hibernate/type/Type;
    flags: (0x00c2) ACC_PRIVATE, ACC_VOLATILE, ACC_TRANSIENT

  private volatile transient org.hibernate.persister.entity.EntityPersister associatedEntityPersister;
    descriptor: Lorg/hibernate/persister/entity/EntityPersister;
    flags: (0x00c2) ACC_PRIVATE, ACC_VOLATILE, ACC_TRANSIENT

  private transient java.lang.Class returnedClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  protected void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, java.lang.String, boolean, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Ljava/lang/String;ZZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String entityName
        start local 3 // java.lang.String uniqueKeyPropertyName
        start local 4 // boolean eager
        start local 5 // boolean isEmbeddedInXML
        start local 6 // boolean unwrapProxy
         0: .line 106
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* entityName */
            aload 3 /* uniqueKeyPropertyName */
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String java.lang.String int int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String
         1: iconst_0
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String java.lang.String int int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int
         2: aload 3 /* uniqueKeyPropertyName */
            iload 4 /* eager */
            iload 6 /* unwrapProxy */
            invokespecial org.hibernate.type.EntityType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZ)V
         3: .line 107
            return
        end local 6 // boolean unwrapProxy
        end local 5 // boolean isEmbeddedInXML
        end local 4 // boolean eager
        end local 3 // java.lang.String uniqueKeyPropertyName
        end local 2 // java.lang.String entityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    4     0                   this  Lorg/hibernate/type/EntityType;
            0    4     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    4     2             entityName  Ljava/lang/String;
            0    4     3  uniqueKeyPropertyName  Ljava/lang/String;
            0    4     4                  eager  Z
            0    4     5        isEmbeddedInXML  Z
            0    4     6            unwrapProxy  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      scope                  
      entityName             
      uniqueKeyPropertyName  
      eager                  
      isEmbeddedInXML        
      unwrapProxy            

  protected void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Ljava/lang/String;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String entityName
        start local 3 // java.lang.String uniqueKeyPropertyName
        start local 4 // boolean eager
        start local 5 // boolean unwrapProxy
         0: .line 130
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* entityName */
            aload 3 /* uniqueKeyPropertyName */
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String java.lang.String int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String
         1: iconst_0
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String java.lang.String int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int
         2: aload 3 /* uniqueKeyPropertyName */
            iload 4 /* eager */
            iload 5 /* unwrapProxy */
            invokespecial org.hibernate.type.EntityType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZ)V
         3: .line 131
            return
        end local 5 // boolean unwrapProxy
        end local 4 // boolean eager
        end local 3 // java.lang.String uniqueKeyPropertyName
        end local 2 // java.lang.String entityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    4     0                   this  Lorg/hibernate/type/EntityType;
            0    4     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    4     2             entityName  Ljava/lang/String;
            0    4     3  uniqueKeyPropertyName  Ljava/lang/String;
            0    4     4                  eager  Z
            0    4     5            unwrapProxy  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      scope                  
      entityName             
      uniqueKeyPropertyName  
      eager                  
      unwrapProxy            

  protected void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, boolean, java.lang.String, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=7
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String entityName
        start local 3 // boolean referenceToPrimaryKey
        start local 4 // java.lang.String uniqueKeyPropertyName
        start local 5 // boolean eager
        start local 6 // boolean unwrapProxy
         0: .line 146
            aload 0 /* this */
            invokespecial org.hibernate.type.AbstractType.<init>:()V
         1: .line 153
            aload 0 /* this */
            aload 1 /* scope */
            putfield org.hibernate.type.EntityType.scope:Lorg/hibernate/type/TypeFactory$TypeScope;
         2: .line 154
            aload 0 /* this */
            aload 2 /* entityName */
            putfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
         3: .line 155
            aload 0 /* this */
            aload 4 /* uniqueKeyPropertyName */
            putfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
         4: .line 156
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
         5: .line 157
            aload 0 /* this */
            iload 5 /* eager */
            putfield org.hibernate.type.EntityType.eager:Z
         6: .line 158
            aload 0 /* this */
            iload 6 /* unwrapProxy */
            putfield org.hibernate.type.EntityType.unwrapProxy:Z
         7: .line 159
            aload 0 /* this */
            iload 3 /* referenceToPrimaryKey */
            putfield org.hibernate.type.EntityType.referenceToPrimaryKey:Z
         8: .line 160
            return
        end local 6 // boolean unwrapProxy
        end local 5 // boolean eager
        end local 4 // java.lang.String uniqueKeyPropertyName
        end local 3 // boolean referenceToPrimaryKey
        end local 2 // java.lang.String entityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    9     0                   this  Lorg/hibernate/type/EntityType;
            0    9     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    9     2             entityName  Ljava/lang/String;
            0    9     3  referenceToPrimaryKey  Z
            0    9     4  uniqueKeyPropertyName  Ljava/lang/String;
            0    9     5                  eager  Z
            0    9     6            unwrapProxy  Z
    MethodParameters:
                       Name  Flags
      scope                  
      entityName             
      referenceToPrimaryKey  
      uniqueKeyPropertyName  
      eager                  
      unwrapProxy            

  protected org.hibernate.type.TypeFactory$TypeScope scope();
    descriptor: ()Lorg/hibernate/type/TypeFactory$TypeScope;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 163
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.scope:Lorg/hibernate/type/TypeFactory$TypeScope;
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public boolean isAssociationType();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 173
            iconst_1
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public final boolean isEntityType();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 183
            iconst_1
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public boolean isMutable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 188
            iconst_0
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 198
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 206
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public boolean isReferenceToPrimaryKey();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 216
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.referenceToPrimaryKey:Z
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String getRHSUniqueKeyPropertyName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 223
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.referenceToPrimaryKey:Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String getLHSPropertyName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 228
            aconst_null
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String getPropertyName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 232
            aconst_null
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public final java.lang.String getAssociatedEntityName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 241
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.String getAssociatedEntityName(org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 252
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            areturn
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
    MethodParameters:
         Name  Flags
      factory  

  public org.hibernate.persister.entity.Joinable getAssociatedJoinable(org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/Joinable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 264
            aload 0 /* this */
            aload 1 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            checkcast org.hibernate.persister.entity.Joinable
            areturn
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      factory  

  public final java.lang.Class getReturnedClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 279
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.returnedClass:Ljava/lang/Class;
            ifnonnull 2
         1: .line 280
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.determineAssociatedEntityClass:()Ljava/lang/Class;
            putfield org.hibernate.type.EntityType.returnedClass:Ljava/lang/Class;
         2: .line 282
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.returnedClass:Ljava/lang/Class;
            areturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/type/EntityType;

  private java.lang.Class determineAssociatedEntityClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 286
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            astore 1 /* entityName */
        start local 1 // java.lang.String entityName
         1: .line 288
            aload 1 /* entityName */
            invokestatic org.hibernate.internal.util.ReflectHelper.classForName:(Ljava/lang/String;)Ljava/lang/Class;
         2: areturn
         3: .line 290
      StackMap locals: org.hibernate.type.EntityType java.lang.String
      StackMap stack: java.lang.ClassNotFoundException
            pop
         4: .line 291
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.scope:Lorg/hibernate/type/TypeFactory$TypeScope;
            invokeinterface org.hibernate.type.TypeFactory$TypeScope.resolveFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            aload 1 /* entityName */
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getEntityPersister:(Ljava/lang/String;)Lorg/hibernate/persister/entity/EntityPersister;
         5: .line 292
            invokeinterface org.hibernate.persister.entity.EntityPersister.getEntityTuplizer:()Lorg/hibernate/tuple/entity/EntityTuplizer;
            invokeinterface org.hibernate.tuple.entity.EntityTuplizer.getMappedClass:()Ljava/lang/Class;
         6: .line 291
            areturn
        end local 1 // java.lang.String entityName
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/hibernate/type/EntityType;
            1    7     1  entityName  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.ClassNotFoundException

  public java.lang.Object nullSafeGet(java.sql.ResultSet, java.lang.String, org.hibernate.engine.spi.SessionImplementor, java.lang.Object);
    descriptor: (Ljava/sql/ResultSet;Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.sql.ResultSet rs
        start local 2 // java.lang.String name
        start local 3 // org.hibernate.engine.spi.SessionImplementor session
        start local 4 // java.lang.Object owner
         0: .line 299
            aload 0 /* this */
            aload 1 /* rs */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* name */
            aastore
            aload 3 /* session */
            aload 4 /* owner */
            invokevirtual org.hibernate.type.EntityType.nullSafeGet:(Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 4 // java.lang.Object owner
        end local 3 // org.hibernate.engine.spi.SessionImplementor session
        end local 2 // java.lang.String name
        end local 1 // java.sql.ResultSet rs
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1       rs  Ljava/sql/ResultSet;
            0    1     2     name  Ljava/lang/String;
            0    1     3  session  Lorg/hibernate/engine/spi/SessionImplementor;
            0    1     4    owner  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException, java.sql.SQLException
    MethodParameters:
         Name  Flags
      rs       
      name     
      session  
      owner    

  public final java.lang.Object nullSafeGet(java.sql.ResultSet, java.lang.String[], org.hibernate.engine.spi.SessionImplementor, java.lang.Object);
    descriptor: (Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.sql.ResultSet rs
        start local 2 // java.lang.String[] names
        start local 3 // org.hibernate.engine.spi.SessionImplementor session
        start local 4 // java.lang.Object owner
         0: .line 308
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* rs */
            aload 2 /* names */
            aload 3 /* session */
            aload 4 /* owner */
            invokevirtual org.hibernate.type.EntityType.hydrate:(Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* session */
            aload 4 /* owner */
            invokevirtual org.hibernate.type.EntityType.resolve:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 4 // java.lang.Object owner
        end local 3 // org.hibernate.engine.spi.SessionImplementor session
        end local 2 // java.lang.String[] names
        end local 1 // java.sql.ResultSet rs
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1       rs  Ljava/sql/ResultSet;
            0    1     2    names  [Ljava/lang/String;
            0    1     3  session  Lorg/hibernate/engine/spi/SessionImplementor;
            0    1     4    owner  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException, java.sql.SQLException
    MethodParameters:
         Name  Flags
      rs       
      names    
      session  
      owner    

  public final boolean isSame(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object x
        start local 2 // java.lang.Object y
         0: .line 321
            aload 1 /* x */
            aload 2 /* y */
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // java.lang.Object y
        end local 1 // java.lang.Object x
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/type/EntityType;
            0    2     1     x  Ljava/lang/Object;
            0    2     2     y  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      x     
      y     

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object x
        start local 2 // java.lang.Object y
         0: .line 326
            iconst_0
            ireturn
        end local 2 // java.lang.Object y
        end local 1 // java.lang.Object x
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;
            0    1     1     x  Ljava/lang/Object;
            0    1     2     y  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      x     
      y     

  public java.lang.Object deepCopy(java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 331
            aload 1 /* value */
            areturn
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1    value  Ljava/lang/Object;
            0    1     2  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
    MethodParameters:
         Name  Flags
      value    
      factory  

  public java.lang.Object replace(java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SessionImplementor, java.lang.Object, java.util.Map);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;Ljava/util/Map;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=6
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object original
        start local 2 // java.lang.Object target
        start local 3 // org.hibernate.engine.spi.SessionImplementor session
        start local 4 // java.lang.Object owner
        start local 5 // java.util.Map copyCache
         0: .line 341
            aload 1 /* original */
            ifnonnull 2
         1: .line 342
            aconst_null
            areturn
         2: .line 344
      StackMap locals:
      StackMap stack:
            aload 5 /* copyCache */
            aload 1 /* original */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* cached */
        start local 6 // java.lang.Object cached
         3: .line 345
            aload 6 /* cached */
            ifnull 5
         4: .line 346
            aload 6 /* cached */
            areturn
         5: .line 349
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* original */
            aload 2 /* target */
            if_acmpne 7
         6: .line 350
            aload 2 /* target */
            areturn
         7: .line 352
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 1 /* original */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getContextEntityIdentifier:(Ljava/lang/Object;)Ljava/io/Serializable;
            ifnonnull 14
         8: .line 353
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
            aload 1 /* original */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            aload 3 /* session */
            invokestatic org.hibernate.engine.internal.ForeignKeys.isTransient:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Boolean;Lorg/hibernate/engine/spi/SessionImplementor;)Z
            ifeq 14
         9: .line 354
            aload 3 /* session */
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
            aload 1 /* original */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getEntityPersister:(Ljava/lang/String;Ljava/lang/Object;)Lorg/hibernate/persister/entity/EntityPersister;
        10: .line 355
            aconst_null
            aload 3 /* session */
            invokeinterface org.hibernate.persister.entity.EntityPersister.instantiate:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
        11: .line 354
            astore 7 /* copy */
        start local 7 // java.lang.Object copy
        12: .line 356
            aload 5 /* copyCache */
            aload 1 /* original */
            aload 7 /* copy */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 357
            aload 7 /* copy */
            areturn
        end local 7 // java.lang.Object copy
        14: .line 360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* original */
            aload 3 /* session */
            invokevirtual org.hibernate.type.EntityType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
            astore 7 /* id */
        start local 7 // java.lang.Object id
        15: .line 361
            aload 7 /* id */
            ifnonnull 17
        16: .line 362
            new org.hibernate.AssertionFailure
            dup
            new java.lang.StringBuilder
            dup
            ldc "non-transient entity has a null id: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* original */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 364
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.EntityType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
        18: .line 365
            aload 7 /* id */
            aconst_null
            aload 3 /* session */
            aload 4 /* owner */
            aload 5 /* copyCache */
            invokeinterface org.hibernate.type.Type.replace:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;Ljava/util/Map;)Ljava/lang/Object;
        19: .line 364
            astore 7 /* id */
        20: .line 366
            aload 0 /* this */
            aload 7 /* id */
            aload 3 /* session */
            aload 4 /* owner */
            invokevirtual org.hibernate.type.EntityType.resolve:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 7 // java.lang.Object id
        end local 6 // java.lang.Object cached
        end local 5 // java.util.Map copyCache
        end local 4 // java.lang.Object owner
        end local 3 // org.hibernate.engine.spi.SessionImplementor session
        end local 2 // java.lang.Object target
        end local 1 // java.lang.Object original
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lorg/hibernate/type/EntityType;
            0   21     1   original  Ljava/lang/Object;
            0   21     2     target  Ljava/lang/Object;
            0   21     3    session  Lorg/hibernate/engine/spi/SessionImplementor;
            0   21     4      owner  Ljava/lang/Object;
            0   21     5  copyCache  Ljava/util/Map;
            3   21     6     cached  Ljava/lang/Object;
           12   14     7       copy  Ljava/lang/Object;
           15   21     7         id  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
           Name  Flags
      original   
      target     
      session    
      owner      
      copyCache  

  public int getHashCode(java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object x
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 373
            aload 0 /* this */
            aload 2 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            astore 3 /* persister */
        start local 3 // org.hibernate.persister.entity.EntityPersister persister
         1: .line 374
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.canExtractIdOutOfEntity:()Z
            ifne 3
         2: .line 375
            aload 0 /* this */
            aload 1 /* x */
            invokespecial org.hibernate.type.AbstractType.getHashCode:(Ljava/lang/Object;)I
            ireturn
         3: .line 379
      StackMap locals: org.hibernate.persister.entity.EntityPersister
      StackMap stack:
            aload 1 /* x */
            instanceof org.hibernate.proxy.HibernateProxy
            ifeq 6
         4: .line 380
            aload 1 /* x */
            checkcast org.hibernate.proxy.HibernateProxy
            invokeinterface org.hibernate.proxy.HibernateProxy.getHibernateLazyInitializer:()Lorg/hibernate/proxy/LazyInitializer;
            invokeinterface org.hibernate.proxy.LazyInitializer.getIdentifier:()Ljava/io/Serializable;
            astore 4 /* id */
        start local 4 // java.io.Serializable id
         5: .line 381
            goto 11
        end local 4 // java.io.Serializable id
         6: .line 383
      StackMap locals:
      StackMap stack:
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getMappedClass:()Ljava/lang/Class;
            astore 5 /* mappedClass */
        start local 5 // java.lang.Class mappedClass
         7: .line 384
            aload 5 /* mappedClass */
            aload 1 /* x */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 10
         8: .line 385
            aload 3 /* persister */
            aload 1 /* x */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifier:(Ljava/lang/Object;)Ljava/io/Serializable;
            astore 4 /* id */
        start local 4 // java.io.Serializable id
         9: .line 386
            goto 11
        end local 4 // java.io.Serializable id
        10: .line 388
      StackMap locals: org.hibernate.type.EntityType java.lang.Object org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.persister.entity.EntityPersister top java.lang.Class
      StackMap stack:
            aload 1 /* x */
            checkcast java.io.Serializable
            astore 4 /* id */
        end local 5 // java.lang.Class mappedClass
        start local 4 // java.io.Serializable id
        11: .line 391
      StackMap locals: org.hibernate.type.EntityType java.lang.Object org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.persister.entity.EntityPersister java.io.Serializable
      StackMap stack:
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifierType:()Lorg/hibernate/type/Type;
            aload 4 /* id */
            aload 2 /* factory */
            invokeinterface org.hibernate.type.Type.getHashCode:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)I
            ireturn
        end local 4 // java.io.Serializable id
        end local 3 // org.hibernate.persister.entity.EntityPersister persister
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // java.lang.Object x
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/hibernate/type/EntityType;
            0   12     1            x  Ljava/lang/Object;
            0   12     2      factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            1   12     3    persister  Lorg/hibernate/persister/entity/EntityPersister;
            5    6     4           id  Ljava/io/Serializable;
            9   10     4           id  Ljava/io/Serializable;
           11   12     4           id  Ljava/io/Serializable;
            7   11     5  mappedClass  Ljava/lang/Class;
    MethodParameters:
         Name  Flags
      x        
      factory  

  public boolean isEqual(java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object x
        start local 2 // java.lang.Object y
        start local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 397
            aload 1 /* x */
            ifnull 1
            aload 2 /* y */
            ifnonnull 3
         1: .line 398
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            aload 2 /* y */
            if_acmpne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            astore 4 /* persister */
        start local 4 // org.hibernate.persister.entity.EntityPersister persister
         4: .line 402
            aload 4 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.canExtractIdOutOfEntity:()Z
            ifne 6
         5: .line 403
            aload 0 /* this */
            aload 1 /* x */
            aload 2 /* y */
            invokespecial org.hibernate.type.AbstractType.isEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ireturn
         6: .line 406
      StackMap locals: org.hibernate.persister.entity.EntityPersister
      StackMap stack:
            aload 4 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getMappedClass:()Ljava/lang/Class;
            astore 5 /* mappedClass */
        start local 5 // java.lang.Class mappedClass
         7: .line 408
            aload 1 /* x */
            instanceof org.hibernate.proxy.HibernateProxy
            ifeq 12
         8: .line 409
            aload 1 /* x */
            checkcast org.hibernate.proxy.HibernateProxy
            invokeinterface org.hibernate.proxy.HibernateProxy.getHibernateLazyInitializer:()Lorg/hibernate/proxy/LazyInitializer;
         9: .line 410
            invokeinterface org.hibernate.proxy.LazyInitializer.getIdentifier:()Ljava/io/Serializable;
        10: .line 409
            astore 6 /* xid */
        start local 6 // java.io.Serializable xid
        11: .line 411
            goto 16
        end local 6 // java.io.Serializable xid
        12: .line 413
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 5 /* mappedClass */
            aload 1 /* x */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 15
        13: .line 414
            aload 4 /* persister */
            aload 1 /* x */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifier:(Ljava/lang/Object;)Ljava/io/Serializable;
            astore 6 /* xid */
        start local 6 // java.io.Serializable xid
        14: .line 415
            goto 16
        end local 6 // java.io.Serializable xid
        15: .line 418
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            checkcast java.io.Serializable
            astore 6 /* xid */
        start local 6 // java.io.Serializable xid
        16: .line 423
      StackMap locals: java.io.Serializable
      StackMap stack:
            aload 2 /* y */
            instanceof org.hibernate.proxy.HibernateProxy
            ifeq 21
        17: .line 424
            aload 2 /* y */
            checkcast org.hibernate.proxy.HibernateProxy
            invokeinterface org.hibernate.proxy.HibernateProxy.getHibernateLazyInitializer:()Lorg/hibernate/proxy/LazyInitializer;
        18: .line 425
            invokeinterface org.hibernate.proxy.LazyInitializer.getIdentifier:()Ljava/io/Serializable;
        19: .line 424
            astore 7 /* yid */
        start local 7 // java.io.Serializable yid
        20: .line 426
            goto 25
        end local 7 // java.io.Serializable yid
        21: .line 428
      StackMap locals:
      StackMap stack:
            aload 5 /* mappedClass */
            aload 2 /* y */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 24
        22: .line 429
            aload 4 /* persister */
            aload 2 /* y */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifier:(Ljava/lang/Object;)Ljava/io/Serializable;
            astore 7 /* yid */
        start local 7 // java.io.Serializable yid
        23: .line 430
            goto 25
        end local 7 // java.io.Serializable yid
        24: .line 433
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            checkcast java.io.Serializable
            astore 7 /* yid */
        start local 7 // java.io.Serializable yid
        25: .line 437
      StackMap locals: java.io.Serializable
      StackMap stack:
            aload 4 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifierType:()Lorg/hibernate/type/Type;
        26: .line 438
            aload 6 /* xid */
            aload 7 /* yid */
            aload 3 /* factory */
            invokeinterface org.hibernate.type.Type.isEqual:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Z
        27: .line 437
            ireturn
        end local 7 // java.io.Serializable yid
        end local 6 // java.io.Serializable xid
        end local 5 // java.lang.Class mappedClass
        end local 4 // org.hibernate.persister.entity.EntityPersister persister
        end local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 2 // java.lang.Object y
        end local 1 // java.lang.Object x
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lorg/hibernate/type/EntityType;
            0   28     1            x  Ljava/lang/Object;
            0   28     2            y  Ljava/lang/Object;
            0   28     3      factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            4   28     4    persister  Lorg/hibernate/persister/entity/EntityPersister;
            7   28     5  mappedClass  Ljava/lang/Class;
           11   12     6          xid  Ljava/io/Serializable;
           14   15     6          xid  Ljava/io/Serializable;
           16   28     6          xid  Ljava/io/Serializable;
           20   21     7          yid  Ljava/io/Serializable;
           23   24     7          yid  Ljava/io/Serializable;
           25   28     7          yid  Ljava/io/Serializable;
    MethodParameters:
         Name  Flags
      x        
      y        
      factory  

  public boolean isEmbeddedInXML();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 443
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public boolean isXMLElement();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 448
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  public java.lang.Object fromXMLNode(org.dom4j.Node, org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/dom4j/Node;Lorg/hibernate/engine/spi/Mapping;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.dom4j.Node xml
        start local 2 // org.hibernate.engine.spi.Mapping factory
         0: .line 453
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
            ifne 2
         1: .line 454
            aload 0 /* this */
            aload 2 /* factory */
            invokevirtual org.hibernate.type.EntityType.getIdentifierType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* xml */
            aload 2 /* factory */
            invokeinterface org.hibernate.type.Type.fromXMLNode:(Lorg/dom4j/Node;Lorg/hibernate/engine/spi/Mapping;)Ljava/lang/Object;
            areturn
         2: .line 457
      StackMap locals:
      StackMap stack:
            aload 1 /* xml */
            areturn
        end local 2 // org.hibernate.engine.spi.Mapping factory
        end local 1 // org.dom4j.Node xml
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/hibernate/type/EntityType;
            0    3     1      xml  Lorg/dom4j/Node;
            0    3     2  factory  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      xml      
      factory  

  public void setToXMLNode(org.dom4j.Node, java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/dom4j/Node;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.dom4j.Node node
        start local 2 // java.lang.Object value
        start local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 463
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
            ifne 3
         1: .line 464
            aload 0 /* this */
            aload 3 /* factory */
            invokevirtual org.hibernate.type.EntityType.getIdentifierType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* node */
            aload 2 /* value */
            aload 3 /* factory */
            invokeinterface org.hibernate.type.Type.setToXMLNode:(Lorg/dom4j/Node;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
         2: .line 465
            goto 5
         3: .line 467
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            checkcast org.dom4j.Element
            astore 4 /* elt */
        start local 4 // org.dom4j.Element elt
         4: .line 468
            aload 1 /* node */
            new org.hibernate.tuple.ElementWrapper
            dup
            aload 4 /* elt */
            invokespecial org.hibernate.tuple.ElementWrapper.<init>:(Lorg/dom4j/Element;)V
            invokestatic org.hibernate.type.EntityType.replaceNode:(Lorg/dom4j/Node;Lorg/dom4j/Element;)V
        end local 4 // org.dom4j.Element elt
         5: .line 470
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 2 // java.lang.Object value
        end local 1 // org.dom4j.Node node
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/hibernate/type/EntityType;
            0    6     1     node  Lorg/dom4j/Node;
            0    6     2    value  Ljava/lang/Object;
            0    6     3  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            4    5     4      elt  Lorg/dom4j/Element;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      node     
      value    
      factory  

  public java.lang.String getOnCondition(java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor, java.util.Map);
    descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/util/Map;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.String alias
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 3 // java.util.Map enabledFilters
         0: .line 474
            aload 0 /* this */
            aload 1 /* alias */
            aload 2 /* factory */
            aload 3 /* enabledFilters */
            aconst_null
            invokevirtual org.hibernate.type.EntityType.getOnCondition:(Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/util/Map;Ljava/util/Set;)Ljava/lang/String;
            areturn
        end local 3 // java.util.Map enabledFilters
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // java.lang.String alias
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/hibernate/type/EntityType;
            0    1     1           alias  Ljava/lang/String;
            0    1     2         factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    1     3  enabledFilters  Ljava/util/Map;
    MethodParameters:
                Name  Flags
      alias           
      factory         
      enabledFilters  

  public java.lang.String getOnCondition(java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor, java.util.Map, java.util.Set<java.lang.String>);
    descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/util/Map;Ljava/util/Set;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.String alias
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 3 // java.util.Map enabledFilters
        start local 4 // java.util.Set treatAsDeclarations
         0: .line 483
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isReferenceToPrimaryKey:()Z
            ifeq 2
            aload 4 /* treatAsDeclarations */
            ifnull 1
            aload 4 /* treatAsDeclarations */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 2
         1: .line 484
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
         2: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedJoinable:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/Joinable;
            aload 1 /* alias */
            aload 3 /* enabledFilters */
            aload 4 /* treatAsDeclarations */
            invokeinterface org.hibernate.persister.entity.Joinable.filterFragment:(Ljava/lang/String;Ljava/util/Map;Ljava/util/Set;)Ljava/lang/String;
            areturn
        end local 4 // java.util.Set treatAsDeclarations
        end local 3 // java.util.Map enabledFilters
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // java.lang.String alias
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lorg/hibernate/type/EntityType;
            0    3     1                alias  Ljava/lang/String;
            0    3     2              factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    3     3       enabledFilters  Ljava/util/Map;
            0    3     4  treatAsDeclarations  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/util/Map;Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
                     Name  Flags
      alias                
      factory              
      enabledFilters       
      treatAsDeclarations  

  public java.lang.Object resolve(java.lang.Object, org.hibernate.engine.spi.SessionImplementor, java.lang.Object);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
        start local 3 // java.lang.Object owner
         0: .line 496
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.isNotEmbedded:(Lorg/hibernate/engine/spi/SessionImplementor;)Z
            ifeq 2
         1: .line 497
            aload 1 /* value */
            areturn
         2: .line 500
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            ifnull 7
            aload 0 /* this */
            aload 3 /* owner */
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.isNull:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Z
            ifne 7
         3: .line 501
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isReferenceToPrimaryKey:()Z
            ifeq 5
         4: .line 502
            aload 0 /* this */
            aload 1 /* value */
            checkcast java.io.Serializable
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.resolveIdentifier:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
            areturn
         5: .line 504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            ifnull 7
         6: .line 505
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            aload 1 /* value */
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.loadByUniqueKey:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
            areturn
         7: .line 509
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.Object owner
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/hibernate/type/EntityType;
            0    8     1    value  Ljava/lang/Object;
            0    8     2  session  Lorg/hibernate/engine/spi/SessionImplementor;
            0    8     3    owner  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      value    
      session  
      owner    

  public org.hibernate.type.Type getSemiResolvedType(org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/type/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 514
            aload 0 /* this */
            aload 1 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifierType:()Lorg/hibernate/type/Type;
            areturn
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
    MethodParameters:
         Name  Flags
      factory  

  protected org.hibernate.persister.entity.EntityPersister getAssociatedEntityPersister(org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 518
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityPersister:Lorg/hibernate/persister/entity/EntityPersister;
            astore 2 /* persister */
        start local 2 // org.hibernate.persister.entity.EntityPersister persister
         1: .line 522
            aload 2 /* persister */
            ifnonnull 4
         2: .line 523
            aload 0 /* this */
            aload 1 /* factory */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getEntityPersister:(Ljava/lang/String;)Lorg/hibernate/persister/entity/EntityPersister;
            putfield org.hibernate.type.EntityType.associatedEntityPersister:Lorg/hibernate/persister/entity/EntityPersister;
         3: .line 524
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityPersister:Lorg/hibernate/persister/entity/EntityPersister;
            areturn
         4: .line 527
      StackMap locals: org.hibernate.persister.entity.EntityPersister
      StackMap stack:
            aload 2 /* persister */
            areturn
        end local 2 // org.hibernate.persister.entity.EntityPersister persister
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/hibernate/type/EntityType;
            0    5     1    factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            1    5     2  persister  Lorg/hibernate/persister/entity/EntityPersister;
    MethodParameters:
         Name  Flags
      factory  final

  protected final java.lang.Object getIdentifier(java.lang.Object, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 532
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.isNotEmbedded:(Lorg/hibernate/engine/spi/SessionImplementor;)Z
            ifeq 2
         1: .line 533
            aload 1 /* value */
            areturn
         2: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isReferenceToPrimaryKey:()Z
            ifne 3
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            ifnonnull 4
         3: .line 537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            aload 1 /* value */
            aload 2 /* session */
            invokestatic org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/io/Serializable;
            areturn
         4: .line 539
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            ifnonnull 6
         5: .line 540
            aconst_null
            areturn
         6: .line 543
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            astore 3 /* entityPersister */
        start local 3 // org.hibernate.persister.entity.EntityPersister entityPersister
         7: .line 544
            aload 3 /* entityPersister */
            aload 1 /* value */
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            invokeinterface org.hibernate.persister.entity.EntityPersister.getPropertyValue:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            astore 4 /* propertyValue */
        start local 4 // java.lang.Object propertyValue
         8: .line 548
            aload 3 /* entityPersister */
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            invokeinterface org.hibernate.persister.entity.EntityPersister.getPropertyType:(Ljava/lang/String;)Lorg/hibernate/type/Type;
            astore 5 /* type */
        start local 5 // org.hibernate.type.Type type
         9: .line 549
            aload 5 /* type */
            invokeinterface org.hibernate.type.Type.isEntityType:()Z
            ifeq 11
        10: .line 550
            aload 5 /* type */
            checkcast org.hibernate.type.EntityType
            aload 4 /* propertyValue */
            aload 2 /* session */
            invokevirtual org.hibernate.type.EntityType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
            astore 4 /* propertyValue */
        11: .line 553
      StackMap locals: org.hibernate.persister.entity.EntityPersister java.lang.Object org.hibernate.type.Type
      StackMap stack:
            aload 4 /* propertyValue */
            areturn
        end local 5 // org.hibernate.type.Type type
        end local 4 // java.lang.Object propertyValue
        end local 3 // org.hibernate.persister.entity.EntityPersister entityPersister
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0             this  Lorg/hibernate/type/EntityType;
            0   12     1            value  Ljava/lang/Object;
            0   12     2          session  Lorg/hibernate/engine/spi/SessionImplementor;
            7   12     3  entityPersister  Lorg/hibernate/persister/entity/EntityPersister;
            8   12     4    propertyValue  Ljava/lang/Object;
            9   12     5             type  Lorg/hibernate/type/Type;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      value    
      session  

  protected boolean isNotEmbedded(org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionImplementor;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 564
            iconst_0
            ireturn
        end local 1 // org.hibernate.engine.spi.SessionImplementor session
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1  session  Lorg/hibernate/engine/spi/SessionImplementor;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      session  

  public java.lang.String toLoggableString(java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 577
            aload 1 /* value */
            ifnonnull 2
         1: .line 578
            ldc "null"
            areturn
         2: .line 581
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* factory */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            astore 3 /* persister */
        start local 3 // org.hibernate.persister.entity.EntityPersister persister
         3: .line 582
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedEntityName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            astore 4 /* result */
        start local 4 // java.lang.StringBuilder result
         4: .line 584
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.hasIdentifierProperty:()Z
            ifeq 18
         5: .line 585
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getEntityMode:()Lorg/hibernate/EntityMode;
            astore 5 /* entityMode */
        start local 5 // org.hibernate.EntityMode entityMode
         6: .line 587
            aload 5 /* entityMode */
            ifnonnull 11
         7: .line 588
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.isEmbeddedInXML:Z
            ifeq 9
         8: .line 589
            new java.lang.ClassCastException
            dup
            aload 1 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 591
      StackMap locals: org.hibernate.persister.entity.EntityPersister java.lang.StringBuilder org.hibernate.EntityMode
      StackMap stack:
            aload 1 /* value */
            checkcast java.io.Serializable
            astore 6 /* id */
        start local 6 // java.io.Serializable id
        10: .line 592
            goto 16
        end local 6 // java.io.Serializable id
      StackMap locals:
      StackMap stack:
        11: aload 1 /* value */
            instanceof org.hibernate.proxy.HibernateProxy
            ifeq 15
        12: .line 593
            aload 1 /* value */
            checkcast org.hibernate.proxy.HibernateProxy
            astore 7 /* proxy */
        start local 7 // org.hibernate.proxy.HibernateProxy proxy
        13: .line 594
            aload 7 /* proxy */
            invokeinterface org.hibernate.proxy.HibernateProxy.getHibernateLazyInitializer:()Lorg/hibernate/proxy/LazyInitializer;
            invokeinterface org.hibernate.proxy.LazyInitializer.getIdentifier:()Ljava/io/Serializable;
            astore 6 /* id */
        end local 7 // org.hibernate.proxy.HibernateProxy proxy
        start local 6 // java.io.Serializable id
        14: .line 595
            goto 16
        end local 6 // java.io.Serializable id
        15: .line 597
      StackMap locals:
      StackMap stack:
            aload 3 /* persister */
            aload 1 /* value */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifier:(Ljava/lang/Object;)Ljava/io/Serializable;
            astore 6 /* id */
        start local 6 // java.io.Serializable id
        16: .line 600
      StackMap locals: java.io.Serializable
      StackMap stack:
            aload 4 /* result */
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        17: .line 601
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getIdentifierType:()Lorg/hibernate/type/Type;
            aload 6 /* id */
            aload 2 /* factory */
            invokeinterface org.hibernate.type.Type.toLoggableString:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 6 // java.io.Serializable id
        end local 5 // org.hibernate.EntityMode entityMode
        18: .line 604
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.StringBuilder result
        end local 3 // org.hibernate.persister.entity.EntityPersister persister
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Lorg/hibernate/type/EntityType;
            0   19     1       value  Ljava/lang/Object;
            0   19     2     factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            3   19     3   persister  Lorg/hibernate/persister/entity/EntityPersister;
            4   19     4      result  Ljava/lang/StringBuilder;
            6   18     5  entityMode  Lorg/hibernate/EntityMode;
           10   11     6          id  Ljava/io/Serializable;
           14   15     6          id  Ljava/io/Serializable;
           16   18     6          id  Ljava/io/Serializable;
           13   14     7       proxy  Lorg/hibernate/proxy/HibernateProxy;
    MethodParameters:
         Name  Flags
      value    
      factory  

  public abstract boolean isOneToOne();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public boolean isLogicalOneToOne();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.EntityType this
         0: .line 620
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isOneToOne:()Z
            ireturn
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/EntityType;

  org.hibernate.type.Type getIdentifierType(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.Mapping factory
         0: .line 630
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
            astore 2 /* type */
        start local 2 // org.hibernate.type.Type type
         1: .line 634
            aload 2 /* type */
            ifnonnull 4
         2: .line 635
            aload 0 /* this */
            aload 1 /* factory */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            invokeinterface org.hibernate.engine.spi.Mapping.getIdentifierType:(Ljava/lang/String;)Lorg/hibernate/type/Type;
            putfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
         3: .line 636
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
            areturn
         4: .line 639
      StackMap locals: org.hibernate.type.Type
      StackMap stack:
            aload 2 /* type */
            areturn
        end local 2 // org.hibernate.type.Type type
        end local 1 // org.hibernate.engine.spi.Mapping factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hibernate/type/EntityType;
            0    5     1  factory  Lorg/hibernate/engine/spi/Mapping;
            1    5     2     type  Lorg/hibernate/type/Type;
    MethodParameters:
         Name  Flags
      factory  final

  org.hibernate.type.Type getIdentifierType(org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Lorg/hibernate/engine/spi/SessionImplementor;)Lorg/hibernate/type/Type;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 650
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
            astore 2 /* type */
        start local 2 // org.hibernate.type.Type type
         1: .line 651
            aload 2 /* type */
            ifnonnull 4
         2: .line 652
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.EntityType.getIdentifierType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            putfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
         3: .line 653
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.associatedIdentifierType:Lorg/hibernate/type/Type;
            areturn
         4: .line 656
      StackMap locals: org.hibernate.type.Type
      StackMap stack:
            aload 2 /* type */
            areturn
        end local 2 // org.hibernate.type.Type type
        end local 1 // org.hibernate.engine.spi.SessionImplementor session
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hibernate/type/EntityType;
            0    5     1  session  Lorg/hibernate/engine/spi/SessionImplementor;
            1    5     2     type  Lorg/hibernate/type/Type;
    MethodParameters:
         Name  Flags
      session  final

  public final org.hibernate.type.Type getIdentifierOrUniqueKeyType(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.Mapping factory
         0: .line 671
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isReferenceToPrimaryKey:()Z
            ifne 1
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            ifnonnull 2
         1: .line 672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* factory */
            invokevirtual org.hibernate.type.EntityType.getIdentifierType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            areturn
         2: .line 675
      StackMap locals:
      StackMap stack:
            aload 1 /* factory */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            invokeinterface org.hibernate.engine.spi.Mapping.getReferencedPropertyType:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/type/Type;
            astore 2 /* type */
        start local 2 // org.hibernate.type.Type type
         3: .line 676
            aload 2 /* type */
            invokeinterface org.hibernate.type.Type.isEntityType:()Z
            ifeq 5
         4: .line 677
            aload 2 /* type */
            checkcast org.hibernate.type.EntityType
            aload 1 /* factory */
            invokevirtual org.hibernate.type.EntityType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            astore 2 /* type */
         5: .line 679
      StackMap locals: org.hibernate.type.Type
      StackMap stack:
            aload 2 /* type */
            areturn
        end local 2 // org.hibernate.type.Type type
        end local 1 // org.hibernate.engine.spi.Mapping factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/hibernate/type/EntityType;
            0    6     1  factory  Lorg/hibernate/engine/spi/Mapping;
            3    6     2     type  Lorg/hibernate/type/Type;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      factory  

  public final java.lang.String getIdentifierOrUniqueKeyPropertyName(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // org.hibernate.engine.spi.Mapping factory
         0: .line 693
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isReferenceToPrimaryKey:()Z
            ifne 1
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            ifnonnull 2
         1: .line 694
      StackMap locals:
      StackMap stack:
            aload 1 /* factory */
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
            invokeinterface org.hibernate.engine.spi.Mapping.getIdentifierPropertyName:(Ljava/lang/String;)Ljava/lang/String;
            areturn
         2: .line 697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.uniqueKeyPropertyName:Ljava/lang/String;
            areturn
        end local 1 // org.hibernate.engine.spi.Mapping factory
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/hibernate/type/EntityType;
            0    3     1  factory  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      factory  

  protected abstract boolean isNullable();
    descriptor: ()Z
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected final java.lang.Object resolveIdentifier(java.io.Serializable, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.io.Serializable id
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 712
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.unwrapProxy:Z
            ifeq 4
         1: .line 713
            aload 0 /* this */
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
         2: .line 714
            invokeinterface org.hibernate.persister.entity.EntityPersister.isInstrumented:()Z
            ifeq 4
         3: .line 712
            iconst_1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* isProxyUnwrapEnabled */
        start local 3 // boolean isProxyUnwrapEnabled
         6: .line 716
            aload 2 /* session */
         7: .line 717
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:()Ljava/lang/String;
         8: .line 718
            aload 1 /* id */
         9: .line 719
            aload 0 /* this */
            getfield org.hibernate.type.EntityType.eager:Z
        10: .line 720
            aload 0 /* this */
            invokevirtual org.hibernate.type.EntityType.isNullable:()Z
            ifeq 11
            iload 3 /* isProxyUnwrapEnabled */
            ifne 11
            iconst_1
            goto 12
      StackMap locals: org.hibernate.type.EntityType java.io.Serializable org.hibernate.engine.spi.SessionImplementor int
      StackMap stack: org.hibernate.engine.spi.SessionImplementor java.lang.String java.io.Serializable int
        11: iconst_0
        12: .line 716
      StackMap locals: org.hibernate.type.EntityType java.io.Serializable org.hibernate.engine.spi.SessionImplementor int
      StackMap stack: org.hibernate.engine.spi.SessionImplementor java.lang.String java.io.Serializable int int
            invokeinterface org.hibernate.engine.spi.SessionImplementor.internalLoad:(Ljava/lang/String;Ljava/io/Serializable;ZZ)Ljava/lang/Object;
            astore 4 /* proxyOrEntity */
        start local 4 // java.lang.Object proxyOrEntity
        13: .line 723
            aload 4 /* proxyOrEntity */
            instanceof org.hibernate.proxy.HibernateProxy
            ifeq 16
        14: .line 724
            aload 4 /* proxyOrEntity */
            checkcast org.hibernate.proxy.HibernateProxy
            invokeinterface org.hibernate.proxy.HibernateProxy.getHibernateLazyInitializer:()Lorg/hibernate/proxy/LazyInitializer;
        15: .line 725
            iload 3 /* isProxyUnwrapEnabled */
            invokeinterface org.hibernate.proxy.LazyInitializer.setUnwrap:(Z)V
        16: .line 728
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* proxyOrEntity */
            areturn
        end local 4 // java.lang.Object proxyOrEntity
        end local 3 // boolean isProxyUnwrapEnabled
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.io.Serializable id
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   17     0                  this  Lorg/hibernate/type/EntityType;
            0   17     1                    id  Ljava/io/Serializable;
            0   17     2               session  Lorg/hibernate/engine/spi/SessionImplementor;
            6   17     3  isProxyUnwrapEnabled  Z
           13   17     4         proxyOrEntity  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      id       
      session  

  protected boolean isNull(java.lang.Object, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.Object owner
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 732
            iconst_0
            ireturn
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.lang.Object owner
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/EntityType;
            0    1     1    owner  Ljava/lang/Object;
            0    1     2  session  Lorg/hibernate/engine/spi/SessionImplementor;
    MethodParameters:
         Name  Flags
      owner    
      session  

  public java.lang.Object loadByUniqueKey(java.lang.String, java.lang.String, java.lang.Object, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=10, args_size=5
        start local 0 // org.hibernate.type.EntityType this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.String uniqueKeyPropertyName
        start local 3 // java.lang.Object key
        start local 4 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 750
            aload 4 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            astore 5 /* factory */
        start local 5 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         1: .line 751
            aload 5 /* factory */
            aload 1 /* entityName */
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getEntityPersister:(Ljava/lang/String;)Lorg/hibernate/persister/entity/EntityPersister;
            checkcast org.hibernate.persister.entity.UniqueKeyLoadable
            astore 6 /* persister */
        start local 6 // org.hibernate.persister.entity.UniqueKeyLoadable persister
         2: .line 755
            new org.hibernate.engine.spi.EntityUniqueKey
            dup
         3: .line 756
            aload 1 /* entityName */
         4: .line 757
            aload 2 /* uniqueKeyPropertyName */
         5: .line 758
            aload 3 /* key */
         6: .line 759
            aload 0 /* this */
            aload 5 /* factory */
            invokevirtual org.hibernate.type.EntityType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
         7: .line 760
            aload 6 /* persister */
            invokeinterface org.hibernate.persister.entity.UniqueKeyLoadable.getEntityMode:()Lorg/hibernate/EntityMode;
         8: .line 761
            aload 4 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
         9: .line 755
            invokespecial org.hibernate.engine.spi.EntityUniqueKey.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/type/Type;Lorg/hibernate/EntityMode;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
            astore 7 /* euk */
        start local 7 // org.hibernate.engine.spi.EntityUniqueKey euk
        10: .line 764
            aload 4 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            astore 8 /* persistenceContext */
        start local 8 // org.hibernate.engine.spi.PersistenceContext persistenceContext
        11: .line 765
            aload 8 /* persistenceContext */
            aload 7 /* euk */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.getEntity:(Lorg/hibernate/engine/spi/EntityUniqueKey;)Ljava/lang/Object;
            astore 9 /* result */
        start local 9 // java.lang.Object result
        12: .line 766
            aload 9 /* result */
            ifnonnull 14
        13: .line 767
            aload 6 /* persister */
            aload 2 /* uniqueKeyPropertyName */
            aload 3 /* key */
            aload 4 /* session */
            invokeinterface org.hibernate.persister.entity.UniqueKeyLoadable.loadByUniqueKey:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
            astore 9 /* result */
        14: .line 769
      StackMap locals: org.hibernate.type.EntityType java.lang.String java.lang.String java.lang.Object org.hibernate.engine.spi.SessionImplementor org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.persister.entity.UniqueKeyLoadable org.hibernate.engine.spi.EntityUniqueKey org.hibernate.engine.spi.PersistenceContext java.lang.Object
      StackMap stack:
            aload 9 /* result */
            ifnonnull 15
            aconst_null
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 8 /* persistenceContext */
            aload 9 /* result */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.proxyFor:(Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
        16: areturn
        end local 9 // java.lang.Object result
        end local 8 // org.hibernate.engine.spi.PersistenceContext persistenceContext
        end local 7 // org.hibernate.engine.spi.EntityUniqueKey euk
        end local 6 // org.hibernate.persister.entity.UniqueKeyLoadable persister
        end local 5 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 4 // org.hibernate.engine.spi.SessionImplementor session
        end local 3 // java.lang.Object key
        end local 2 // java.lang.String uniqueKeyPropertyName
        end local 1 // java.lang.String entityName
        end local 0 // org.hibernate.type.EntityType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   17     0                   this  Lorg/hibernate/type/EntityType;
            0   17     1             entityName  Ljava/lang/String;
            0   17     2  uniqueKeyPropertyName  Ljava/lang/String;
            0   17     3                    key  Ljava/lang/Object;
            0   17     4                session  Lorg/hibernate/engine/spi/SessionImplementor;
            1   17     5                factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            2   17     6              persister  Lorg/hibernate/persister/entity/UniqueKeyLoadable;
           10   17     7                    euk  Lorg/hibernate/engine/spi/EntityUniqueKey;
           11   17     8     persistenceContext  Lorg/hibernate/engine/spi/PersistenceContext;
           12   17     9                 result  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
                       Name  Flags
      entityName             
      uniqueKeyPropertyName  
      key                    
      session                
}
SourceFile: "EntityType.java"
InnerClasses:
  public abstract TypeScope = org.hibernate.type.TypeFactory$TypeScope of org.hibernate.type.TypeFactory