public class org.hibernate.type.ManyToOneType extends org.hibernate.type.EntityType
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.type.ManyToOneType
  super_class: org.hibernate.type.EntityType
{
  private final java.lang.String propertyName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private boolean isLogicalOneToOne;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String referencedEntityName
         0: .line 40
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* referencedEntityName */
            iconst_0
            invokespecial org.hibernate.type.ManyToOneType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Z)V
         1: .line 41
            return
        end local 2 // java.lang.String referencedEntityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lorg/hibernate/type/ManyToOneType;
            0    2     1                 scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    2     2  referencedEntityName  Ljava/lang/String;
    MethodParameters:
                      Name  Flags
      scope                 
      referencedEntityName  

  public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=4
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String referencedEntityName
        start local 3 // boolean lazy
         0: .line 52
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* referencedEntityName */
            iconst_1
            aconst_null
            iload 3 /* lazy */
            iconst_1
            iconst_0
            iconst_0
            invokespecial org.hibernate.type.ManyToOneType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZZZ)V
         1: .line 53
            return
        end local 3 // boolean lazy
        end local 2 // java.lang.String referencedEntityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lorg/hibernate/type/ManyToOneType;
            0    2     1                 scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    2     2  referencedEntityName  Ljava/lang/String;
            0    2     3                  lazy  Z
    MethodParameters:
                      Name  Flags
      scope                 
      referencedEntityName  
      lazy                  

  public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, java.lang.String, boolean, boolean, boolean, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Ljava/lang/String;ZZZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=9
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String referencedEntityName
        start local 3 // java.lang.String uniqueKeyPropertyName
        start local 4 // boolean lazy
        start local 5 // boolean unwrapProxy
        start local 6 // boolean isEmbeddedInXML
        start local 7 // boolean ignoreNotFound
        start local 8 // boolean isLogicalOneToOne
         0: .line 69
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* referencedEntityName */
            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 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 int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int
         2: aload 3 /* uniqueKeyPropertyName */
            iload 4 /* lazy */
            iload 5 /* unwrapProxy */
            iload 7 /* ignoreNotFound */
            iload 8 /* isLogicalOneToOne */
            invokespecial org.hibernate.type.ManyToOneType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZZZ)V
         3: .line 70
            return
        end local 8 // boolean isLogicalOneToOne
        end local 7 // boolean ignoreNotFound
        end local 6 // boolean isEmbeddedInXML
        end local 5 // boolean unwrapProxy
        end local 4 // boolean lazy
        end local 3 // java.lang.String uniqueKeyPropertyName
        end local 2 // java.lang.String referencedEntityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    4     0                   this  Lorg/hibernate/type/ManyToOneType;
            0    4     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    4     2   referencedEntityName  Ljava/lang/String;
            0    4     3  uniqueKeyPropertyName  Ljava/lang/String;
            0    4     4                   lazy  Z
            0    4     5            unwrapProxy  Z
            0    4     6        isEmbeddedInXML  Z
            0    4     7         ignoreNotFound  Z
            0    4     8      isLogicalOneToOne  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      scope                  
      referencedEntityName   
      uniqueKeyPropertyName  
      lazy                   
      unwrapProxy            
      isEmbeddedInXML        
      ignoreNotFound         
      isLogicalOneToOne      

  public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, boolean, java.lang.String, boolean, boolean, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=9, args_size=9
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String referencedEntityName
        start local 3 // boolean referenceToPrimaryKey
        start local 4 // java.lang.String uniqueKeyPropertyName
        start local 5 // boolean lazy
        start local 6 // boolean unwrapProxy
        start local 7 // boolean ignoreNotFound
        start local 8 // boolean isLogicalOneToOne
         0: .line 85
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* referencedEntityName */
            iload 3 /* referenceToPrimaryKey */
            aload 4 /* uniqueKeyPropertyName */
            aconst_null
            iload 5 /* lazy */
            iload 6 /* unwrapProxy */
            iload 7 /* ignoreNotFound */
            iload 8 /* isLogicalOneToOne */
            invokespecial org.hibernate.type.ManyToOneType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;ZZZZ)V
         1: .line 86
            return
        end local 8 // boolean isLogicalOneToOne
        end local 7 // boolean ignoreNotFound
        end local 6 // boolean unwrapProxy
        end local 5 // boolean lazy
        end local 4 // java.lang.String uniqueKeyPropertyName
        end local 3 // boolean referenceToPrimaryKey
        end local 2 // java.lang.String referencedEntityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Lorg/hibernate/type/ManyToOneType;
            0    2     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    2     2   referencedEntityName  Ljava/lang/String;
            0    2     3  referenceToPrimaryKey  Z
            0    2     4  uniqueKeyPropertyName  Ljava/lang/String;
            0    2     5                   lazy  Z
            0    2     6            unwrapProxy  Z
            0    2     7         ignoreNotFound  Z
            0    2     8      isLogicalOneToOne  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      scope                  
      referencedEntityName   
      referenceToPrimaryKey  
      uniqueKeyPropertyName  
      lazy                   
      unwrapProxy            
      ignoreNotFound         
      isLogicalOneToOne      

  public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.String, boolean, java.lang.String, java.lang.String, boolean, boolean, boolean, boolean);
    descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;ZZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=10
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        start local 2 // java.lang.String referencedEntityName
        start local 3 // boolean referenceToPrimaryKey
        start local 4 // java.lang.String uniqueKeyPropertyName
        start local 5 // java.lang.String propertyName
        start local 6 // boolean lazy
        start local 7 // boolean unwrapProxy
        start local 8 // boolean ignoreNotFound
        start local 9 // boolean isLogicalOneToOne
         0: .line 98
            aload 0 /* this */
            aload 1 /* scope */
            aload 2 /* referencedEntityName */
            iload 3 /* referenceToPrimaryKey */
            aload 4 /* uniqueKeyPropertyName */
            iload 6 /* lazy */
            ifeq 1
            iconst_0
            goto 2
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int java.lang.String java.lang.String int int int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int java.lang.String
         1: iconst_1
      StackMap locals: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int java.lang.String java.lang.String int int int int
      StackMap stack: uninitialized-this org.hibernate.type.TypeFactory$TypeScope java.lang.String int java.lang.String int
         2: iload 7 /* unwrapProxy */
            invokespecial org.hibernate.type.EntityType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;ZLjava/lang/String;ZZ)V
         3: .line 99
            aload 0 /* this */
            aload 5 /* propertyName */
            putfield org.hibernate.type.ManyToOneType.propertyName:Ljava/lang/String;
         4: .line 100
            aload 0 /* this */
            iload 8 /* ignoreNotFound */
            putfield org.hibernate.type.ManyToOneType.ignoreNotFound:Z
         5: .line 101
            aload 0 /* this */
            iload 9 /* isLogicalOneToOne */
            putfield org.hibernate.type.ManyToOneType.isLogicalOneToOne:Z
         6: .line 102
            return
        end local 9 // boolean isLogicalOneToOne
        end local 8 // boolean ignoreNotFound
        end local 7 // boolean unwrapProxy
        end local 6 // boolean lazy
        end local 5 // java.lang.String propertyName
        end local 4 // java.lang.String uniqueKeyPropertyName
        end local 3 // boolean referenceToPrimaryKey
        end local 2 // java.lang.String referencedEntityName
        end local 1 // org.hibernate.type.TypeFactory$TypeScope scope
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    7     0                   this  Lorg/hibernate/type/ManyToOneType;
            0    7     1                  scope  Lorg/hibernate/type/TypeFactory$TypeScope;
            0    7     2   referencedEntityName  Ljava/lang/String;
            0    7     3  referenceToPrimaryKey  Z
            0    7     4  uniqueKeyPropertyName  Ljava/lang/String;
            0    7     5           propertyName  Ljava/lang/String;
            0    7     6                   lazy  Z
            0    7     7            unwrapProxy  Z
            0    7     8         ignoreNotFound  Z
            0    7     9      isLogicalOneToOne  Z
    MethodParameters:
                       Name  Flags
      scope                  
      referencedEntityName   
      referenceToPrimaryKey  
      uniqueKeyPropertyName  
      propertyName           
      lazy                   
      unwrapProxy            
      ignoreNotFound         
      isLogicalOneToOne      

  public void <init>(org.hibernate.type.ManyToOneType, java.lang.String);
    descriptor: (Lorg/hibernate/type/ManyToOneType;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.type.ManyToOneType original
        start local 2 // java.lang.String superTypeEntityName
         0: .line 105
            aload 0 /* this */
            aload 1 /* original */
            aload 2 /* superTypeEntityName */
            invokespecial org.hibernate.type.EntityType.<init>:(Lorg/hibernate/type/EntityType;Ljava/lang/String;)V
         1: .line 106
            aload 0 /* this */
            aload 1 /* original */
            getfield org.hibernate.type.ManyToOneType.propertyName:Ljava/lang/String;
            putfield org.hibernate.type.ManyToOneType.propertyName:Ljava/lang/String;
         2: .line 107
            aload 0 /* this */
            aload 1 /* original */
            getfield org.hibernate.type.ManyToOneType.ignoreNotFound:Z
            putfield org.hibernate.type.ManyToOneType.ignoreNotFound:Z
         3: .line 108
            aload 0 /* this */
            aload 1 /* original */
            getfield org.hibernate.type.ManyToOneType.isLogicalOneToOne:Z
            putfield org.hibernate.type.ManyToOneType.isLogicalOneToOne:Z
         4: .line 109
            return
        end local 2 // java.lang.String superTypeEntityName
        end local 1 // org.hibernate.type.ManyToOneType original
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lorg/hibernate/type/ManyToOneType;
            0    5     1             original  Lorg/hibernate/type/ManyToOneType;
            0    5     2  superTypeEntityName  Ljava/lang/String;
    MethodParameters:
                     Name  Flags
      original             
      superTypeEntityName  

  protected boolean isNullable();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.ManyToOneType this
         0: .line 113
            aload 0 /* this */
            getfield org.hibernate.type.ManyToOneType.ignoreNotFound:Z
            ireturn
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/ManyToOneType;

  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.ManyToOneType this
         0: .line 118
            aload 0 /* this */
            getfield org.hibernate.type.ManyToOneType.propertyName:Ljava/lang/String;
            areturn
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/ManyToOneType;

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

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

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

  public int getColumnSpan(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.engine.spi.Mapping mapping
         0: .line 142
            aload 0 /* this */
            aload 1 /* mapping */
            invokevirtual org.hibernate.type.ManyToOneType.requireIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* mapping */
            invokeinterface org.hibernate.type.Type.getColumnSpan:(Lorg/hibernate/engine/spi/Mapping;)I
            ireturn
        end local 1 // org.hibernate.engine.spi.Mapping mapping
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/ManyToOneType;
            0    1     1  mapping  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      mapping  

  public int[] sqlTypes(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.engine.spi.Mapping mapping
         0: .line 147
            aload 0 /* this */
            aload 1 /* mapping */
            invokevirtual org.hibernate.type.ManyToOneType.requireIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* mapping */
            invokeinterface org.hibernate.type.Type.sqlTypes:(Lorg/hibernate/engine/spi/Mapping;)[I
            areturn
        end local 1 // org.hibernate.engine.spi.Mapping mapping
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/ManyToOneType;
            0    1     1  mapping  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      mapping  

  public org.hibernate.engine.jdbc.Size[] dictatedSizes(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)[Lorg/hibernate/engine/jdbc/Size;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.engine.spi.Mapping mapping
         0: .line 152
            aload 0 /* this */
            aload 1 /* mapping */
            invokevirtual org.hibernate.type.ManyToOneType.requireIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* mapping */
            invokeinterface org.hibernate.type.Type.dictatedSizes:(Lorg/hibernate/engine/spi/Mapping;)[Lorg/hibernate/engine/jdbc/Size;
            areturn
        end local 1 // org.hibernate.engine.spi.Mapping mapping
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/ManyToOneType;
            0    1     1  mapping  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      mapping  

  public org.hibernate.engine.jdbc.Size[] defaultSizes(org.hibernate.engine.spi.Mapping);
    descriptor: (Lorg/hibernate/engine/spi/Mapping;)[Lorg/hibernate/engine/jdbc/Size;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // org.hibernate.engine.spi.Mapping mapping
         0: .line 157
            aload 0 /* this */
            aload 1 /* mapping */
            invokevirtual org.hibernate.type.ManyToOneType.requireIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
            aload 1 /* mapping */
            invokeinterface org.hibernate.type.Type.defaultSizes:(Lorg/hibernate/engine/spi/Mapping;)[Lorg/hibernate/engine/jdbc/Size;
            areturn
        end local 1 // org.hibernate.engine.spi.Mapping mapping
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/ManyToOneType;
            0    1     1  mapping  Lorg/hibernate/engine/spi/Mapping;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      mapping  

  public org.hibernate.type.ForeignKeyDirection getForeignKeyDirection();
    descriptor: ()Lorg/hibernate/type/ForeignKeyDirection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.type.ManyToOneType this
         0: .line 162
            getstatic org.hibernate.type.ForeignKeyDirection.FROM_PARENT:Lorg/hibernate/type/ForeignKeyDirection;
            areturn
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/type/ManyToOneType;

  public java.lang.Object hydrate(java.sql.ResultSet, java.lang.String[], org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object);
    descriptor: (Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.sql.ResultSet rs
        start local 2 // java.lang.String[] names
        start local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 4 // java.lang.Object owner
         0: .line 183
            aload 0 /* this */
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
         1: .line 184
            aload 1 /* rs */
            aload 2 /* names */
            aload 3 /* session */
            aconst_null
            invokeinterface org.hibernate.type.Type.hydrate:(Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 183
            astore 5 /* hydratedId */
        start local 5 // java.lang.Object hydratedId
         3: .line 186
            aload 5 /* hydratedId */
            ifnull 8
         4: .line 187
            aload 0 /* this */
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
         5: .line 188
            aload 5 /* hydratedId */
            aload 3 /* session */
            aconst_null
            invokeinterface org.hibernate.type.Type.resolve:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
         6: .line 187
            checkcast java.io.Serializable
            astore 6 /* id */
        start local 6 // java.io.Serializable id
         7: .line 189
            goto 9
        end local 6 // java.io.Serializable id
         8: .line 191
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            astore 6 /* id */
        start local 6 // java.io.Serializable id
         9: .line 193
      StackMap locals: java.io.Serializable
      StackMap stack:
            aload 0 /* this */
            aload 6 /* id */
            aload 3 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.scheduleBatchLoadIfNeeded:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
        10: .line 194
            aload 6 /* id */
            areturn
        end local 6 // java.io.Serializable id
        end local 5 // java.lang.Object hydratedId
        end local 4 // java.lang.Object owner
        end local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 2 // java.lang.String[] names
        end local 1 // java.sql.ResultSet rs
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lorg/hibernate/type/ManyToOneType;
            0   11     1          rs  Ljava/sql/ResultSet;
            0   11     2       names  [Ljava/lang/String;
            0   11     3     session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0   11     4       owner  Ljava/lang/Object;
            3   11     5  hydratedId  Ljava/lang/Object;
            7    8     6          id  Ljava/io/Serializable;
            9   11     6          id  Ljava/io/Serializable;
    Exceptions:
      throws org.hibernate.HibernateException, java.sql.SQLException
    MethodParameters:
         Name  Flags
      rs       
      names    
      session  
      owner    

  private void scheduleBatchLoadIfNeeded(java.io.Serializable, org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.io.Serializable id
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 203
            aload 0 /* this */
            getfield org.hibernate.type.ManyToOneType.uniqueKeyPropertyName:Ljava/lang/String;
            ifnonnull 6
            aload 1 /* id */
            ifnull 6
         1: .line 204
            aload 0 /* this */
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.ManyToOneType.getAssociatedEntityPersister:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/persister/entity/EntityPersister;
            astore 3 /* persister */
        start local 3 // org.hibernate.persister.entity.EntityPersister persister
         2: .line 205
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.isBatchLoadable:()Z
            ifeq 6
         3: .line 206
            aload 2 /* session */
            aload 1 /* id */
            aload 3 /* persister */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.generateEntityKey:(Ljava/io/Serializable;Lorg/hibernate/persister/entity/EntityPersister;)Lorg/hibernate/engine/spi/EntityKey;
            astore 4 /* entityKey */
        start local 4 // org.hibernate.engine.spi.EntityKey entityKey
         4: .line 207
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            aload 4 /* entityKey */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.containsEntity:(Lorg/hibernate/engine/spi/EntityKey;)Z
            ifne 6
         5: .line 208
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            invokeinterface org.hibernate.engine.spi.PersistenceContext.getBatchFetchQueue:()Lorg/hibernate/engine/spi/BatchFetchQueue;
            aload 4 /* entityKey */
            invokevirtual org.hibernate.engine.spi.BatchFetchQueue.addBatchLoadableEntityKey:(Lorg/hibernate/engine/spi/EntityKey;)V
        end local 4 // org.hibernate.engine.spi.EntityKey entityKey
        end local 3 // org.hibernate.persister.entity.EntityPersister persister
         6: .line 212
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.io.Serializable id
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/hibernate/type/ManyToOneType;
            0    7     1         id  Ljava/io/Serializable;
            0    7     2    session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            2    6     3  persister  Lorg/hibernate/persister/entity/EntityPersister;
            4    6     4  entityKey  Lorg/hibernate/engine/spi/EntityKey;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
         Name  Flags
      id       
      session  

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

  public boolean isModified(java.lang.Object, java.lang.Object, boolean[], org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;[ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object old
        start local 2 // java.lang.Object current
        start local 3 // boolean[] checkable
        start local 4 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 225
            aload 2 /* current */
            ifnonnull 3
         1: .line 226
            aload 1 /* old */
            ifnull 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 228
      StackMap locals:
      StackMap stack:
            aload 1 /* old */
            ifnonnull 5
         4: .line 230
            iconst_1
            ireturn
         5: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierOrUniqueKeyType:(Lorg/hibernate/engine/spi/Mapping;)Lorg/hibernate/type/Type;
         6: .line 234
            aload 1 /* old */
            aload 0 /* this */
            aload 2 /* current */
            aload 4 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            aload 4 /* session */
            invokeinterface org.hibernate.type.Type.isDirty:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
         7: .line 233
            ireturn
        end local 4 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 3 // boolean[] checkable
        end local 2 // java.lang.Object current
        end local 1 // java.lang.Object old
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hibernate/type/ManyToOneType;
            0    8     1        old  Ljava/lang/Object;
            0    8     2    current  Ljava/lang/Object;
            0    8     3  checkable  [Z
            0    8     4    session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
           Name  Flags
      old        
      current    
      checkable  
      session    

  public java.lang.Object resolve(java.lang.Object, org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Boolean);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;Ljava/lang/Boolean;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=9, args_size=5
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 3 // java.lang.Object owner
        start local 4 // java.lang.Boolean overridingEager
         0: .line 239
            aload 0 /* this */
            aload 1 /* value */
            aload 2 /* session */
            aload 3 /* owner */
            aload 4 /* overridingEager */
            invokespecial org.hibernate.type.EntityType.resolve:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;Ljava/lang/Boolean;)Ljava/lang/Object;
            astore 5 /* resolvedValue */
        start local 5 // java.lang.Object resolvedValue
         1: .line 240
            aload 0 /* this */
            getfield org.hibernate.type.ManyToOneType.isLogicalOneToOne:Z
            ifeq 14
            aload 1 /* value */
            ifnull 14
            aload 0 /* this */
            invokevirtual org.hibernate.type.ManyToOneType.getPropertyName:()Ljava/lang/String;
            ifnull 14
         2: .line 241
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            aload 3 /* owner */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.getEntry:(Ljava/lang/Object;)Lorg/hibernate/engine/spi/EntityEntry;
            astore 6 /* entry */
        start local 6 // org.hibernate.engine.spi.EntityEntry entry
         3: .line 242
            aload 6 /* entry */
            ifnull 14
         4: .line 243
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getMetamodel:()Lorg/hibernate/metamodel/spi/MetamodelImplementor;
            aload 6 /* entry */
            invokeinterface org.hibernate.engine.spi.EntityEntry.getEntityName:()Ljava/lang/String;
            invokeinterface org.hibernate.metamodel.spi.MetamodelImplementor.entityPersister:(Ljava/lang/String;)Lorg/hibernate/persister/entity/EntityPersister;
            checkcast org.hibernate.persister.entity.Loadable
            astore 7 /* ownerPersister */
        start local 7 // org.hibernate.persister.entity.Loadable ownerPersister
         5: .line 244
            new org.hibernate.engine.spi.EntityUniqueKey
            dup
         6: .line 245
            aload 7 /* ownerPersister */
            invokeinterface org.hibernate.persister.entity.Loadable.getEntityName:()Ljava/lang/String;
         7: .line 246
            aload 0 /* this */
            invokevirtual org.hibernate.type.ManyToOneType.getPropertyName:()Ljava/lang/String;
         8: .line 247
            aload 1 /* value */
         9: .line 248
            aload 0 /* this */
        10: .line 249
            aload 7 /* ownerPersister */
            invokeinterface org.hibernate.persister.entity.Loadable.getEntityMode:()Lorg/hibernate/EntityMode;
        11: .line 250
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
        12: .line 244
            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 8 /* entityKey */
        start local 8 // org.hibernate.engine.spi.EntityUniqueKey entityKey
        13: .line 252
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            aload 8 /* entityKey */
            aload 3 /* owner */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.addEntity:(Lorg/hibernate/engine/spi/EntityUniqueKey;Ljava/lang/Object;)V
        end local 8 // org.hibernate.engine.spi.EntityUniqueKey entityKey
        end local 7 // org.hibernate.persister.entity.Loadable ownerPersister
        end local 6 // org.hibernate.engine.spi.EntityEntry entry
        14: .line 255
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 5 /* resolvedValue */
            areturn
        end local 5 // java.lang.Object resolvedValue
        end local 4 // java.lang.Boolean overridingEager
        end local 3 // java.lang.Object owner
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   15     0             this  Lorg/hibernate/type/ManyToOneType;
            0   15     1            value  Ljava/lang/Object;
            0   15     2          session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0   15     3            owner  Ljava/lang/Object;
            0   15     4  overridingEager  Ljava/lang/Boolean;
            1   15     5    resolvedValue  Ljava/lang/Object;
            3   14     6            entry  Lorg/hibernate/engine/spi/EntityEntry;
            5   14     7   ownerPersister  Lorg/hibernate/persister/entity/Loadable;
           13   14     8        entityKey  Lorg/hibernate/engine/spi/EntityUniqueKey;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
                 Name  Flags
      value            
      session          
      owner            
      overridingEager  

  public java.io.Serializable disassemble(java.lang.Object, org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 3 // java.lang.Object owner
         0: .line 264
            aload 1 /* value */
            ifnonnull 2
         1: .line 265
            aconst_null
            areturn
         2: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.type.ManyToOneType.getAssociatedEntityName:()Ljava/lang/String;
         3: .line 272
            aload 1 /* value */
         4: .line 273
            aload 2 /* session */
         5: .line 270
            invokestatic org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/io/Serializable;
            astore 4 /* id */
        start local 4 // java.lang.Object id
         6: .line 275
            aload 4 /* id */
            ifnonnull 12
         7: .line 276
            new org.hibernate.AssertionFailure
            dup
         8: .line 277
            new java.lang.StringBuilder
            dup
            ldc "cannot cache a reference to an object with a null id: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 278
            aload 0 /* this */
            invokevirtual org.hibernate.type.ManyToOneType.getAssociatedEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 277
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 276
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 281
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierType:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/type/Type;
            aload 4 /* id */
            aload 2 /* session */
            aload 3 /* owner */
            invokeinterface org.hibernate.type.Type.disassemble:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
            areturn
        end local 4 // java.lang.Object id
        end local 3 // java.lang.Object owner
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/hibernate/type/ManyToOneType;
            0   13     1    value  Ljava/lang/Object;
            0   13     2  session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0   13     3    owner  Ljava/lang/Object;
            6   13     4       id  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      value    
      session  
      owner    

  public java.lang.Object assemble(java.io.Serializable, org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.io.Serializable oid
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 3 // java.lang.Object owner
         0: .line 294
            aload 0 /* this */
            aload 1 /* oid */
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.assembleId:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/io/Serializable;
            astore 4 /* id */
        start local 4 // java.io.Serializable id
         1: .line 296
            aload 4 /* id */
            ifnonnull 3
         2: .line 297
            aconst_null
            areturn
         3: .line 300
      StackMap locals: java.io.Serializable
      StackMap stack:
            aload 0 /* this */
            aload 4 /* id */
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.resolveIdentifier:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            areturn
        end local 4 // java.io.Serializable id
        end local 3 // java.lang.Object owner
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.io.Serializable oid
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hibernate/type/ManyToOneType;
            0    4     1      oid  Ljava/io/Serializable;
            0    4     2  session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0    4     3    owner  Ljava/lang/Object;
            1    4     4       id  Ljava/io/Serializable;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      oid      
      session  
      owner    

  private java.io.Serializable assembleId(java.io.Serializable, org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/io/Serializable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.io.Serializable oid
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 306
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierType:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/type/Type;
            aload 1 /* oid */
            aload 2 /* session */
            aconst_null
            invokeinterface org.hibernate.type.Type.assemble:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.io.Serializable
            areturn
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.io.Serializable oid
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/type/ManyToOneType;
            0    1     1      oid  Ljava/io/Serializable;
            0    1     2  session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
    MethodParameters:
         Name  Flags
      oid      
      session  

  public void beforeAssemble(java.io.Serializable, org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.io.Serializable oid
        start local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 311
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* oid */
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.assembleId:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/io/Serializable;
            aload 2 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.scheduleBatchLoadIfNeeded:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
         1: .line 312
            return
        end local 2 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 1 // java.io.Serializable oid
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/hibernate/type/ManyToOneType;
            0    2     1      oid  Ljava/io/Serializable;
            0    2     2  session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
    MethodParameters:
         Name  Flags
      oid      
      session  

  public boolean[] toColumnNullness(java.lang.Object, org.hibernate.engine.spi.Mapping);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/Mapping;)[Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object value
        start local 2 // org.hibernate.engine.spi.Mapping mapping
         0: .line 316
            aload 0 /* this */
            aload 2 /* mapping */
            invokevirtual org.hibernate.type.ManyToOneType.getColumnSpan:(Lorg/hibernate/engine/spi/Mapping;)I
            newarray 4
            astore 3 /* result */
        start local 3 // boolean[] result
         1: .line 317
            aload 1 /* value */
            ifnull 3
         2: .line 318
            aload 3 /* result */
            iconst_1
            invokestatic java.util.Arrays.fill:([ZZ)V
         3: .line 320
      StackMap locals: boolean[]
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // boolean[] result
        end local 2 // org.hibernate.engine.spi.Mapping mapping
        end local 1 // java.lang.Object value
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hibernate/type/ManyToOneType;
            0    4     1    value  Ljava/lang/Object;
            0    4     2  mapping  Lorg/hibernate/engine/spi/Mapping;
            1    4     3   result  [Z
    MethodParameters:
         Name  Flags
      value    
      mapping  

  public boolean isDirty(java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object old
        start local 2 // java.lang.Object current
        start local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 328
            aload 0 /* this */
            aload 1 /* old */
            aload 2 /* current */
            invokevirtual org.hibernate.type.ManyToOneType.isSame:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 2
         1: .line 329
            iconst_0
            ireturn
         2: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* old */
            aload 3 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            astore 4 /* oldid */
        start local 4 // java.lang.Object oldid
         3: .line 332
            aload 0 /* this */
            aload 2 /* current */
            aload 3 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            astore 5 /* newid */
        start local 5 // java.lang.Object newid
         4: .line 333
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierType:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/type/Type;
            aload 4 /* oldid */
            aload 5 /* newid */
            aload 3 /* session */
            invokeinterface org.hibernate.type.Type.isDirty:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
            ireturn
        end local 5 // java.lang.Object newid
        end local 4 // java.lang.Object oldid
        end local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 2 // java.lang.Object current
        end local 1 // java.lang.Object old
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hibernate/type/ManyToOneType;
            0    5     1      old  Ljava/lang/Object;
            0    5     2  current  Ljava/lang/Object;
            0    5     3  session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            3    5     4    oldid  Ljava/lang/Object;
            4    5     5    newid  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      old      
      current  
      session  

  public boolean isDirty(java.lang.Object, java.lang.Object, boolean[], org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;[ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.hibernate.type.ManyToOneType this
        start local 1 // java.lang.Object old
        start local 2 // java.lang.Object current
        start local 3 // boolean[] checkable
        start local 4 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 342
            aload 0 /* this */
            invokevirtual org.hibernate.type.ManyToOneType.isAlwaysDirtyChecked:()Z
            ifeq 2
         1: .line 343
            aload 0 /* this */
            aload 1 /* old */
            aload 2 /* current */
            aload 4 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.isDirty:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
            ireturn
         2: .line 346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* old */
            aload 2 /* current */
            invokevirtual org.hibernate.type.ManyToOneType.isSame:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 347
            iconst_0
            ireturn
         4: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* old */
            aload 4 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            astore 5 /* oldid */
        start local 5 // java.lang.Object oldid
         5: .line 350
            aload 0 /* this */
            aload 2 /* current */
            aload 4 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifier:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
            astore 6 /* newid */
        start local 6 // java.lang.Object newid
         6: .line 351
            aload 0 /* this */
            aload 4 /* session */
            invokevirtual org.hibernate.type.ManyToOneType.getIdentifierType:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/type/Type;
            aload 5 /* oldid */
            aload 6 /* newid */
            aload 3 /* checkable */
            aload 4 /* session */
            invokeinterface org.hibernate.type.Type.isDirty:(Ljava/lang/Object;Ljava/lang/Object;[ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
            ireturn
        end local 6 // java.lang.Object newid
        end local 5 // java.lang.Object oldid
        end local 4 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 3 // boolean[] checkable
        end local 2 // java.lang.Object current
        end local 1 // java.lang.Object old
        end local 0 // org.hibernate.type.ManyToOneType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/hibernate/type/ManyToOneType;
            0    7     1        old  Ljava/lang/Object;
            0    7     2    current  Ljava/lang/Object;
            0    7     3  checkable  [Z
            0    7     4    session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            5    7     5      oldid  Ljava/lang/Object;
            6    7     6      newid  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
           Name  Flags
      old        
      current    
      checkable  
      session    
}
SourceFile: "ManyToOneType.java"
InnerClasses:
  public abstract TypeScope = org.hibernate.type.TypeFactory$TypeScope of org.hibernate.type.TypeFactory