public abstract class org.hibernate.cfg.annotations.CollectionBinder
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.cfg.annotations.CollectionBinder
  super_class: java.lang.Object
{
  private static final org.hibernate.internal.CoreMessageLogger LOG;
    descriptor: Lorg/hibernate/internal/CoreMessageLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected org.hibernate.mapping.Collection collection;
    descriptor: Lorg/hibernate/mapping/Collection;
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String propertyName;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  org.hibernate.cfg.PropertyHolder propertyHolder;
    descriptor: Lorg/hibernate/cfg/PropertyHolder;
    flags: (0x0000) 

  int batchSize;
    descriptor: I
    flags: (0x0000) 

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

  private org.hibernate.annotations.common.reflection.XClass collectionType;
    descriptor: Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.common.reflection.XClass targetEntity;
    descriptor: Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Mappings mappings;
    descriptor: Lorg/hibernate/cfg/Mappings;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3JoinColumn[] inverseJoinColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0002) ACC_PRIVATE

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

  java.lang.String cacheConcurrencyStrategy;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  java.lang.String cacheRegionName;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

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

  protected org.hibernate.cfg.IndexColumn indexColumn;
    descriptor: Lorg/hibernate/cfg/IndexColumn;
    flags: (0x0004) ACC_PROTECTED

  protected boolean cascadeDeleteEnabled;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String mapKeyPropertyName;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

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

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

  private org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0002) ACC_PRIVATE

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

  private org.hibernate.cfg.Ejb3Column[] elementColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0002) ACC_PRIVATE

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

  private org.hibernate.annotations.common.reflection.XProperty property;
    descriptor: Lorg/hibernate/annotations/common/reflection/XProperty;
    flags: (0x0002) ACC_PRIVATE

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

  private org.hibernate.cfg.annotations.TableBinder tableBinder;
    descriptor: Lorg/hibernate/cfg/annotations/TableBinder;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3Column[] mapKeyColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3JoinColumn[] mapKeyManyToManyColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0002) ACC_PRIVATE

  protected java.util.HashMap<java.lang.String, org.hibernate.mapping.IdGenerator> localGenerators;
    descriptor: Ljava/util/HashMap;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/hibernate/mapping/IdGenerator;>;

  protected java.util.Map<org.hibernate.annotations.common.reflection.XClass, org.hibernate.cfg.InheritanceState> inheritanceStatePerClass;
    descriptor: Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/Map<Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/InheritanceState;>;

  private org.hibernate.annotations.common.reflection.XClass declaringClass;
    descriptor: Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0002) ACC_PRIVATE

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

  private org.hibernate.cfg.AccessType accessType;
    descriptor: Lorg/hibernate/cfg/AccessType;
    flags: (0x0002) ACC_PRIVATE

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

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

  private javax.persistence.OrderBy jpaOrderBy;
    descriptor: Ljavax/persistence/OrderBy;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.OrderBy sqlOrderBy;
    descriptor: Lorg/hibernate/annotations/OrderBy;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.Sort deprecatedSort;
    descriptor: Lorg/hibernate/annotations/Sort;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.SortNatural naturalSort;
    descriptor: Lorg/hibernate/annotations/SortNatural;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.SortComparator comparatorSort;
    descriptor: Lorg/hibernate/annotations/SortComparator;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.Properties explicitTypeParameters;
    descriptor: Ljava/util/Properties;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3JoinColumn[] joinColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 130
            ldc Lorg/hibernate/internal/CoreMessageLogger;
            ldc Lorg/hibernate/cfg/annotations/CollectionBinder;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic org.jboss.logging.Logger.getMessageLogger:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.hibernate.internal.CoreMessageLogger
            putstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected org.hibernate.cfg.Mappings getMappings();
    descriptor: ()Lorg/hibernate/cfg/Mappings;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 177
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            areturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;

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

  public void setIsHibernateExtensionMapping(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean hibernateExtensionMapping
         0: .line 185
            aload 0 /* this */
            iload 1 /* hibernateExtensionMapping */
            putfield org.hibernate.cfg.annotations.CollectionBinder.hibernateExtensionMapping:Z
         1: .line 186
            return
        end local 1 // boolean hibernateExtensionMapping
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    2     0                       this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  hibernateExtensionMapping  Z
    MethodParameters:
                           Name  Flags
      hibernateExtensionMapping  

  protected boolean isHibernateExtensionMapping();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 189
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.hibernateExtensionMapping:Z
            ireturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;

  public void setUpdatable(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean updatable
         0: .line 193
            aload 0 /* this */
            iload 1 /* updatable */
            putfield org.hibernate.cfg.annotations.CollectionBinder.updatable:Z
         1: .line 194
            return
        end local 1 // boolean updatable
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  updatable  Z
    MethodParameters:
           Name  Flags
      updatable  

  public void setInheritanceStatePerClass(java.util.Map<org.hibernate.annotations.common.reflection.XClass, org.hibernate.cfg.InheritanceState>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.util.Map inheritanceStatePerClass
         0: .line 197
            aload 0 /* this */
            aload 1 /* inheritanceStatePerClass */
            putfield org.hibernate.cfg.annotations.CollectionBinder.inheritanceStatePerClass:Ljava/util/Map;
         1: .line 198
            return
        end local 1 // java.util.Map inheritanceStatePerClass
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  inheritanceStatePerClass  Ljava/util/Map<Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/InheritanceState;>;
    Signature: (Ljava/util/Map<Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/InheritanceState;>;)V
    MethodParameters:
                          Name  Flags
      inheritanceStatePerClass  

  public void setInsertable(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean insertable
         0: .line 201
            aload 0 /* this */
            iload 1 /* insertable */
            putfield org.hibernate.cfg.annotations.CollectionBinder.insertable:Z
         1: .line 202
            return
        end local 1 // boolean insertable
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  insertable  Z
    MethodParameters:
            Name  Flags
      insertable  

  public void setCascadeStrategy(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.lang.String cascadeStrategy
         0: .line 205
            aload 0 /* this */
            aload 1 /* cascadeStrategy */
            putfield org.hibernate.cfg.annotations.CollectionBinder.cascadeStrategy:Ljava/lang/String;
         1: .line 206
            return
        end local 1 // java.lang.String cascadeStrategy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  cascadeStrategy  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      cascadeStrategy  

  public void setAccessType(org.hibernate.cfg.AccessType);
    descriptor: (Lorg/hibernate/cfg/AccessType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.AccessType accessType
         0: .line 209
            aload 0 /* this */
            aload 1 /* accessType */
            putfield org.hibernate.cfg.annotations.CollectionBinder.accessType:Lorg/hibernate/cfg/AccessType;
         1: .line 210
            return
        end local 1 // org.hibernate.cfg.AccessType accessType
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  accessType  Lorg/hibernate/cfg/AccessType;
    MethodParameters:
            Name  Flags
      accessType  

  public void setInverseJoinColumns(org.hibernate.cfg.Ejb3JoinColumn[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3JoinColumn;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] inverseJoinColumns
         0: .line 213
            aload 0 /* this */
            aload 1 /* inverseJoinColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.inverseJoinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
         1: .line 214
            return
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] inverseJoinColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  inverseJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
    MethodParameters:
                    Name  Flags
      inverseJoinColumns  

  public void setJoinColumns(org.hibernate.cfg.Ejb3JoinColumn[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3JoinColumn;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
         0: .line 217
            aload 0 /* this */
            aload 1 /* joinColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
         1: .line 218
            return
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
    MethodParameters:
             Name  Flags
      joinColumns  

  public void setPropertyHolder(org.hibernate.cfg.PropertyHolder);
    descriptor: (Lorg/hibernate/cfg/PropertyHolder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.PropertyHolder propertyHolder
         0: .line 223
            aload 0 /* this */
            aload 1 /* propertyHolder */
            putfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
         1: .line 224
            return
        end local 1 // org.hibernate.cfg.PropertyHolder propertyHolder
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  propertyHolder  Lorg/hibernate/cfg/PropertyHolder;
    MethodParameters:
                Name  Flags
      propertyHolder  

  public void setBatchSize(org.hibernate.annotations.BatchSize);
    descriptor: (Lorg/hibernate/annotations/BatchSize;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.BatchSize batchSize
         0: .line 227
            aload 0 /* this */
            aload 1 /* batchSize */
            ifnonnull 1
            iconst_m1
            goto 2
      StackMap locals:
      StackMap stack: org.hibernate.cfg.annotations.CollectionBinder
         1: aload 1 /* batchSize */
            invokeinterface org.hibernate.annotations.BatchSize.size:()I
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.BatchSize
      StackMap stack: org.hibernate.cfg.annotations.CollectionBinder int
         2: putfield org.hibernate.cfg.annotations.CollectionBinder.batchSize:I
         3: .line 228
            return
        end local 1 // org.hibernate.annotations.BatchSize batchSize
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    4     1  batchSize  Lorg/hibernate/annotations/BatchSize;
    MethodParameters:
           Name  Flags
      batchSize  

  public void setJpaOrderBy(javax.persistence.OrderBy);
    descriptor: (Ljavax/persistence/OrderBy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // javax.persistence.OrderBy jpaOrderBy
         0: .line 231
            aload 0 /* this */
            aload 1 /* jpaOrderBy */
            putfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
         1: .line 232
            return
        end local 1 // javax.persistence.OrderBy jpaOrderBy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  jpaOrderBy  Ljavax/persistence/OrderBy;
    MethodParameters:
            Name  Flags
      jpaOrderBy  

  public void setSqlOrderBy(org.hibernate.annotations.OrderBy);
    descriptor: (Lorg/hibernate/annotations/OrderBy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.OrderBy sqlOrderBy
         0: .line 235
            aload 0 /* this */
            aload 1 /* sqlOrderBy */
            putfield org.hibernate.cfg.annotations.CollectionBinder.sqlOrderBy:Lorg/hibernate/annotations/OrderBy;
         1: .line 236
            return
        end local 1 // org.hibernate.annotations.OrderBy sqlOrderBy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  sqlOrderBy  Lorg/hibernate/annotations/OrderBy;
    MethodParameters:
            Name  Flags
      sqlOrderBy  

  public void setSort(org.hibernate.annotations.Sort);
    descriptor: (Lorg/hibernate/annotations/Sort;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.Sort deprecatedSort
         0: .line 239
            aload 0 /* this */
            aload 1 /* deprecatedSort */
            putfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
         1: .line 240
            return
        end local 1 // org.hibernate.annotations.Sort deprecatedSort
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  deprecatedSort  Lorg/hibernate/annotations/Sort;
    MethodParameters:
                Name  Flags
      deprecatedSort  

  public void setNaturalSort(org.hibernate.annotations.SortNatural);
    descriptor: (Lorg/hibernate/annotations/SortNatural;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.SortNatural naturalSort
         0: .line 243
            aload 0 /* this */
            aload 1 /* naturalSort */
            putfield org.hibernate.cfg.annotations.CollectionBinder.naturalSort:Lorg/hibernate/annotations/SortNatural;
         1: .line 244
            return
        end local 1 // org.hibernate.annotations.SortNatural naturalSort
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  naturalSort  Lorg/hibernate/annotations/SortNatural;
    MethodParameters:
             Name  Flags
      naturalSort  

  public void setComparatorSort(org.hibernate.annotations.SortComparator);
    descriptor: (Lorg/hibernate/annotations/SortComparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.SortComparator comparatorSort
         0: .line 247
            aload 0 /* this */
            aload 1 /* comparatorSort */
            putfield org.hibernate.cfg.annotations.CollectionBinder.comparatorSort:Lorg/hibernate/annotations/SortComparator;
         1: .line 248
            return
        end local 1 // org.hibernate.annotations.SortComparator comparatorSort
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  comparatorSort  Lorg/hibernate/annotations/SortComparator;
    MethodParameters:
                Name  Flags
      comparatorSort  

  public static org.hibernate.cfg.annotations.CollectionBinder getCollectionBinder(java.lang.String, org.hibernate.annotations.common.reflection.XProperty, boolean, boolean, org.hibernate.cfg.Mappings);
    descriptor: (Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;ZZLorg/hibernate/cfg/Mappings;)Lorg/hibernate/cfg/annotations/CollectionBinder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=5
        start local 0 // java.lang.String entityName
        start local 1 // org.hibernate.annotations.common.reflection.XProperty property
        start local 2 // boolean isIndexed
        start local 3 // boolean isHibernateExtensionMapping
        start local 4 // org.hibernate.cfg.Mappings mappings
         0: .line 260
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isArray:()Z
            ifeq 6
         1: .line 261
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getElementClass:()Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.isPrimitive:()Z
            ifeq 4
         2: .line 262
            new org.hibernate.cfg.annotations.PrimitiveArrayBinder
            dup
            invokespecial org.hibernate.cfg.annotations.PrimitiveArrayBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
         3: .line 263
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
         4: .line 265
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.ArrayBinder
            dup
            invokespecial org.hibernate.cfg.annotations.ArrayBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
         5: .line 267
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
         6: .line 268
      StackMap locals:
      StackMap stack:
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isCollection:()Z
            ifeq 62
         7: .line 270
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getCollectionClass:()Ljava/lang/Class;
            astore 6 /* returnedClass */
        start local 6 // java.lang.Class returnedClass
         8: .line 271
            ldc Ljava/util/Set;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 15
         9: .line 272
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 13
        10: .line 273
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Set do not support @CollectionId: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 274
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 273
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 276
      StackMap locals: java.lang.String org.hibernate.annotations.common.reflection.XProperty int int org.hibernate.cfg.Mappings top java.lang.Class
      StackMap stack:
            new org.hibernate.cfg.annotations.SetBinder
            dup
            iconst_0
            invokespecial org.hibernate.cfg.annotations.SetBinder.<init>:(Z)V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        14: .line 277
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        15: .line 278
      StackMap locals:
      StackMap stack:
            ldc Ljava/util/SortedSet;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 22
        16: .line 279
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 20
        17: .line 280
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Set do not support @CollectionId: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        18: .line 281
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 280
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 283
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.SetBinder
            dup
            iconst_1
            invokespecial org.hibernate.cfg.annotations.SetBinder.<init>:(Z)V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        21: .line 284
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        22: .line 285
      StackMap locals:
      StackMap stack:
            ldc Ljava/util/Map;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 29
        23: .line 286
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 27
        24: .line 287
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Map do not support @CollectionId: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        25: .line 288
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 287
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 290
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.MapBinder
            dup
            iconst_0
            invokespecial org.hibernate.cfg.annotations.MapBinder.<init>:(Z)V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        28: .line 291
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        29: .line 292
      StackMap locals:
      StackMap stack:
            ldc Ljava/util/SortedMap;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 36
        30: .line 293
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 34
        31: .line 294
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Map do not support @CollectionId: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        32: .line 295
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        33: .line 294
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        34: .line 297
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.MapBinder
            dup
            iconst_1
            invokespecial org.hibernate.cfg.annotations.MapBinder.<init>:(Z)V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        35: .line 298
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        36: .line 299
      StackMap locals:
      StackMap stack:
            ldc Ljava/util/Collection;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 42
        37: .line 300
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 40
        38: .line 301
            new org.hibernate.cfg.annotations.IdBagBinder
            dup
            invokespecial org.hibernate.cfg.annotations.IdBagBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        39: .line 302
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        40: .line 304
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.BagBinder
            dup
            invokespecial org.hibernate.cfg.annotations.BagBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        41: .line 306
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        42: .line 307
      StackMap locals:
      StackMap stack:
            ldc Ljava/util/List;
            aload 6 /* returnedClass */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 57
        43: .line 308
            iload 2 /* isIndexed */
            ifeq 52
        44: .line 309
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 50
        45: .line 310
            new org.hibernate.AnnotationException
            dup
        46: .line 311
            new java.lang.StringBuilder
            dup
            ldc "List do not support @CollectionId and @OrderColumn (or @IndexColumn) at the same time: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        47: .line 312
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        48: .line 311
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        49: .line 310
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        50: .line 314
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.ListBinder
            dup
            invokespecial org.hibernate.cfg.annotations.ListBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        51: .line 315
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        52: .line 316
      StackMap locals:
      StackMap stack:
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionId;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 55
        53: .line 317
            new org.hibernate.cfg.annotations.IdBagBinder
            dup
            invokespecial org.hibernate.cfg.annotations.IdBagBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        54: .line 318
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        55: .line 320
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.BagBinder
            dup
            invokespecial org.hibernate.cfg.annotations.BagBinder.<init>:()V
            astore 5 /* result */
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        56: .line 322
            goto 67
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        57: .line 324
      StackMap locals:
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
        58: .line 325
            new java.lang.StringBuilder
            dup
            aload 6 /* returnedClass */
            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
            ldc " collection not yet supported: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        59: .line 326
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        60: .line 325
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        61: .line 324
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.Class returnedClass
        62: .line 331
      StackMap locals: java.lang.String org.hibernate.annotations.common.reflection.XProperty int int org.hibernate.cfg.Mappings
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
        63: .line 332
            new java.lang.StringBuilder
            dup
            ldc "Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        64: .line 333
            aload 0 /* entityName */
            aload 1 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        65: .line 332
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        66: .line 331
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        start local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        67: .line 336
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder
      StackMap stack:
            aload 5 /* result */
            iload 3 /* isHibernateExtensionMapping */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.setIsHibernateExtensionMapping:(Z)V
        68: .line 338
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/CollectionType;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.CollectionType
            astore 6 /* typeAnnotation */
        start local 6 // org.hibernate.annotations.CollectionType typeAnnotation
        69: .line 339
            aload 6 /* typeAnnotation */
            ifnull 82
        70: .line 340
            aload 6 /* typeAnnotation */
            invokeinterface org.hibernate.annotations.CollectionType.type:()Ljava/lang/String;
            astore 7 /* typeName */
        start local 7 // java.lang.String typeName
        71: .line 342
            aload 4 /* mappings */
            aload 7 /* typeName */
            invokeinterface org.hibernate.cfg.Mappings.getTypeDef:(Ljava/lang/String;)Lorg/hibernate/mapping/TypeDef;
            astore 8 /* typeDef */
        start local 8 // org.hibernate.mapping.TypeDef typeDef
        72: .line 343
            aload 8 /* typeDef */
            ifnull 76
        73: .line 344
            aload 5 /* result */
            aload 8 /* typeDef */
            invokevirtual org.hibernate.mapping.TypeDef.getTypeClass:()Ljava/lang/String;
            putfield org.hibernate.cfg.annotations.CollectionBinder.explicitType:Ljava/lang/String;
        74: .line 345
            aload 5 /* result */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitTypeParameters:Ljava/util/Properties;
            aload 8 /* typeDef */
            invokevirtual org.hibernate.mapping.TypeDef.getParameters:()Ljava/util/Properties;
            invokevirtual java.util.Properties.putAll:(Ljava/util/Map;)V
        75: .line 346
            goto 82
        76: .line 348
      StackMap locals: org.hibernate.annotations.CollectionType java.lang.String org.hibernate.mapping.TypeDef
      StackMap stack:
            aload 5 /* result */
            aload 7 /* typeName */
            putfield org.hibernate.cfg.annotations.CollectionBinder.explicitType:Ljava/lang/String;
        77: .line 349
            aload 6 /* typeAnnotation */
            invokeinterface org.hibernate.annotations.CollectionType.parameters:()[Lorg/hibernate/annotations/Parameter;
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 81
      StackMap locals: java.lang.String org.hibernate.annotations.common.reflection.XProperty int int org.hibernate.cfg.Mappings org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.CollectionType java.lang.String org.hibernate.mapping.TypeDef top int int org.hibernate.annotations.Parameter[]
      StackMap stack:
        78: aload 12
            iload 10
            aaload
            astore 9 /* param */
        start local 9 // org.hibernate.annotations.Parameter param
        79: .line 350
            aload 5 /* result */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitTypeParameters:Ljava/util/Properties;
            aload 9 /* param */
            invokeinterface org.hibernate.annotations.Parameter.name:()Ljava/lang/String;
            aload 9 /* param */
            invokeinterface org.hibernate.annotations.Parameter.value:()Ljava/lang/String;
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        end local 9 // org.hibernate.annotations.Parameter param
        80: .line 349
            iinc 10 1
      StackMap locals:
      StackMap stack:
        81: iload 10
            iload 11
            if_icmplt 78
        end local 8 // org.hibernate.mapping.TypeDef typeDef
        end local 7 // java.lang.String typeName
        82: .line 355
      StackMap locals: java.lang.String org.hibernate.annotations.common.reflection.XProperty int int org.hibernate.cfg.Mappings org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.CollectionType
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 6 // org.hibernate.annotations.CollectionType typeAnnotation
        end local 5 // org.hibernate.cfg.annotations.CollectionBinder result
        end local 4 // org.hibernate.cfg.Mappings mappings
        end local 3 // boolean isHibernateExtensionMapping
        end local 2 // boolean isIndexed
        end local 1 // org.hibernate.annotations.common.reflection.XProperty property
        end local 0 // java.lang.String entityName
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   83     0                   entityName  Ljava/lang/String;
            0   83     1                     property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   83     2                    isIndexed  Z
            0   83     3  isHibernateExtensionMapping  Z
            0   83     4                     mappings  Lorg/hibernate/cfg/Mappings;
            3    4     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
            5    6     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           14   15     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           21   22     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           28   29     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           35   36     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           39   40     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           41   42     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           51   52     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           54   55     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           56   57     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
           67   83     5                       result  Lorg/hibernate/cfg/annotations/CollectionBinder;
            8   62     6                returnedClass  Ljava/lang/Class;
           69   83     6               typeAnnotation  Lorg/hibernate/annotations/CollectionType;
           71   82     7                     typeName  Ljava/lang/String;
           72   82     8                      typeDef  Lorg/hibernate/mapping/TypeDef;
           79   80     9                        param  Lorg/hibernate/annotations/Parameter;
    MethodParameters:
                             Name  Flags
      entityName                   
      property                     
      isIndexed                    
      isHibernateExtensionMapping  
      mappings                     

  protected void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean isSortedCollection
         0: .line 358
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 148
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.cfg.annotations.CollectionBinder.insertable:Z
         2: .line 149
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.cfg.annotations.CollectionBinder.updatable:Z
         3: .line 174
            aload 0 /* this */
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            putfield org.hibernate.cfg.annotations.CollectionBinder.explicitTypeParameters:Ljava/util/Properties;
         4: .line 359
            aload 0 /* this */
            iload 1 /* isSortedCollection */
            putfield org.hibernate.cfg.annotations.CollectionBinder.isSortedCollection:Z
         5: .line 360
            return
        end local 1 // boolean isSortedCollection
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    6     1  isSortedCollection  Z
    MethodParameters:
                    Name  Flags
      isSortedCollection  

  public void setMappedBy(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.lang.String mappedBy
         0: .line 363
            aload 0 /* this */
            aload 1 /* mappedBy */
            putfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
         1: .line 364
            return
        end local 1 // java.lang.String mappedBy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  mappedBy  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      mappedBy  

  public void setTableBinder(org.hibernate.cfg.annotations.TableBinder);
    descriptor: (Lorg/hibernate/cfg/annotations/TableBinder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.annotations.TableBinder tableBinder
         0: .line 367
            aload 0 /* this */
            aload 1 /* tableBinder */
            putfield org.hibernate.cfg.annotations.CollectionBinder.tableBinder:Lorg/hibernate/cfg/annotations/TableBinder;
         1: .line 368
            return
        end local 1 // org.hibernate.cfg.annotations.TableBinder tableBinder
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  tableBinder  Lorg/hibernate/cfg/annotations/TableBinder;
    MethodParameters:
             Name  Flags
      tableBinder  

  public void setCollectionType(org.hibernate.annotations.common.reflection.XClass);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.common.reflection.XClass collectionType
         0: .line 372
            aload 0 /* this */
            aload 1 /* collectionType */
            putfield org.hibernate.cfg.annotations.CollectionBinder.collectionType:Lorg/hibernate/annotations/common/reflection/XClass;
         1: .line 373
            return
        end local 1 // org.hibernate.annotations.common.reflection.XClass collectionType
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  collectionType  Lorg/hibernate/annotations/common/reflection/XClass;
    MethodParameters:
                Name  Flags
      collectionType  

  public void setTargetEntity(org.hibernate.annotations.common.reflection.XClass);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.common.reflection.XClass targetEntity
         0: .line 376
            aload 0 /* this */
            aload 1 /* targetEntity */
            putfield org.hibernate.cfg.annotations.CollectionBinder.targetEntity:Lorg/hibernate/annotations/common/reflection/XClass;
         1: .line 377
            return
        end local 1 // org.hibernate.annotations.common.reflection.XClass targetEntity
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  targetEntity  Lorg/hibernate/annotations/common/reflection/XClass;
    MethodParameters:
              Name  Flags
      targetEntity  

  public void setMappings(org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/cfg/Mappings;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Mappings mappings
         0: .line 380
            aload 0 /* this */
            aload 1 /* mappings */
            putfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
         1: .line 381
            return
        end local 1 // org.hibernate.cfg.Mappings mappings
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  mappings  Lorg/hibernate/cfg/Mappings;
    MethodParameters:
          Name  Flags
      mappings  

  protected abstract org.hibernate.mapping.Collection createCollection(org.hibernate.mapping.PersistentClass);
    descriptor: (Lorg/hibernate/mapping/PersistentClass;)Lorg/hibernate/mapping/Collection;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
                 Name  Flags
      persistentClass  

  public org.hibernate.mapping.Collection getCollection();
    descriptor: ()Lorg/hibernate/mapping/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 386
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            areturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;

  public void setPropertyName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.lang.String propertyName
         0: .line 390
            aload 0 /* this */
            aload 1 /* propertyName */
            putfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
         1: .line 391
            return
        end local 1 // java.lang.String propertyName
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  propertyName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      propertyName  

  public void setDeclaringClass(org.hibernate.annotations.common.reflection.XClass);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.common.reflection.XClass declaringClass
         0: .line 394
            aload 0 /* this */
            aload 1 /* declaringClass */
            putfield org.hibernate.cfg.annotations.CollectionBinder.declaringClass:Lorg/hibernate/annotations/common/reflection/XClass;
         1: .line 395
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.cfg.annotations.CollectionBinder.declaringClassSet:Z
         2: .line 396
            return
        end local 1 // org.hibernate.annotations.common.reflection.XClass declaringClass
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    3     1  declaringClass  Lorg/hibernate/annotations/common/reflection/XClass;
    MethodParameters:
                Name  Flags
      declaringClass  

  public void bind();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=15, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 399
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPersistentClass:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.createCollection:(Lorg/hibernate/mapping/PersistentClass;)Lorg/hibernate/mapping/Collection;
            putfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
         1: .line 400
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* role */
        start local 1 // java.lang.String role
         2: .line 401
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Collection role: %s"
            aload 1 /* role */
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 402
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 1 /* role */
            invokevirtual org.hibernate.mapping.Collection.setRole:(Ljava/lang/String;)V
         4: .line 403
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setNodeName:(Ljava/lang/String;)V
         5: .line 404
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setMappedByProperty:(Ljava/lang/String;)V
         6: .line 406
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/MapKeyColumn;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 14
         7: .line 407
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyPropertyName:Ljava/lang/String;
            ifnull 14
         8: .line 408
            new org.hibernate.AnnotationException
            dup
         9: .line 409
            new java.lang.StringBuilder
            dup
            ldc "Cannot mix @javax.persistence.MapKey and @MapKeyColumn or @org.hibernate.annotations.MapKey on the same collection: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 411
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
        11: .line 410
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 409
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 408
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 417
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitType:Ljava/lang/String;
            ifnull 22
        15: .line 418
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitType:Ljava/lang/String;
            invokeinterface org.hibernate.cfg.Mappings.getTypeDef:(Ljava/lang/String;)Lorg/hibernate/mapping/TypeDef;
            astore 2 /* typeDef */
        start local 2 // org.hibernate.mapping.TypeDef typeDef
        16: .line 419
            aload 2 /* typeDef */
            ifnonnull 20
        17: .line 420
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitType:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setTypeName:(Ljava/lang/String;)V
        18: .line 421
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.explicitTypeParameters:Ljava/util/Properties;
            invokevirtual org.hibernate.mapping.Collection.setTypeParameters:(Ljava/util/Properties;)V
        19: .line 422
            goto 22
        20: .line 424
      StackMap locals: org.hibernate.mapping.TypeDef
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 2 /* typeDef */
            invokevirtual org.hibernate.mapping.TypeDef.getTypeClass:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setTypeName:(Ljava/lang/String;)V
        21: .line 425
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 2 /* typeDef */
            invokevirtual org.hibernate.mapping.TypeDef.getParameters:()Ljava/util/Properties;
            invokevirtual org.hibernate.mapping.Collection.setTypeParameters:(Ljava/util/Properties;)V
        end local 2 // org.hibernate.mapping.TypeDef typeDef
        22: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.defineFetchingStrategy:()V
        23: .line 431
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.batchSize:I
            invokevirtual org.hibernate.mapping.Collection.setBatchSize:(I)V
        24: .line 433
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Immutable;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 25
            iconst_0
            goto 26
      StackMap locals:
      StackMap stack: org.hibernate.mapping.Collection
        25: iconst_1
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String
      StackMap stack: org.hibernate.mapping.Collection int
        26: invokevirtual org.hibernate.mapping.Collection.setMutable:(Z)V
        27: .line 436
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifeq 28
            iconst_0
            goto 29
      StackMap locals:
      StackMap stack:
        28: iconst_1
      StackMap locals:
      StackMap stack: int
        29: istore 2 /* isMappedBy */
        start local 2 // boolean isMappedBy
        30: .line 438
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/OptimisticLock;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.OptimisticLock
            astore 3 /* lockAnn */
        start local 3 // org.hibernate.annotations.OptimisticLock lockAnn
        31: .line 439
            aload 3 /* lockAnn */
            ifnull 34
        32: .line 440
            aload 3 /* lockAnn */
            invokeinterface org.hibernate.annotations.OptimisticLock.excluded:()Z
            ifeq 33
            iconst_0
            goto 36
      StackMap locals: int org.hibernate.annotations.OptimisticLock
      StackMap stack:
        33: iconst_1
            goto 36
        34: .line 441
      StackMap locals:
      StackMap stack:
            iload 2 /* isMappedBy */
            ifeq 35
            iconst_0
            goto 36
      StackMap locals:
      StackMap stack:
        35: iconst_1
        36: .line 439
      StackMap locals:
      StackMap stack: int
            istore 4 /* includeInOptimisticLockChecks */
        start local 4 // boolean includeInOptimisticLockChecks
        37: .line 442
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iload 4 /* includeInOptimisticLockChecks */
            invokevirtual org.hibernate.mapping.Collection.setOptimisticLocked:(Z)V
        38: .line 444
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Persister;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Persister
            astore 5 /* persisterAnn */
        start local 5 // org.hibernate.annotations.Persister persisterAnn
        39: .line 445
            aload 5 /* persisterAnn */
            ifnull 41
        40: .line 446
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 5 /* persisterAnn */
            invokeinterface org.hibernate.annotations.Persister.impl:()Ljava/lang/Class;
            invokevirtual org.hibernate.mapping.Collection.setCollectionPersisterClass:(Ljava/lang/Class;)V
        41: .line 449
      StackMap locals: int org.hibernate.annotations.Persister
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.applySortingAndOrdering:(Lorg/hibernate/mapping/Collection;)V
        42: .line 452
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cacheConcurrencyStrategy:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 45
        43: .line 453
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cacheConcurrencyStrategy:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setCacheConcurrencyStrategy:(Ljava/lang/String;)V
        44: .line 454
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cacheRegionName:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setCacheRegionName:(Ljava/lang/String;)V
        45: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/SQLInsert;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.SQLInsert
            astore 6 /* sqlInsert */
        start local 6 // org.hibernate.annotations.SQLInsert sqlInsert
        46: .line 459
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/SQLUpdate;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.SQLUpdate
            astore 7 /* sqlUpdate */
        start local 7 // org.hibernate.annotations.SQLUpdate sqlUpdate
        47: .line 460
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/SQLDelete;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.SQLDelete
            astore 8 /* sqlDelete */
        start local 8 // org.hibernate.annotations.SQLDelete sqlDelete
        48: .line 461
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/SQLDeleteAll;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.SQLDeleteAll
            astore 9 /* sqlDeleteAll */
        start local 9 // org.hibernate.annotations.SQLDeleteAll sqlDeleteAll
        49: .line 462
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Loader;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Loader
            astore 10 /* loader */
        start local 10 // org.hibernate.annotations.Loader loader
        50: .line 463
            aload 6 /* sqlInsert */
            ifnull 54
        51: .line 464
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 6 /* sqlInsert */
            invokeinterface org.hibernate.annotations.SQLInsert.sql:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            aload 6 /* sqlInsert */
            invokeinterface org.hibernate.annotations.SQLInsert.callable:()Z
        52: .line 465
            aload 6 /* sqlInsert */
            invokeinterface org.hibernate.annotations.SQLInsert.check:()Lorg/hibernate/annotations/ResultCheckStyle;
            invokevirtual org.hibernate.annotations.ResultCheckStyle.toString:()Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle.fromExternalName:(Ljava/lang/String;)Lorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;
        53: .line 464
            invokevirtual org.hibernate.mapping.Collection.setCustomSQLInsert:(Ljava/lang/String;ZLorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;)V
        54: .line 469
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String int org.hibernate.annotations.OptimisticLock int org.hibernate.annotations.Persister org.hibernate.annotations.SQLInsert org.hibernate.annotations.SQLUpdate org.hibernate.annotations.SQLDelete org.hibernate.annotations.SQLDeleteAll org.hibernate.annotations.Loader
      StackMap stack:
            aload 7 /* sqlUpdate */
            ifnull 58
        55: .line 470
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 7 /* sqlUpdate */
            invokeinterface org.hibernate.annotations.SQLUpdate.sql:()Ljava/lang/String;
            aload 7 /* sqlUpdate */
            invokeinterface org.hibernate.annotations.SQLUpdate.callable:()Z
        56: .line 471
            aload 7 /* sqlUpdate */
            invokeinterface org.hibernate.annotations.SQLUpdate.check:()Lorg/hibernate/annotations/ResultCheckStyle;
            invokevirtual org.hibernate.annotations.ResultCheckStyle.toString:()Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle.fromExternalName:(Ljava/lang/String;)Lorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;
        57: .line 470
            invokevirtual org.hibernate.mapping.Collection.setCustomSQLUpdate:(Ljava/lang/String;ZLorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;)V
        58: .line 474
      StackMap locals:
      StackMap stack:
            aload 8 /* sqlDelete */
            ifnull 62
        59: .line 475
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 8 /* sqlDelete */
            invokeinterface org.hibernate.annotations.SQLDelete.sql:()Ljava/lang/String;
            aload 8 /* sqlDelete */
            invokeinterface org.hibernate.annotations.SQLDelete.callable:()Z
        60: .line 476
            aload 8 /* sqlDelete */
            invokeinterface org.hibernate.annotations.SQLDelete.check:()Lorg/hibernate/annotations/ResultCheckStyle;
            invokevirtual org.hibernate.annotations.ResultCheckStyle.toString:()Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle.fromExternalName:(Ljava/lang/String;)Lorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;
        61: .line 475
            invokevirtual org.hibernate.mapping.Collection.setCustomSQLDelete:(Ljava/lang/String;ZLorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;)V
        62: .line 479
      StackMap locals:
      StackMap stack:
            aload 9 /* sqlDeleteAll */
            ifnull 66
        63: .line 480
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 9 /* sqlDeleteAll */
            invokeinterface org.hibernate.annotations.SQLDeleteAll.sql:()Ljava/lang/String;
            aload 9 /* sqlDeleteAll */
            invokeinterface org.hibernate.annotations.SQLDeleteAll.callable:()Z
        64: .line 481
            aload 9 /* sqlDeleteAll */
            invokeinterface org.hibernate.annotations.SQLDeleteAll.check:()Lorg/hibernate/annotations/ResultCheckStyle;
            invokevirtual org.hibernate.annotations.ResultCheckStyle.toString:()Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle.fromExternalName:(Ljava/lang/String;)Lorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;
        65: .line 480
            invokevirtual org.hibernate.mapping.Collection.setCustomSQLDeleteAll:(Ljava/lang/String;ZLorg/hibernate/engine/spi/ExecuteUpdateResultCheckStyle;)V
        66: .line 484
      StackMap locals:
      StackMap stack:
            aload 10 /* loader */
            ifnull 68
        67: .line 485
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 10 /* loader */
            invokeinterface org.hibernate.annotations.Loader.namedQuery:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setLoaderName:(Ljava/lang/String;)V
        68: .line 488
      StackMap locals:
      StackMap stack:
            iload 2 /* isMappedBy */
            ifeq 75
        69: .line 489
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/JoinColumn;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 72
        70: .line 490
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/JoinColumns;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 72
        71: .line 491
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            invokeinterface org.hibernate.cfg.PropertyHolder.getJoinTable:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljavax/persistence/JoinTable;
            ifnull 75
        72: .line 492
      StackMap locals:
      StackMap stack:
            ldc "Associations marked as mappedBy must not define database mappings like @JoinTable or @JoinColumn: "
            astore 11 /* message */
        start local 11 // java.lang.String message
        73: .line 493
            new java.lang.StringBuilder
            dup
            aload 11 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* message */
        74: .line 494
            new org.hibernate.AnnotationException
            dup
            aload 11 /* message */
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 11 // java.lang.String message
        75: .line 497
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iload 2 /* isMappedBy */
            invokevirtual org.hibernate.mapping.Collection.setInverse:(Z)V
        76: .line 500
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.oneToMany:Z
            ifne 78
            iload 2 /* isMappedBy */
            ifeq 78
        77: .line 501
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCollectionType:()Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokeinterface org.hibernate.cfg.Mappings.addMappedBy:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        78: .line 504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCollectionType:()Lorg/hibernate/annotations/common/reflection/XClass;
            astore 11 /* collectionType */
        start local 11 // org.hibernate.annotations.common.reflection.XClass collectionType
        79: .line 505
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.inheritanceStatePerClass:Ljava/util/Map;
            ifnonnull 80
            new org.hibernate.annotations.common.AssertionFailure
            dup
            ldc "inheritanceStatePerClass not set"
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        80: .line 506
      StackMap locals: org.hibernate.annotations.common.reflection.XClass
      StackMap stack:
            aload 0 /* this */
        81: .line 507
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.fkJoinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
        82: .line 508
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
        83: .line 509
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.inverseJoinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
        84: .line 510
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.elementColumns:[Lorg/hibernate/cfg/Ejb3Column;
        85: .line 511
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyColumns:[Lorg/hibernate/cfg/Ejb3Column;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyManyToManyColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.isEmbedded:Z
        86: .line 512
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 11 /* collectionType */
        87: .line 513
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.ignoreNotFound:Z
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.oneToMany:Z
        88: .line 514
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.tableBinder:Lorg/hibernate/cfg/annotations/TableBinder;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
        89: .line 506
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getSecondPass:([Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/annotations/common/reflection/XClass;ZZLorg/hibernate/cfg/annotations/TableBinder;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/cfg/SecondPass;
            astore 12 /* sp */
        start local 12 // org.hibernate.cfg.SecondPass sp
        90: .line 516
            aload 11 /* collectionType */
            ldc Ljavax/persistence/Embeddable;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 92
        91: .line 517
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ElementCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 96
        92: .line 522
      StackMap locals: org.hibernate.cfg.SecondPass
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 12 /* sp */
            iload 2 /* isMappedBy */
            ifeq 93
            iconst_0
            goto 94
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String int org.hibernate.annotations.OptimisticLock int org.hibernate.annotations.Persister org.hibernate.annotations.SQLInsert org.hibernate.annotations.SQLUpdate org.hibernate.annotations.SQLDelete org.hibernate.annotations.SQLDeleteAll org.hibernate.annotations.Loader org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.SecondPass
      StackMap stack: org.hibernate.cfg.Mappings org.hibernate.cfg.SecondPass
        93: iconst_1
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String int org.hibernate.annotations.OptimisticLock int org.hibernate.annotations.Persister org.hibernate.annotations.SQLInsert org.hibernate.annotations.SQLUpdate org.hibernate.annotations.SQLDelete org.hibernate.annotations.SQLDeleteAll org.hibernate.annotations.Loader org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.SecondPass
      StackMap stack: org.hibernate.cfg.Mappings org.hibernate.cfg.SecondPass int
        94: invokeinterface org.hibernate.cfg.Mappings.addSecondPass:(Lorg/hibernate/cfg/SecondPass;Z)V
        95: .line 523
            goto 99
        96: .line 525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 12 /* sp */
            iload 2 /* isMappedBy */
            ifeq 97
            iconst_0
            goto 98
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String int org.hibernate.annotations.OptimisticLock int org.hibernate.annotations.Persister org.hibernate.annotations.SQLInsert org.hibernate.annotations.SQLUpdate org.hibernate.annotations.SQLDelete org.hibernate.annotations.SQLDeleteAll org.hibernate.annotations.Loader org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.SecondPass
      StackMap stack: org.hibernate.cfg.Mappings org.hibernate.cfg.SecondPass
        97: iconst_1
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder java.lang.String int org.hibernate.annotations.OptimisticLock int org.hibernate.annotations.Persister org.hibernate.annotations.SQLInsert org.hibernate.annotations.SQLUpdate org.hibernate.annotations.SQLDelete org.hibernate.annotations.SQLDeleteAll org.hibernate.annotations.Loader org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.SecondPass
      StackMap stack: org.hibernate.cfg.Mappings org.hibernate.cfg.SecondPass int
        98: invokeinterface org.hibernate.cfg.Mappings.addSecondPass:(Lorg/hibernate/cfg/SecondPass;Z)V
        99: .line 528
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            invokeinterface org.hibernate.cfg.Mappings.addCollection:(Lorg/hibernate/mapping/Collection;)V
       100: .line 531
            new org.hibernate.cfg.annotations.PropertyBinder
            dup
            invokespecial org.hibernate.cfg.annotations.PropertyBinder.<init>:()V
            astore 13 /* binder */
        start local 13 // org.hibernate.cfg.annotations.PropertyBinder binder
       101: .line 532
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setName:(Ljava/lang/String;)V
       102: .line 533
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setValue:(Lorg/hibernate/mapping/Value;)V
       103: .line 534
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cascadeStrategy:Ljava/lang/String;
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setCascade:(Ljava/lang/String;)V
       104: .line 535
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cascadeStrategy:Ljava/lang/String;
            ifnull 106
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cascadeStrategy:Ljava/lang/String;
            ldc "delete-orphan"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 106
       105: .line 536
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iconst_1
            invokevirtual org.hibernate.mapping.Collection.setOrphanDelete:(Z)V
       106: .line 538
      StackMap locals: org.hibernate.cfg.annotations.PropertyBinder
      StackMap stack:
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.accessType:Lorg/hibernate/cfg/AccessType;
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setAccessType:(Lorg/hibernate/cfg/AccessType;)V
       107: .line 539
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setProperty:(Lorg/hibernate/annotations/common/reflection/XProperty;)V
       108: .line 540
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.insertable:Z
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setInsertable:(Z)V
       109: .line 541
            aload 13 /* binder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.updatable:Z
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.setUpdatable:(Z)V
       110: .line 542
            aload 13 /* binder */
            invokevirtual org.hibernate.cfg.annotations.PropertyBinder.makeProperty:()Lorg/hibernate/mapping/Property;
            astore 14 /* prop */
        start local 14 // org.hibernate.mapping.Property prop
       111: .line 544
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.declaringClassSet:Z
            ifne 112
            new org.hibernate.annotations.common.AssertionFailure
            dup
            ldc "DeclaringClass is not set in CollectionBinder while binding"
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
       112: .line 545
      StackMap locals: org.hibernate.mapping.Property
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 14 /* prop */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.declaringClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.cfg.PropertyHolder.addProperty:(Lorg/hibernate/mapping/Property;Lorg/hibernate/annotations/common/reflection/XClass;)V
       113: .line 546
            return
        end local 14 // org.hibernate.mapping.Property prop
        end local 13 // org.hibernate.cfg.annotations.PropertyBinder binder
        end local 12 // org.hibernate.cfg.SecondPass sp
        end local 11 // org.hibernate.annotations.common.reflection.XClass collectionType
        end local 10 // org.hibernate.annotations.Loader loader
        end local 9 // org.hibernate.annotations.SQLDeleteAll sqlDeleteAll
        end local 8 // org.hibernate.annotations.SQLDelete sqlDelete
        end local 7 // org.hibernate.annotations.SQLUpdate sqlUpdate
        end local 6 // org.hibernate.annotations.SQLInsert sqlInsert
        end local 5 // org.hibernate.annotations.Persister persisterAnn
        end local 4 // boolean includeInOptimisticLockChecks
        end local 3 // org.hibernate.annotations.OptimisticLock lockAnn
        end local 2 // boolean isMappedBy
        end local 1 // java.lang.String role
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0  114     0                           this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            2  114     1                           role  Ljava/lang/String;
           16   22     2                        typeDef  Lorg/hibernate/mapping/TypeDef;
           30  114     2                     isMappedBy  Z
           31  114     3                        lockAnn  Lorg/hibernate/annotations/OptimisticLock;
           37  114     4  includeInOptimisticLockChecks  Z
           39  114     5                   persisterAnn  Lorg/hibernate/annotations/Persister;
           46  114     6                      sqlInsert  Lorg/hibernate/annotations/SQLInsert;
           47  114     7                      sqlUpdate  Lorg/hibernate/annotations/SQLUpdate;
           48  114     8                      sqlDelete  Lorg/hibernate/annotations/SQLDelete;
           49  114     9                   sqlDeleteAll  Lorg/hibernate/annotations/SQLDeleteAll;
           50  114    10                         loader  Lorg/hibernate/annotations/Loader;
           73   75    11                        message  Ljava/lang/String;
           79  114    11                 collectionType  Lorg/hibernate/annotations/common/reflection/XClass;
           90  114    12                             sp  Lorg/hibernate/cfg/SecondPass;
          101  114    13                         binder  Lorg/hibernate/cfg/annotations/PropertyBinder;
          111  114    14                           prop  Lorg/hibernate/mapping/Property;

  private void applySortingAndOrdering(org.hibernate.mapping.Collection);
    descriptor: (Lorg/hibernate/mapping/Collection;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.mapping.Collection collection
         0: .line 551
            iconst_0
            istore 2 /* hadOrderBy */
        start local 2 // boolean hadOrderBy
         1: .line 552
            iconst_0
            istore 3 /* hadExplicitSort */
        start local 3 // boolean hadExplicitSort
         2: .line 554
            aconst_null
            astore 4 /* comparatorClass */
        start local 4 // java.lang.Class comparatorClass
         3: .line 556
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
            ifnonnull 25
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.sqlOrderBy:Lorg/hibernate/annotations/OrderBy;
            ifnonnull 25
         4: .line 557
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
            ifnull 16
         5: .line 558
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Encountered deprecated @Sort annotation; use @SortNatural or @SortComparator instead."
            invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
         6: .line 559
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.naturalSort:Lorg/hibernate/annotations/SortNatural;
            ifnonnull 7
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.comparatorSort:Lorg/hibernate/annotations/SortComparator;
            ifnull 8
         7: .line 560
      StackMap locals: int int java.lang.Class
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.buildIllegalSortCombination:()Lorg/hibernate/AnnotationException;
            athrow
         8: .line 562
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
            invokeinterface org.hibernate.annotations.Sort.type:()Lorg/hibernate/annotations/SortType;
            getstatic org.hibernate.annotations.SortType.UNSORTED:Lorg/hibernate/annotations/SortType;
            if_acmpeq 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 3 /* hadExplicitSort */
        11: .line 563
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
            invokeinterface org.hibernate.annotations.Sort.type:()Lorg/hibernate/annotations/SortType;
            getstatic org.hibernate.annotations.SortType.NATURAL:Lorg/hibernate/annotations/SortType;
            if_acmpne 13
        12: .line 565
            goto 37
        13: .line 566
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
            invokeinterface org.hibernate.annotations.Sort.type:()Lorg/hibernate/annotations/SortType;
            getstatic org.hibernate.annotations.SortType.COMPARATOR:Lorg/hibernate/annotations/SortType;
            if_acmpne 37
        14: .line 568
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.deprecatedSort:Lorg/hibernate/annotations/Sort;
            invokeinterface org.hibernate.annotations.Sort.comparator:()Ljava/lang/Class;
            astore 4 /* comparatorClass */
        15: .line 570
            goto 37
        16: .line 571
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.naturalSort:Lorg/hibernate/annotations/SortNatural;
            ifnull 21
        17: .line 572
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.comparatorSort:Lorg/hibernate/annotations/SortComparator;
            ifnull 19
        18: .line 573
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.buildIllegalSortCombination:()Lorg/hibernate/AnnotationException;
            athrow
        19: .line 575
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* hadExplicitSort */
        20: .line 576
            goto 37
        21: .line 577
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.comparatorSort:Lorg/hibernate/annotations/SortComparator;
            ifnull 37
        22: .line 578
            iconst_1
            istore 3 /* hadExplicitSort */
        23: .line 579
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.comparatorSort:Lorg/hibernate/annotations/SortComparator;
            invokeinterface org.hibernate.annotations.SortComparator.value:()Ljava/lang/Class;
            astore 4 /* comparatorClass */
        24: .line 581
            goto 37
        25: .line 583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
            ifnull 33
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.sqlOrderBy:Lorg/hibernate/annotations/OrderBy;
            ifnull 33
        26: .line 584
            new org.hibernate.AnnotationException
            dup
        27: .line 586
            ldc "Illegal combination of @%s and @%s on %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        28: .line 587
            ldc Ljavax/persistence/OrderBy;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        29: .line 588
            ldc Lorg/hibernate/annotations/OrderBy;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
        30: .line 589
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.safeCollectionRole:()Ljava/lang/String;
            aastore
        31: .line 585
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        32: .line 584
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 594
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* hadOrderBy */
        34: .line 595
            iconst_0
            istore 3 /* hadExplicitSort */
        35: .line 598
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.sqlOrderBy:Lorg/hibernate/annotations/OrderBy;
            ifnull 37
        36: .line 599
            aload 1 /* collection */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.sqlOrderBy:Lorg/hibernate/annotations/OrderBy;
            invokeinterface org.hibernate.annotations.OrderBy.clause:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Collection.setOrderBy:(Ljava/lang/String;)V
        37: .line 603
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.isSortedCollection:Z
            ifeq 42
        38: .line 604
            iload 3 /* hadExplicitSort */
            ifne 42
            iload 2 /* hadOrderBy */
            ifne 42
        39: .line 605
            new org.hibernate.AnnotationException
            dup
        40: .line 606
            new java.lang.StringBuilder
            dup
            ldc "A sorted collection must define and ordering or sorting : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.safeCollectionRole:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        41: .line 605
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        42: .line 611
      StackMap locals:
      StackMap stack:
            aload 1 /* collection */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.isSortedCollection:Z
            ifne 43
            iload 3 /* hadExplicitSort */
            ifne 43
            iconst_0
            goto 44
      StackMap locals:
      StackMap stack: org.hibernate.mapping.Collection
        43: iconst_1
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection int int java.lang.Class
      StackMap stack: org.hibernate.mapping.Collection int
        44: invokevirtual org.hibernate.mapping.Collection.setSorted:(Z)V
        45: .line 613
            aload 4 /* comparatorClass */
            ifnull 55
        46: .line 615
            aload 1 /* collection */
            aload 4 /* comparatorClass */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast java.util.Comparator
            invokevirtual org.hibernate.mapping.Collection.setComparator:(Ljava/util/Comparator;)V
        47: .line 616
            goto 55
        48: .line 617
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        49: .line 618
            new org.hibernate.AnnotationException
            dup
        50: .line 620
            ldc "Could not instantiate comparator class [%s] for %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        51: .line 621
            aload 4 /* comparatorClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        52: .line 622
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.safeCollectionRole:()Ljava/lang/String;
            aastore
        53: .line 619
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        54: .line 618
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        55: .line 627
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Class comparatorClass
        end local 3 // boolean hadExplicitSort
        end local 2 // boolean hadOrderBy
        end local 1 // org.hibernate.mapping.Collection collection
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   56     0             this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0   56     1       collection  Lorg/hibernate/mapping/Collection;
            1   56     2       hadOrderBy  Z
            2   56     3  hadExplicitSort  Z
            3   56     4  comparatorClass  Ljava/lang/Class<+Ljava/util/Comparator;>;
      Exception table:
        from    to  target  type
          46    47      48  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      collection  

  private org.hibernate.AnnotationException buildIllegalSortCombination();
    descriptor: ()Lorg/hibernate/AnnotationException;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 630
            new org.hibernate.AnnotationException
            dup
         1: .line 632
            ldc "Illegal combination of annotations on %s.  Only one of @%s, @%s and @%s can be used"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
         2: .line 633
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.safeCollectionRole:()Ljava/lang/String;
            aastore
            dup
            iconst_1
         3: .line 634
            ldc Lorg/hibernate/annotations/Sort;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
         4: .line 635
            ldc Lorg/hibernate/annotations/SortNatural;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
         5: .line 636
            ldc Lorg/hibernate/annotations/SortComparator;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
         6: .line 631
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         7: .line 630
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;

  private void defineFetchingStrategy();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 642
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/LazyCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.LazyCollection
            astore 1 /* lazy */
        start local 1 // org.hibernate.annotations.LazyCollection lazy
         1: .line 643
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Fetch;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Fetch
            astore 2 /* fetch */
        start local 2 // org.hibernate.annotations.Fetch fetch
         2: .line 644
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.OneToMany
            astore 3 /* oneToMany */
        start local 3 // javax.persistence.OneToMany oneToMany
         3: .line 645
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ManyToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.ManyToMany
            astore 4 /* manyToMany */
        start local 4 // javax.persistence.ManyToMany manyToMany
         4: .line 646
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ElementCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.ElementCollection
            astore 5 /* elementCollection */
        start local 5 // javax.persistence.ElementCollection elementCollection
         5: .line 647
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/ManyToAny;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.ManyToAny
            astore 6 /* manyToAny */
        start local 6 // org.hibernate.annotations.ManyToAny manyToAny
         6: .line 649
            aload 3 /* oneToMany */
            ifnull 9
         7: .line 650
            aload 3 /* oneToMany */
            invokeinterface javax.persistence.OneToMany.fetch:()Ljavax/persistence/FetchType;
            astore 7 /* fetchType */
        start local 7 // javax.persistence.FetchType fetchType
         8: .line 651
            goto 21
        end local 7 // javax.persistence.FetchType fetchType
         9: .line 652
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.LazyCollection org.hibernate.annotations.Fetch javax.persistence.OneToMany javax.persistence.ManyToMany javax.persistence.ElementCollection org.hibernate.annotations.ManyToAny
      StackMap stack:
            aload 4 /* manyToMany */
            ifnull 12
        10: .line 653
            aload 4 /* manyToMany */
            invokeinterface javax.persistence.ManyToMany.fetch:()Ljavax/persistence/FetchType;
            astore 7 /* fetchType */
        start local 7 // javax.persistence.FetchType fetchType
        11: .line 654
            goto 21
        end local 7 // javax.persistence.FetchType fetchType
        12: .line 655
      StackMap locals:
      StackMap stack:
            aload 5 /* elementCollection */
            ifnull 15
        13: .line 656
            aload 5 /* elementCollection */
            invokeinterface javax.persistence.ElementCollection.fetch:()Ljavax/persistence/FetchType;
            astore 7 /* fetchType */
        start local 7 // javax.persistence.FetchType fetchType
        14: .line 657
            goto 21
        end local 7 // javax.persistence.FetchType fetchType
        15: .line 658
      StackMap locals:
      StackMap stack:
            aload 6 /* manyToAny */
            ifnull 18
        16: .line 659
            getstatic javax.persistence.FetchType.LAZY:Ljavax/persistence/FetchType;
            astore 7 /* fetchType */
        start local 7 // javax.persistence.FetchType fetchType
        17: .line 660
            goto 21
        end local 7 // javax.persistence.FetchType fetchType
        18: .line 662
      StackMap locals:
      StackMap stack:
            new org.hibernate.annotations.common.AssertionFailure
            dup
        19: .line 663
            ldc "Define fetch strategy on a property not annotated with @ManyToOne nor @OneToMany nor @CollectionOfElements"
        20: .line 662
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        start local 7 // javax.persistence.FetchType fetchType
        21: .line 666
      StackMap locals: javax.persistence.FetchType
      StackMap stack:
            aload 1 /* lazy */
            ifnull 29
        22: .line 667
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 1 /* lazy */
            invokeinterface org.hibernate.annotations.LazyCollection.value:()Lorg/hibernate/annotations/LazyCollectionOption;
            getstatic org.hibernate.annotations.LazyCollectionOption.FALSE:Lorg/hibernate/annotations/LazyCollectionOption;
            if_acmpne 23
            iconst_0
            goto 24
      StackMap locals:
      StackMap stack: org.hibernate.mapping.Collection
        23: iconst_1
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.LazyCollection org.hibernate.annotations.Fetch javax.persistence.OneToMany javax.persistence.ManyToMany javax.persistence.ElementCollection org.hibernate.annotations.ManyToAny javax.persistence.FetchType
      StackMap stack: org.hibernate.mapping.Collection int
        24: invokevirtual org.hibernate.mapping.Collection.setLazy:(Z)V
        25: .line 668
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 1 /* lazy */
            invokeinterface org.hibernate.annotations.LazyCollection.value:()Lorg/hibernate/annotations/LazyCollectionOption;
            getstatic org.hibernate.annotations.LazyCollectionOption.EXTRA:Lorg/hibernate/annotations/LazyCollectionOption;
            if_acmpne 26
            iconst_1
            goto 27
      StackMap locals:
      StackMap stack: org.hibernate.mapping.Collection
        26: iconst_0
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.LazyCollection org.hibernate.annotations.Fetch javax.persistence.OneToMany javax.persistence.ManyToMany javax.persistence.ElementCollection org.hibernate.annotations.ManyToAny javax.persistence.FetchType
      StackMap stack: org.hibernate.mapping.Collection int
        27: invokevirtual org.hibernate.mapping.Collection.setExtraLazy:(Z)V
        28: .line 669
            goto 33
        29: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 7 /* fetchType */
            getstatic javax.persistence.FetchType.LAZY:Ljavax/persistence/FetchType;
            if_acmpne 30
            iconst_1
            goto 31
      StackMap locals:
      StackMap stack: org.hibernate.mapping.Collection
        30: iconst_0
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.LazyCollection org.hibernate.annotations.Fetch javax.persistence.OneToMany javax.persistence.ManyToMany javax.persistence.ElementCollection org.hibernate.annotations.ManyToAny javax.persistence.FetchType
      StackMap stack: org.hibernate.mapping.Collection int
        31: invokevirtual org.hibernate.mapping.Collection.setLazy:(Z)V
        32: .line 672
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iconst_0
            invokevirtual org.hibernate.mapping.Collection.setExtraLazy:(Z)V
        33: .line 674
      StackMap locals:
      StackMap stack:
            aload 2 /* fetch */
            ifnull 47
        34: .line 675
            aload 2 /* fetch */
            invokeinterface org.hibernate.annotations.Fetch.value:()Lorg/hibernate/annotations/FetchMode;
            getstatic org.hibernate.annotations.FetchMode.JOIN:Lorg/hibernate/annotations/FetchMode;
            if_acmpne 38
        35: .line 676
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            getstatic org.hibernate.FetchMode.JOIN:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.Collection.setFetchMode:(Lorg/hibernate/FetchMode;)V
        36: .line 677
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iconst_0
            invokevirtual org.hibernate.mapping.Collection.setLazy:(Z)V
        37: .line 678
            goto 48
        38: .line 679
      StackMap locals:
      StackMap stack:
            aload 2 /* fetch */
            invokeinterface org.hibernate.annotations.Fetch.value:()Lorg/hibernate/annotations/FetchMode;
            getstatic org.hibernate.annotations.FetchMode.SELECT:Lorg/hibernate/annotations/FetchMode;
            if_acmpne 41
        39: .line 680
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            getstatic org.hibernate.FetchMode.SELECT:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.Collection.setFetchMode:(Lorg/hibernate/FetchMode;)V
        40: .line 681
            goto 48
        41: .line 682
      StackMap locals:
      StackMap stack:
            aload 2 /* fetch */
            invokeinterface org.hibernate.annotations.Fetch.value:()Lorg/hibernate/annotations/FetchMode;
            getstatic org.hibernate.annotations.FetchMode.SUBSELECT:Lorg/hibernate/annotations/FetchMode;
            if_acmpne 46
        42: .line 683
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            getstatic org.hibernate.FetchMode.SELECT:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.Collection.setFetchMode:(Lorg/hibernate/FetchMode;)V
        43: .line 684
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            iconst_1
            invokevirtual org.hibernate.mapping.Collection.setSubselectLoadable:(Z)V
        44: .line 685
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            iconst_1
            invokevirtual org.hibernate.mapping.PersistentClass.setSubselectLoadableCollections:(Z)V
        45: .line 686
            goto 48
        46: .line 688
      StackMap locals:
      StackMap stack:
            new org.hibernate.annotations.common.AssertionFailure
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown FetchMode: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* fetch */
            invokeinterface org.hibernate.annotations.Fetch.value:()Lorg/hibernate/annotations/FetchMode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        47: .line 692
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 7 /* fetchType */
            invokestatic org.hibernate.cfg.AnnotationBinder.getFetchMode:(Ljavax/persistence/FetchType;)Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.Collection.setFetchMode:(Lorg/hibernate/FetchMode;)V
        48: .line 694
      StackMap locals:
      StackMap stack:
            return
        end local 7 // javax.persistence.FetchType fetchType
        end local 6 // org.hibernate.annotations.ManyToAny manyToAny
        end local 5 // javax.persistence.ElementCollection elementCollection
        end local 4 // javax.persistence.ManyToMany manyToMany
        end local 3 // javax.persistence.OneToMany oneToMany
        end local 2 // org.hibernate.annotations.Fetch fetch
        end local 1 // org.hibernate.annotations.LazyCollection lazy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   49     0               this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            1   49     1               lazy  Lorg/hibernate/annotations/LazyCollection;
            2   49     2              fetch  Lorg/hibernate/annotations/Fetch;
            3   49     3          oneToMany  Ljavax/persistence/OneToMany;
            4   49     4         manyToMany  Ljavax/persistence/ManyToMany;
            5   49     5  elementCollection  Ljavax/persistence/ElementCollection;
            6   49     6          manyToAny  Lorg/hibernate/annotations/ManyToAny;
            8    9     7          fetchType  Ljavax/persistence/FetchType;
           11   12     7          fetchType  Ljavax/persistence/FetchType;
           14   15     7          fetchType  Ljavax/persistence/FetchType;
           17   18     7          fetchType  Ljavax/persistence/FetchType;
           21   49     7          fetchType  Ljavax/persistence/FetchType;

  private org.hibernate.annotations.common.reflection.XClass getCollectionType();
    descriptor: ()Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 697
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.targetEntity:Lorg/hibernate/annotations/common/reflection/XClass;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            invokestatic org.hibernate.cfg.AnnotationBinder.isDefault:(Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/Mappings;)Z
            ifeq 7
         1: .line 698
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collectionType:Lorg/hibernate/annotations/common/reflection/XClass;
            ifnull 3
         2: .line 699
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collectionType:Lorg/hibernate/annotations/common/reflection/XClass;
            areturn
         3: .line 702
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Collection has neither generic type or OneToMany.targetEntity() defined: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 703
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.safeCollectionRole:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 702
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* errorMsg */
        start local 1 // java.lang.String errorMsg
         6: .line 704
            new org.hibernate.AnnotationException
            dup
            aload 1 /* errorMsg */
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String errorMsg
         7: .line 708
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.targetEntity:Lorg/hibernate/annotations/common/reflection/XClass;
            areturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            6    7     1  errorMsg  Ljava/lang/String;

  public org.hibernate.cfg.SecondPass getSecondPass(org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3Column[], org.hibernate.cfg.Ejb3Column[], org.hibernate.cfg.Ejb3JoinColumn[], boolean, org.hibernate.annotations.common.reflection.XProperty, org.hibernate.annotations.common.reflection.XClass, boolean, boolean, org.hibernate.cfg.annotations.TableBinder, org.hibernate.cfg.Mappings);
    descriptor: ([Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/annotations/common/reflection/XClass;ZZLorg/hibernate/cfg/annotations/TableBinder;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/cfg/SecondPass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=14, args_size=14
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        start local 2 // org.hibernate.cfg.Ejb3JoinColumn[] keyColumns
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] inverseColumns
        start local 4 // org.hibernate.cfg.Ejb3Column[] elementColumns
        start local 5 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
        start local 6 // org.hibernate.cfg.Ejb3JoinColumn[] mapKeyManyToManyColumns
        start local 7 // boolean isEmbedded
        start local 8 // org.hibernate.annotations.common.reflection.XProperty property
        start local 9 // org.hibernate.annotations.common.reflection.XClass collType
        start local 10 // boolean ignoreNotFound
        start local 11 // boolean unique
        start local 12 // org.hibernate.cfg.annotations.TableBinder assocTableBinder
        start local 13 // org.hibernate.cfg.Mappings mappings
         0: .line 726
            new org.hibernate.cfg.annotations.CollectionBinder$1
            dup
            aload 0 /* this */
            aload 13 /* mappings */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 9 /* collType */
            aload 1 /* fkJoinColumns */
            aload 2 /* keyColumns */
            aload 3 /* inverseColumns */
            aload 4 /* elementColumns */
            iload 7 /* isEmbedded */
            aload 8 /* property */
            iload 11 /* unique */
            aload 12 /* assocTableBinder */
            iload 10 /* ignoreNotFound */
            aload 13 /* mappings */
            invokespecial org.hibernate.cfg.annotations.CollectionBinder$1.<init>:(Lorg/hibernate/cfg/annotations/CollectionBinder;Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Collection;Lorg/hibernate/annotations/common/reflection/XClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;ZLorg/hibernate/annotations/common/reflection/XProperty;ZLorg/hibernate/cfg/annotations/TableBinder;ZLorg/hibernate/cfg/Mappings;)V
            areturn
        end local 13 // org.hibernate.cfg.Mappings mappings
        end local 12 // org.hibernate.cfg.annotations.TableBinder assocTableBinder
        end local 11 // boolean unique
        end local 10 // boolean ignoreNotFound
        end local 9 // org.hibernate.annotations.common.reflection.XClass collType
        end local 8 // org.hibernate.annotations.common.reflection.XProperty property
        end local 7 // boolean isEmbedded
        end local 6 // org.hibernate.cfg.Ejb3JoinColumn[] mapKeyManyToManyColumns
        end local 5 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
        end local 4 // org.hibernate.cfg.Ejb3Column[] elementColumns
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] inverseColumns
        end local 2 // org.hibernate.cfg.Ejb3JoinColumn[] keyColumns
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0                     this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    1     1            fkJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0    1     2               keyColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0    1     3           inverseColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0    1     4           elementColumns  [Lorg/hibernate/cfg/Ejb3Column;
            0    1     5            mapKeyColumns  [Lorg/hibernate/cfg/Ejb3Column;
            0    1     6  mapKeyManyToManyColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0    1     7               isEmbedded  Z
            0    1     8                 property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0    1     9                 collType  Lorg/hibernate/annotations/common/reflection/XClass;
            0    1    10           ignoreNotFound  Z
            0    1    11                   unique  Z
            0    1    12         assocTableBinder  Lorg/hibernate/cfg/annotations/TableBinder;
            0    1    13                 mappings  Lorg/hibernate/cfg/Mappings;
    MethodParameters:
                         Name  Flags
      fkJoinColumns            final
      keyColumns               final
      inverseColumns           final
      elementColumns           final
      mapKeyColumns            final
      mapKeyManyToManyColumns  final
      isEmbedded               final
      property                 final
      collType                 final
      ignoreNotFound           final
      unique                   final
      assocTableBinder         final
      mappings                 final

  protected boolean bindStarToManySecondPass(java.util.Map, org.hibernate.annotations.common.reflection.XClass, org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3Column[], boolean, org.hibernate.annotations.common.reflection.XProperty, boolean, org.hibernate.cfg.annotations.TableBinder, boolean, org.hibernate.cfg.Mappings);
    descriptor: (Ljava/util/Map;Lorg/hibernate/annotations/common/reflection/XClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;ZLorg/hibernate/annotations/common/reflection/XProperty;ZLorg/hibernate/cfg/annotations/TableBinder;ZLorg/hibernate/cfg/Mappings;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=16, args_size=13
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.util.Map persistentClasses
        start local 2 // org.hibernate.annotations.common.reflection.XClass collType
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        start local 4 // org.hibernate.cfg.Ejb3JoinColumn[] keyColumns
        start local 5 // org.hibernate.cfg.Ejb3JoinColumn[] inverseColumns
        start local 6 // org.hibernate.cfg.Ejb3Column[] elementColumns
        start local 7 // boolean isEmbedded
        start local 8 // org.hibernate.annotations.common.reflection.XProperty property
        start local 9 // boolean unique
        start local 10 // org.hibernate.cfg.annotations.TableBinder associationTableBinder
        start local 11 // boolean ignoreNotFound
        start local 12 // org.hibernate.cfg.Mappings mappings
         0: .line 753
            aload 1 /* persistentClasses */
            aload 2 /* collType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.mapping.PersistentClass
            astore 13 /* persistentClass */
        start local 13 // org.hibernate.mapping.PersistentClass persistentClass
         1: .line 754
            iconst_0
            istore 14 /* reversePropertyInJoin */
        start local 14 // boolean reversePropertyInJoin
         2: .line 755
            aload 13 /* persistentClass */
            ifnull 18
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 18
         3: .line 757
            aload 13 /* persistentClass */
         4: .line 758
            aload 13 /* persistentClass */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.PersistentClass.getRecursiveProperty:(Ljava/lang/String;)Lorg/hibernate/mapping/Property;
         5: .line 757
            invokevirtual org.hibernate.mapping.PersistentClass.getJoinNumber:(Lorg/hibernate/mapping/Property;)I
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: org.hibernate.mapping.PersistentClass int
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 14 /* reversePropertyInJoin */
         8: .line 760
            goto 18
         9: .line 761
      StackMap locals:
      StackMap stack: org.hibernate.MappingException
            pop
        10: .line 762
            new java.lang.StringBuilder
            dup
            bipush 80
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 15 /* error */
        start local 15 // java.lang.StringBuilder error
        11: .line 763
            aload 15 /* error */
            ldc "mappedBy reference an unknown target entity property: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 764
            aload 2 /* collType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 765
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 766
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 767
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 768
            aload 8 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 769
            new org.hibernate.AnnotationException
            dup
            aload 15 /* error */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 15 // java.lang.StringBuilder error
        18: .line 772
      StackMap locals:
      StackMap stack:
            aload 13 /* persistentClass */
            ifnull 35
        19: .line 773
            iload 14 /* reversePropertyInJoin */
            ifne 35
        20: .line 774
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.oneToMany:Z
            ifeq 35
        21: .line 775
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.isExplicitAssociationTable:Z
            ifne 35
        22: .line 776
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.isImplicit:()Z
            ifeq 23
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappedBy:Ljava/lang/String;
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifeq 24
        23: .line 777
      StackMap locals:
      StackMap stack:
            aload 3 /* fkJoinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.isImplicit:()Z
            ifne 35
        24: .line 780
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        25: .line 781
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCollection:()Lorg/hibernate/mapping/Collection;
        26: .line 782
            aload 1 /* persistentClasses */
        27: .line 783
            aload 3 /* fkJoinColumns */
        28: .line 784
            aload 2 /* collType */
        29: .line 785
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cascadeDeleteEnabled:Z
        30: .line 786
            iload 11 /* ignoreNotFound */
        31: .line 787
            aload 12 /* mappings */
        32: .line 788
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.inheritanceStatePerClass:Ljava/util/Map;
        33: .line 780
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.bindOneToManySecondPass:(Lorg/hibernate/mapping/Collection;Ljava/util/Map;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/annotations/common/reflection/XClass;ZZLorg/hibernate/cfg/Mappings;Ljava/util/Map;)V
        34: .line 790
            iconst_1
            ireturn
        35: .line 794
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        36: .line 795
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
        37: .line 796
            aload 1 /* persistentClasses */
        38: .line 797
            aload 4 /* keyColumns */
        39: .line 798
            aload 5 /* inverseColumns */
        40: .line 799
            aload 6 /* elementColumns */
        41: .line 800
            iload 7 /* isEmbedded */
            aload 2 /* collType */
        42: .line 801
            iload 11 /* ignoreNotFound */
            iload 9 /* unique */
        43: .line 802
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.cascadeDeleteEnabled:Z
        44: .line 803
            aload 10 /* associationTableBinder */
        45: .line 804
            aload 8 /* property */
        46: .line 805
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        47: .line 806
            aload 12 /* mappings */
        48: .line 794
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.bindManyToManySecondPass:(Lorg/hibernate/mapping/Collection;Ljava/util/Map;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;ZLorg/hibernate/annotations/common/reflection/XClass;ZZZLorg/hibernate/cfg/annotations/TableBinder;Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/Mappings;)V
        49: .line 808
            iconst_0
            ireturn
        end local 14 // boolean reversePropertyInJoin
        end local 13 // org.hibernate.mapping.PersistentClass persistentClass
        end local 12 // org.hibernate.cfg.Mappings mappings
        end local 11 // boolean ignoreNotFound
        end local 10 // org.hibernate.cfg.annotations.TableBinder associationTableBinder
        end local 9 // boolean unique
        end local 8 // org.hibernate.annotations.common.reflection.XProperty property
        end local 7 // boolean isEmbedded
        end local 6 // org.hibernate.cfg.Ejb3Column[] elementColumns
        end local 5 // org.hibernate.cfg.Ejb3JoinColumn[] inverseColumns
        end local 4 // org.hibernate.cfg.Ejb3JoinColumn[] keyColumns
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        end local 2 // org.hibernate.annotations.common.reflection.XClass collType
        end local 1 // java.util.Map persistentClasses
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   50     0                    this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0   50     1       persistentClasses  Ljava/util/Map;
            0   50     2                collType  Lorg/hibernate/annotations/common/reflection/XClass;
            0   50     3           fkJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   50     4              keyColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   50     5          inverseColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   50     6          elementColumns  [Lorg/hibernate/cfg/Ejb3Column;
            0   50     7              isEmbedded  Z
            0   50     8                property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   50     9                  unique  Z
            0   50    10  associationTableBinder  Lorg/hibernate/cfg/annotations/TableBinder;
            0   50    11          ignoreNotFound  Z
            0   50    12                mappings  Lorg/hibernate/cfg/Mappings;
            1   50    13         persistentClass  Lorg/hibernate/mapping/PersistentClass;
            2   50    14   reversePropertyInJoin  Z
           11   18    15                   error  Ljava/lang/StringBuilder;
      Exception table:
        from    to  target  type
           3     8       9  Class org.hibernate.MappingException
    MethodParameters:
                        Name  Flags
      persistentClasses       
      collType                
      fkJoinColumns           
      keyColumns              
      inverseColumns          
      elementColumns          
      isEmbedded              
      property                
      unique                  
      associationTableBinder  
      ignoreNotFound          
      mappings                

  protected void bindOneToManySecondPass(org.hibernate.mapping.Collection, java.util.Map, org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.annotations.common.reflection.XClass, boolean, boolean, org.hibernate.cfg.Mappings, java.util.Map<org.hibernate.annotations.common.reflection.XClass, org.hibernate.cfg.InheritanceState>);
    descriptor: (Lorg/hibernate/mapping/Collection;Ljava/util/Map;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/annotations/common/reflection/XClass;ZZLorg/hibernate/cfg/Mappings;Ljava/util/Map;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=18, args_size=9
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.mapping.Collection collection
        start local 2 // java.util.Map persistentClasses
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        start local 4 // org.hibernate.annotations.common.reflection.XClass collectionType
        start local 5 // boolean cascadeDeleteEnabled
        start local 6 // boolean ignoreNotFound
        start local 7 // org.hibernate.cfg.Mappings mappings
        start local 8 // java.util.Map inheritanceStatePerClass
         0: .line 822
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
            istore 9 /* debugEnabled */
        start local 9 // boolean debugEnabled
         1: .line 823
            iload 9 /* debugEnabled */
            ifeq 3
         2: .line 824
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Binding a OneToMany: %s.%s through a foreign key"
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getEntityName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 826
      StackMap locals: int
      StackMap stack:
            new org.hibernate.mapping.OneToMany
            dup
            aload 7 /* mappings */
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokespecial org.hibernate.mapping.OneToMany.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/PersistentClass;)V
            astore 10 /* oneToMany */
        start local 10 // org.hibernate.mapping.OneToMany oneToMany
         4: .line 827
            aload 1 /* collection */
            aload 10 /* oneToMany */
            invokevirtual org.hibernate.mapping.Collection.setElement:(Lorg/hibernate/mapping/Value;)V
         5: .line 828
            aload 10 /* oneToMany */
            aload 4 /* collectionType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.OneToMany.setReferencedEntityName:(Ljava/lang/String;)V
         6: .line 829
            aload 10 /* oneToMany */
            iload 6 /* ignoreNotFound */
            invokevirtual org.hibernate.mapping.OneToMany.setIgnoreNotFound:(Z)V
         7: .line 831
            aload 10 /* oneToMany */
            invokevirtual org.hibernate.mapping.OneToMany.getReferencedEntityName:()Ljava/lang/String;
            astore 11 /* assocClass */
        start local 11 // java.lang.String assocClass
         8: .line 832
            aload 2 /* persistentClasses */
            aload 11 /* assocClass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.mapping.PersistentClass
            astore 12 /* associatedClass */
        start local 12 // org.hibernate.mapping.PersistentClass associatedClass
         9: .line 833
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
            ifnull 16
        10: .line 835
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
            invokeinterface javax.persistence.OrderBy.value:()Ljava/lang/String;
        11: .line 836
            aload 12 /* associatedClass */
        12: .line 837
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
        13: .line 834
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.buildOrderByClauseFromHql:(Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Ljava/lang/String;)Ljava/lang/String;
            astore 13 /* orderByFragment */
        start local 13 // java.lang.String orderByFragment
        14: .line 839
            aload 13 /* orderByFragment */
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 16
        15: .line 840
            aload 1 /* collection */
            aload 13 /* orderByFragment */
            invokevirtual org.hibernate.mapping.Collection.setOrderBy:(Ljava/lang/String;)V
        end local 13 // java.lang.String orderByFragment
        16: .line 844
      StackMap locals: org.hibernate.mapping.OneToMany java.lang.String org.hibernate.mapping.PersistentClass
      StackMap stack:
            aload 7 /* mappings */
            ifnonnull 20
        17: .line 845
            new org.hibernate.annotations.common.AssertionFailure
            dup
        18: .line 846
            ldc "CollectionSecondPass for oneToMany should not be called with null mappings"
        19: .line 845
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 849
      StackMap locals:
      StackMap stack:
            aload 7 /* mappings */
            aload 11 /* assocClass */
            invokeinterface org.hibernate.cfg.Mappings.getJoins:(Ljava/lang/String;)Ljava/util/Map;
            astore 13 /* joins */
        start local 13 // java.util.Map joins
        21: .line 850
            aload 12 /* associatedClass */
            ifnonnull 25
        22: .line 851
            new org.hibernate.MappingException
            dup
        23: .line 852
            new java.lang.StringBuilder
            dup
            ldc "Association references unmapped class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* assocClass */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        24: .line 851
            invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 855
      StackMap locals: java.util.Map
      StackMap stack:
            aload 10 /* oneToMany */
            aload 12 /* associatedClass */
            invokevirtual org.hibernate.mapping.OneToMany.setAssociatedClass:(Lorg/hibernate/mapping/PersistentClass;)V
        26: .line 856
            aload 3 /* fkJoinColumns */
            dup
            astore 17
            arraylength
            istore 16
            iconst_0
            istore 15
            goto 32
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.annotations.common.reflection.XClass int int org.hibernate.cfg.Mappings java.util.Map int org.hibernate.mapping.OneToMany java.lang.String org.hibernate.mapping.PersistentClass java.util.Map top int int org.hibernate.cfg.Ejb3JoinColumn[]
      StackMap stack:
        27: aload 17
            iload 15
            aaload
            astore 14 /* column */
        start local 14 // org.hibernate.cfg.Ejb3JoinColumn column
        28: .line 857
            aload 14 /* column */
            aload 12 /* associatedClass */
            aload 13 /* joins */
            aload 8 /* inheritanceStatePerClass */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.setPersistentClass:(Lorg/hibernate/mapping/PersistentClass;Ljava/util/Map;Ljava/util/Map;)V
        29: .line 858
            aload 14 /* column */
            aload 13 /* joins */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.setJoins:(Ljava/util/Map;)V
        30: .line 859
            aload 1 /* collection */
            aload 14 /* column */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.mapping.Collection.setCollectionTable:(Lorg/hibernate/mapping/Table;)V
        end local 14 // org.hibernate.cfg.Ejb3JoinColumn column
        31: .line 856
            iinc 15 1
      StackMap locals:
      StackMap stack:
        32: iload 15
            iload 16
            if_icmplt 27
        33: .line 861
            iload 9 /* debugEnabled */
            ifeq 35
        34: .line 862
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Mapping collection: %s -> %s"
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.mapping.Table.getName:()Ljava/lang/String;
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        35: .line 864
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.annotations.common.reflection.XClass int int org.hibernate.cfg.Mappings java.util.Map int org.hibernate.mapping.OneToMany java.lang.String org.hibernate.mapping.PersistentClass java.util.Map
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.bindFilters:(Z)V
        36: .line 865
            aload 1 /* collection */
            aconst_null
            aload 3 /* fkJoinColumns */
            iload 5 /* cascadeDeleteEnabled */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 7 /* mappings */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.bindCollectionSecondPass:(Lorg/hibernate/mapping/Collection;Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/Mappings;)V
        37: .line 866
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.isInverse:()Z
            ifne 49
        38: .line 867
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getKey:()Lorg/hibernate/mapping/KeyValue;
            invokeinterface org.hibernate.mapping.KeyValue.isNullable:()Z
            ifne 49
        39: .line 869
            aload 10 /* oneToMany */
            invokevirtual org.hibernate.mapping.OneToMany.getReferencedEntityName:()Ljava/lang/String;
            astore 14 /* entityName */
        start local 14 // java.lang.String entityName
        40: .line 870
            aload 7 /* mappings */
            aload 14 /* entityName */
            invokeinterface org.hibernate.cfg.Mappings.getClass:(Ljava/lang/String;)Lorg/hibernate/mapping/PersistentClass;
            astore 15 /* referenced */
        start local 15 // org.hibernate.mapping.PersistentClass referenced
        41: .line 871
            new org.hibernate.mapping.Backref
            dup
            invokespecial org.hibernate.mapping.Backref.<init>:()V
            astore 16 /* prop */
        start local 16 // org.hibernate.mapping.Backref prop
        42: .line 872
            aload 16 /* prop */
            new java.lang.StringBuilder
            dup
            bipush 95
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* fkJoinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* fkJoinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getLogicalColumnName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Backref"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Backref.setName:(Ljava/lang/String;)V
        43: .line 873
            aload 16 /* prop */
            iconst_0
            invokevirtual org.hibernate.mapping.Backref.setUpdateable:(Z)V
        44: .line 874
            aload 16 /* prop */
            iconst_0
            invokevirtual org.hibernate.mapping.Backref.setSelectable:(Z)V
        45: .line 875
            aload 16 /* prop */
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Backref.setCollectionRole:(Ljava/lang/String;)V
        46: .line 876
            aload 16 /* prop */
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Backref.setEntityName:(Ljava/lang/String;)V
        47: .line 877
            aload 16 /* prop */
            aload 1 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getKey:()Lorg/hibernate/mapping/KeyValue;
            invokevirtual org.hibernate.mapping.Backref.setValue:(Lorg/hibernate/mapping/Value;)V
        48: .line 878
            aload 15 /* referenced */
            aload 16 /* prop */
            invokevirtual org.hibernate.mapping.PersistentClass.addProperty:(Lorg/hibernate/mapping/Property;)V
        end local 16 // org.hibernate.mapping.Backref prop
        end local 15 // org.hibernate.mapping.PersistentClass referenced
        end local 14 // java.lang.String entityName
        49: .line 880
      StackMap locals:
      StackMap stack:
            return
        end local 13 // java.util.Map joins
        end local 12 // org.hibernate.mapping.PersistentClass associatedClass
        end local 11 // java.lang.String assocClass
        end local 10 // org.hibernate.mapping.OneToMany oneToMany
        end local 9 // boolean debugEnabled
        end local 8 // java.util.Map inheritanceStatePerClass
        end local 7 // org.hibernate.cfg.Mappings mappings
        end local 6 // boolean ignoreNotFound
        end local 5 // boolean cascadeDeleteEnabled
        end local 4 // org.hibernate.annotations.common.reflection.XClass collectionType
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] fkJoinColumns
        end local 2 // java.util.Map persistentClasses
        end local 1 // org.hibernate.mapping.Collection collection
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   50     0                      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0   50     1                collection  Lorg/hibernate/mapping/Collection;
            0   50     2         persistentClasses  Ljava/util/Map;
            0   50     3             fkJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   50     4            collectionType  Lorg/hibernate/annotations/common/reflection/XClass;
            0   50     5      cascadeDeleteEnabled  Z
            0   50     6            ignoreNotFound  Z
            0   50     7                  mappings  Lorg/hibernate/cfg/Mappings;
            0   50     8  inheritanceStatePerClass  Ljava/util/Map<Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/InheritanceState;>;
            1   50     9              debugEnabled  Z
            4   50    10                 oneToMany  Lorg/hibernate/mapping/OneToMany;
            8   50    11                assocClass  Ljava/lang/String;
            9   50    12           associatedClass  Lorg/hibernate/mapping/PersistentClass;
           14   16    13           orderByFragment  Ljava/lang/String;
           21   50    13                     joins  Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/mapping/Join;>;
           28   31    14                    column  Lorg/hibernate/cfg/Ejb3JoinColumn;
           40   49    14                entityName  Ljava/lang/String;
           41   49    15                referenced  Lorg/hibernate/mapping/PersistentClass;
           42   49    16                      prop  Lorg/hibernate/mapping/Backref;
    Signature: (Lorg/hibernate/mapping/Collection;Ljava/util/Map;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/annotations/common/reflection/XClass;ZZLorg/hibernate/cfg/Mappings;Ljava/util/Map<Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/InheritanceState;>;)V
    MethodParameters:
                          Name  Flags
      collection                
      persistentClasses         
      fkJoinColumns             
      collectionType            
      cascadeDeleteEnabled      
      ignoreNotFound            
      mappings                  
      inheritanceStatePerClass  

  private void bindFilters(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean hasAssociationTable
         0: .line 884
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Filter;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Filter
            astore 2 /* simpleFilter */
        start local 2 // org.hibernate.annotations.Filter simpleFilter
         1: .line 888
            aload 2 /* simpleFilter */
            ifnull 10
         2: .line 889
            iload 1 /* hasAssociationTable */
            ifeq 7
         3: .line 890
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.name:()Ljava/lang/String;
            aload 0 /* this */
            aload 2 /* simpleFilter */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Lorg/hibernate/annotations/Filter;)Ljava/lang/String;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.deduceAliasInjectionPoints:()Z
         4: .line 891
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
         5: .line 890
            invokevirtual org.hibernate.mapping.Collection.addManyToManyFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
         6: .line 892
            goto 10
         7: .line 894
      StackMap locals: org.hibernate.annotations.Filter
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.name:()Ljava/lang/String;
            aload 0 /* this */
            aload 2 /* simpleFilter */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Lorg/hibernate/annotations/Filter;)Ljava/lang/String;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.deduceAliasInjectionPoints:()Z
         8: .line 895
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 2 /* simpleFilter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
         9: .line 894
            invokevirtual org.hibernate.mapping.Collection.addFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
        10: .line 898
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Filters;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Filters
            astore 3 /* filters */
        start local 3 // org.hibernate.annotations.Filters filters
        11: .line 899
            aload 3 /* filters */
            ifnull 24
        12: .line 900
            aload 3 /* filters */
            invokeinterface org.hibernate.annotations.Filters.value:()[Lorg/hibernate/annotations/Filter;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 23
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters top int int org.hibernate.annotations.Filter[]
      StackMap stack:
        13: aload 7
            iload 5
            aaload
            astore 4 /* filter */
        start local 4 // org.hibernate.annotations.Filter filter
        14: .line 901
            iload 1 /* hasAssociationTable */
            ifeq 19
        15: .line 902
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.name:()Ljava/lang/String;
            aload 0 /* this */
            aload 4 /* filter */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Lorg/hibernate/annotations/Filter;)Ljava/lang/String;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.deduceAliasInjectionPoints:()Z
        16: .line 903
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
        17: .line 902
            invokevirtual org.hibernate.mapping.Collection.addManyToManyFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
        18: .line 904
            goto 22
        19: .line 906
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters org.hibernate.annotations.Filter int int org.hibernate.annotations.Filter[]
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.name:()Ljava/lang/String;
            aload 0 /* this */
            aload 4 /* filter */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Lorg/hibernate/annotations/Filter;)Ljava/lang/String;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.deduceAliasInjectionPoints:()Z
        20: .line 907
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 4 /* filter */
            invokeinterface org.hibernate.annotations.Filter.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
        21: .line 906
            invokevirtual org.hibernate.mapping.Collection.addFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
        end local 4 // org.hibernate.annotations.Filter filter
        22: .line 900
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters top int int org.hibernate.annotations.Filter[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        23: iload 5
            iload 6
            if_icmplt 13
        24: .line 911
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/FilterJoinTable;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.FilterJoinTable
            astore 4 /* simpleFilterJoinTable */
        start local 4 // org.hibernate.annotations.FilterJoinTable simpleFilterJoinTable
        25: .line 912
            aload 4 /* simpleFilterJoinTable */
            ifnull 37
        26: .line 913
            iload 1 /* hasAssociationTable */
            ifeq 32
        27: .line 914
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 4 /* simpleFilterJoinTable */
            invokeinterface org.hibernate.annotations.FilterJoinTable.name:()Ljava/lang/String;
            aload 4 /* simpleFilterJoinTable */
            invokeinterface org.hibernate.annotations.FilterJoinTable.condition:()Ljava/lang/String;
        28: .line 915
            aload 4 /* simpleFilterJoinTable */
            invokeinterface org.hibernate.annotations.FilterJoinTable.deduceAliasInjectionPoints:()Z
        29: .line 916
            aload 4 /* simpleFilterJoinTable */
            invokeinterface org.hibernate.annotations.FilterJoinTable.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 4 /* simpleFilterJoinTable */
            invokeinterface org.hibernate.annotations.FilterJoinTable.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
        30: .line 914
            invokevirtual org.hibernate.mapping.Collection.addFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
        31: .line 917
            goto 37
        32: .line 919
      StackMap locals: org.hibernate.annotations.FilterJoinTable
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
        33: .line 920
            new java.lang.StringBuilder
            dup
            ldc "Illegal use of @FilterJoinTable on an association without join table:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        34: .line 921
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        35: .line 920
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        36: .line 919
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        37: .line 925
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/FilterJoinTables;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.FilterJoinTables
            astore 5 /* filterJoinTables */
        start local 5 // org.hibernate.annotations.FilterJoinTables filterJoinTables
        38: .line 926
            aload 5 /* filterJoinTables */
            ifnull 54
        39: .line 927
            aload 5 /* filterJoinTables */
            invokeinterface org.hibernate.annotations.FilterJoinTables.value:()[Lorg/hibernate/annotations/FilterJoinTable;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 53
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters org.hibernate.annotations.FilterJoinTable org.hibernate.annotations.FilterJoinTables top int int org.hibernate.annotations.FilterJoinTable[]
      StackMap stack:
        40: aload 9
            iload 7
            aaload
            astore 6 /* filter */
        start local 6 // org.hibernate.annotations.FilterJoinTable filter
        41: .line 928
            iload 1 /* hasAssociationTable */
            ifeq 47
        42: .line 929
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 6 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.name:()Ljava/lang/String;
            aload 6 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.condition:()Ljava/lang/String;
        43: .line 930
            aload 6 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.deduceAliasInjectionPoints:()Z
        44: .line 931
            aload 6 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasTableMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
            aload 6 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.aliases:()[Lorg/hibernate/annotations/SqlFragmentAlias;
            invokestatic org.hibernate.cfg.BinderHelper.toAliasEntityMap:([Lorg/hibernate/annotations/SqlFragmentAlias;)Ljava/util/Map;
        45: .line 929
            invokevirtual org.hibernate.mapping.Collection.addFilter:(Ljava/lang/String;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)V
        46: .line 932
            goto 52
        47: .line 934
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters org.hibernate.annotations.FilterJoinTable org.hibernate.annotations.FilterJoinTables org.hibernate.annotations.FilterJoinTable int int org.hibernate.annotations.FilterJoinTable[]
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
        48: .line 935
            new java.lang.StringBuilder
            dup
            ldc "Illegal use of @FilterJoinTable on an association without join table:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        49: .line 936
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        50: .line 935
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        51: .line 934
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // org.hibernate.annotations.FilterJoinTable filter
        52: .line 927
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters org.hibernate.annotations.FilterJoinTable org.hibernate.annotations.FilterJoinTables top int int org.hibernate.annotations.FilterJoinTable[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        53: iload 7
            iload 8
            if_icmplt 40
        54: .line 942
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder int org.hibernate.annotations.Filter org.hibernate.annotations.Filters org.hibernate.annotations.FilterJoinTable org.hibernate.annotations.FilterJoinTables
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Where;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Where
            astore 6 /* where */
        start local 6 // org.hibernate.annotations.Where where
        55: .line 943
            aload 6 /* where */
            ifnonnull 56
            aconst_null
            goto 57
      StackMap locals: org.hibernate.annotations.Where
      StackMap stack:
        56: aload 6 /* where */
            invokeinterface org.hibernate.annotations.Where.clause:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        57: astore 7 /* whereClause */
        start local 7 // java.lang.String whereClause
        58: .line 944
            aload 7 /* whereClause */
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 63
        59: .line 945
            iload 1 /* hasAssociationTable */
            ifeq 62
        60: .line 946
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 7 /* whereClause */
            invokevirtual org.hibernate.mapping.Collection.setManyToManyWhere:(Ljava/lang/String;)V
        61: .line 947
            goto 63
        62: .line 949
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 7 /* whereClause */
            invokevirtual org.hibernate.mapping.Collection.setWhere:(Ljava/lang/String;)V
        63: .line 953
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/WhereJoinTable;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.WhereJoinTable
            astore 8 /* whereJoinTable */
        start local 8 // org.hibernate.annotations.WhereJoinTable whereJoinTable
        64: .line 954
            aload 8 /* whereJoinTable */
            ifnonnull 65
            aconst_null
            goto 66
      StackMap locals: org.hibernate.annotations.WhereJoinTable
      StackMap stack:
        65: aload 8 /* whereJoinTable */
            invokeinterface org.hibernate.annotations.WhereJoinTable.clause:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        66: astore 9 /* whereJoinTableClause */
        start local 9 // java.lang.String whereJoinTableClause
        67: .line 955
            aload 9 /* whereJoinTableClause */
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 76
        68: .line 956
            iload 1 /* hasAssociationTable */
            ifeq 71
        69: .line 957
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.collection:Lorg/hibernate/mapping/Collection;
            aload 9 /* whereJoinTableClause */
            invokevirtual org.hibernate.mapping.Collection.setWhere:(Ljava/lang/String;)V
        70: .line 958
            goto 76
        71: .line 960
      StackMap locals: java.lang.String
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
        72: .line 961
            new java.lang.StringBuilder
            dup
            ldc "Illegal use of @WhereJoinTable on an association without join table:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        73: .line 962
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        74: .line 961
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        75: .line 960
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        76: .line 975
      StackMap locals:
      StackMap stack:
            return
        end local 9 // java.lang.String whereJoinTableClause
        end local 8 // org.hibernate.annotations.WhereJoinTable whereJoinTable
        end local 7 // java.lang.String whereClause
        end local 6 // org.hibernate.annotations.Where where
        end local 5 // org.hibernate.annotations.FilterJoinTables filterJoinTables
        end local 4 // org.hibernate.annotations.FilterJoinTable simpleFilterJoinTable
        end local 3 // org.hibernate.annotations.Filters filters
        end local 2 // org.hibernate.annotations.Filter simpleFilter
        end local 1 // boolean hasAssociationTable
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   77     0                   this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0   77     1    hasAssociationTable  Z
            1   77     2           simpleFilter  Lorg/hibernate/annotations/Filter;
           11   77     3                filters  Lorg/hibernate/annotations/Filters;
           14   22     4                 filter  Lorg/hibernate/annotations/Filter;
           25   77     4  simpleFilterJoinTable  Lorg/hibernate/annotations/FilterJoinTable;
           38   77     5       filterJoinTables  Lorg/hibernate/annotations/FilterJoinTables;
           41   52     6                 filter  Lorg/hibernate/annotations/FilterJoinTable;
           55   77     6                  where  Lorg/hibernate/annotations/Where;
           58   77     7            whereClause  Ljava/lang/String;
           64   77     8         whereJoinTable  Lorg/hibernate/annotations/WhereJoinTable;
           67   77     9   whereJoinTableClause  Ljava/lang/String;
    MethodParameters:
                     Name  Flags
      hasAssociationTable  

  private java.lang.String getCondition(org.hibernate.annotations.FilterJoinTable);
    descriptor: (Lorg/hibernate/annotations/FilterJoinTable;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.FilterJoinTable filter
         0: .line 979
            aload 1 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.name:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 980
            aload 1 /* filter */
            invokeinterface org.hibernate.annotations.FilterJoinTable.condition:()Ljava/lang/String;
            astore 3 /* cond */
        start local 3 // java.lang.String cond
         2: .line 981
            aload 0 /* this */
            aload 3 /* cond */
            aload 2 /* name */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String cond
        end local 2 // java.lang.String name
        end local 1 // org.hibernate.annotations.FilterJoinTable filter
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    3     1  filter  Lorg/hibernate/annotations/FilterJoinTable;
            1    3     2    name  Ljava/lang/String;
            2    3     3    cond  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      filter  

  private java.lang.String getCondition(org.hibernate.annotations.Filter);
    descriptor: (Lorg/hibernate/annotations/Filter;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.Filter filter
         0: .line 986
            aload 1 /* filter */
            invokeinterface org.hibernate.annotations.Filter.name:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 987
            aload 1 /* filter */
            invokeinterface org.hibernate.annotations.Filter.condition:()Ljava/lang/String;
            astore 3 /* cond */
        start local 3 // java.lang.String cond
         2: .line 988
            aload 0 /* this */
            aload 3 /* cond */
            aload 2 /* name */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.getCondition:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String cond
        end local 2 // java.lang.String name
        end local 1 // org.hibernate.annotations.Filter filter
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    3     1  filter  Lorg/hibernate/annotations/Filter;
            1    3     2    name  Ljava/lang/String;
            2    3     3    cond  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      filter  

  private java.lang.String getCondition(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.lang.String cond
        start local 2 // java.lang.String name
         0: .line 992
            aload 1 /* cond */
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifeq 8
         1: .line 993
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.mappings:Lorg/hibernate/cfg/Mappings;
            aload 2 /* name */
            invokeinterface org.hibernate.cfg.Mappings.getFilterDefinition:(Ljava/lang/String;)Lorg/hibernate/engine/spi/FilterDefinition;
            invokevirtual org.hibernate.engine.spi.FilterDefinition.getDefaultFilterCondition:()Ljava/lang/String;
            astore 1 /* cond */
         2: .line 994
            aload 1 /* cond */
            invokestatic org.hibernate.internal.util.StringHelper.isEmpty:(Ljava/lang/String;)Z
            ifeq 8
         3: .line 995
            new org.hibernate.AnnotationException
            dup
         4: .line 996
            new java.lang.StringBuilder
            dup
            ldc "no filter condition found for filter "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 997
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 996
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 995
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1001
      StackMap locals:
      StackMap stack:
            aload 1 /* cond */
            areturn
        end local 2 // java.lang.String name
        end local 1 // java.lang.String cond
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    9     1  cond  Ljava/lang/String;
            0    9     2  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      cond  
      name  

  public void setCache(org.hibernate.annotations.Cache);
    descriptor: (Lorg/hibernate/annotations/Cache;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.Cache cacheAnn
         0: .line 1005
            aload 1 /* cacheAnn */
            ifnull 6
         1: .line 1006
            aload 0 /* this */
            aload 1 /* cacheAnn */
            invokeinterface org.hibernate.annotations.Cache.region:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifeq 2
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack: org.hibernate.cfg.annotations.CollectionBinder
         2: aload 1 /* cacheAnn */
            invokeinterface org.hibernate.annotations.Cache.region:()Ljava/lang/String;
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.annotations.Cache
      StackMap stack: org.hibernate.cfg.annotations.CollectionBinder java.lang.String
         3: putfield org.hibernate.cfg.annotations.CollectionBinder.cacheRegionName:Ljava/lang/String;
         4: .line 1007
            aload 0 /* this */
            aload 1 /* cacheAnn */
            invokeinterface org.hibernate.annotations.Cache.usage:()Lorg/hibernate/annotations/CacheConcurrencyStrategy;
            invokestatic org.hibernate.cfg.annotations.EntityBinder.getCacheConcurrencyStrategy:(Lorg/hibernate/annotations/CacheConcurrencyStrategy;)Ljava/lang/String;
            putfield org.hibernate.cfg.annotations.CollectionBinder.cacheConcurrencyStrategy:Ljava/lang/String;
         5: .line 1008
            goto 8
         6: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.cfg.annotations.CollectionBinder.cacheConcurrencyStrategy:Ljava/lang/String;
         7: .line 1011
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.cfg.annotations.CollectionBinder.cacheRegionName:Ljava/lang/String;
         8: .line 1013
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hibernate.annotations.Cache cacheAnn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    9     1  cacheAnn  Lorg/hibernate/annotations/Cache;
    MethodParameters:
          Name  Flags
      cacheAnn  

  public void setOneToMany(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean oneToMany
         0: .line 1016
            aload 0 /* this */
            iload 1 /* oneToMany */
            putfield org.hibernate.cfg.annotations.CollectionBinder.oneToMany:Z
         1: .line 1017
            return
        end local 1 // boolean oneToMany
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  oneToMany  Z
    MethodParameters:
           Name  Flags
      oneToMany  

  public void setIndexColumn(org.hibernate.cfg.IndexColumn);
    descriptor: (Lorg/hibernate/cfg/IndexColumn;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.IndexColumn indexColumn
         0: .line 1020
            aload 0 /* this */
            aload 1 /* indexColumn */
            putfield org.hibernate.cfg.annotations.CollectionBinder.indexColumn:Lorg/hibernate/cfg/IndexColumn;
         1: .line 1021
            return
        end local 1 // org.hibernate.cfg.IndexColumn indexColumn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  indexColumn  Lorg/hibernate/cfg/IndexColumn;
    MethodParameters:
             Name  Flags
      indexColumn  

  public void setMapKey(javax.persistence.MapKey);
    descriptor: (Ljavax/persistence/MapKey;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // javax.persistence.MapKey key
         0: .line 1024
            aload 1 /* key */
            ifnull 2
         1: .line 1025
            aload 0 /* this */
            aload 1 /* key */
            invokeinterface javax.persistence.MapKey.name:()Ljava/lang/String;
            putfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyPropertyName:Ljava/lang/String;
         2: .line 1027
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.persistence.MapKey key
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    3     1   key  Ljavax/persistence/MapKey;
    MethodParameters:
      Name  Flags
      key   

  private static java.lang.String buildOrderByClauseFromHql(java.lang.String, org.hibernate.mapping.PersistentClass, java.lang.String);
    descriptor: (Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.String orderByFragment
        start local 1 // org.hibernate.mapping.PersistentClass associatedClass
        start local 2 // java.lang.String role
         0: .line 1030
            aload 0 /* orderByFragment */
            ifnull 5
         1: .line 1031
            aload 0 /* orderByFragment */
            invokevirtual java.lang.String.length:()I
            ifne 3
         2: .line 1033
            ldc "id asc"
            areturn
         3: .line 1035
      StackMap locals:
      StackMap stack:
            ldc "desc"
            aload 0 /* orderByFragment */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1036
            ldc "id desc"
            areturn
         5: .line 1039
      StackMap locals:
      StackMap stack:
            aload 0 /* orderByFragment */
            areturn
        end local 2 // java.lang.String role
        end local 1 // org.hibernate.mapping.PersistentClass associatedClass
        end local 0 // java.lang.String orderByFragment
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0  orderByFragment  Ljava/lang/String;
            0    6     1  associatedClass  Lorg/hibernate/mapping/PersistentClass;
            0    6     2             role  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      orderByFragment  
      associatedClass  
      role             

  private static java.lang.String adjustUserSuppliedValueCollectionOrderingFragment(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String orderByFragment
         0: .line 1043
            aload 0 /* orderByFragment */
            ifnull 5
         1: .line 1045
            aload 0 /* orderByFragment */
            invokevirtual java.lang.String.length:()I
            ifne 3
         2: .line 1047
            ldc "$element$ asc"
            areturn
         3: .line 1049
      StackMap locals:
      StackMap stack:
            ldc "desc"
            aload 0 /* orderByFragment */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1050
            ldc "$element$ desc"
            areturn
         5: .line 1053
      StackMap locals:
      StackMap stack:
            aload 0 /* orderByFragment */
            areturn
        end local 0 // java.lang.String orderByFragment
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0  orderByFragment  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      orderByFragment  

  private static org.hibernate.mapping.SimpleValue buildCollectionKey(org.hibernate.mapping.Collection, org.hibernate.cfg.Ejb3JoinColumn[], boolean, org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/mapping/Collection;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/SimpleValue;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // org.hibernate.mapping.Collection collValue
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        start local 2 // boolean cascadeDeleteEnabled
        start local 3 // org.hibernate.annotations.common.reflection.XProperty property
        start local 4 // org.hibernate.cfg.Mappings mappings
         0: .line 1066
            aload 1 /* joinColumns */
            arraylength
            ifle 12
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 12
         1: .line 1067
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getManyToManyOwnerSideEntityName:()Ljava/lang/String;
            ifnull 3
         2: .line 1068
            new java.lang.StringBuilder
            dup
            ldc "inverse__"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getManyToManyOwnerSideEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 4
         3: .line 1069
      StackMap locals:
      StackMap stack:
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyHolder:()Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getEntityName:()Ljava/lang/String;
         4: .line 1067
      StackMap locals:
      StackMap stack: java.lang.String
            astore 6 /* entityName */
        start local 6 // java.lang.String entityName
         5: .line 1070
            aload 4 /* mappings */
         6: .line 1071
            aload 6 /* entityName */
         7: .line 1072
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
         8: .line 1070
            invokeinterface org.hibernate.cfg.Mappings.getPropertyReferencedAssociation:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* propRef */
        start local 7 // java.lang.String propRef
         9: .line 1074
            aload 7 /* propRef */
            ifnull 12
        10: .line 1075
            aload 0 /* collValue */
            aload 7 /* propRef */
            invokevirtual org.hibernate.mapping.Collection.setReferencedPropertyName:(Ljava/lang/String;)V
        11: .line 1076
            aload 4 /* mappings */
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            aload 7 /* propRef */
            invokeinterface org.hibernate.cfg.Mappings.addPropertyReference:(Ljava/lang/String;Ljava/lang/String;)V
        end local 7 // java.lang.String propRef
        end local 6 // java.lang.String entityName
        12: .line 1079
      StackMap locals:
      StackMap stack:
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getReferencedPropertyName:()Ljava/lang/String;
            astore 6 /* propRef */
        start local 6 // java.lang.String propRef
        13: .line 1080
            aload 6 /* propRef */
            ifnonnull 16
        14: .line 1081
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifier:()Lorg/hibernate/mapping/KeyValue;
            astore 5 /* keyVal */
        start local 5 // org.hibernate.mapping.KeyValue keyVal
        15: .line 1082
            goto 20
        end local 5 // org.hibernate.mapping.KeyValue keyVal
        16: .line 1084
      StackMap locals: org.hibernate.mapping.Collection org.hibernate.cfg.Ejb3JoinColumn[] int org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.Mappings top java.lang.String
      StackMap stack:
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
        17: .line 1085
            aload 6 /* propRef */
            invokevirtual org.hibernate.mapping.PersistentClass.getReferencedProperty:(Ljava/lang/String;)Lorg/hibernate/mapping/Property;
        18: .line 1086
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
        19: .line 1084
            checkcast org.hibernate.mapping.KeyValue
            astore 5 /* keyVal */
        start local 5 // org.hibernate.mapping.KeyValue keyVal
        20: .line 1088
      StackMap locals: org.hibernate.mapping.Collection org.hibernate.cfg.Ejb3JoinColumn[] int org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.Mappings org.hibernate.mapping.KeyValue java.lang.String
      StackMap stack:
            new org.hibernate.mapping.DependantValue
            dup
            aload 4 /* mappings */
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            aload 5 /* keyVal */
            invokespecial org.hibernate.mapping.DependantValue.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Table;Lorg/hibernate/mapping/KeyValue;)V
            astore 7 /* key */
        start local 7 // org.hibernate.mapping.DependantValue key
        21: .line 1089
            aload 7 /* key */
            aconst_null
            invokevirtual org.hibernate.mapping.DependantValue.setTypeName:(Ljava/lang/String;)V
        22: .line 1090
            aload 1 /* joinColumns */
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.Ejb3Column.checkPropertyConsistency:([Lorg/hibernate/cfg/Ejb3Column;Ljava/lang/String;)V
        23: .line 1091
            aload 7 /* key */
            aload 1 /* joinColumns */
            arraylength
            ifeq 24
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.isNullable:()Z
            ifne 24
            iconst_0
            goto 25
      StackMap locals: org.hibernate.mapping.Collection org.hibernate.cfg.Ejb3JoinColumn[] int org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.Mappings org.hibernate.mapping.KeyValue java.lang.String org.hibernate.mapping.DependantValue
      StackMap stack: org.hibernate.mapping.DependantValue
        24: iconst_1
      StackMap locals: org.hibernate.mapping.Collection org.hibernate.cfg.Ejb3JoinColumn[] int org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.Mappings org.hibernate.mapping.KeyValue java.lang.String org.hibernate.mapping.DependantValue
      StackMap stack: org.hibernate.mapping.DependantValue int
        25: invokevirtual org.hibernate.mapping.DependantValue.setNullable:(Z)V
        26: .line 1092
            aload 7 /* key */
            aload 1 /* joinColumns */
            arraylength
            ifeq 27
            aload 1 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.isUpdatable:()Z
            ifne 27
            iconst_0
            goto 28
      StackMap locals:
      StackMap stack: org.hibernate.mapping.DependantValue
        27: iconst_1
      StackMap locals: org.hibernate.mapping.Collection org.hibernate.cfg.Ejb3JoinColumn[] int org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.Mappings org.hibernate.mapping.KeyValue java.lang.String org.hibernate.mapping.DependantValue
      StackMap stack: org.hibernate.mapping.DependantValue int
        28: invokevirtual org.hibernate.mapping.DependantValue.setUpdateable:(Z)V
        29: .line 1093
            aload 7 /* key */
            iload 2 /* cascadeDeleteEnabled */
            invokevirtual org.hibernate.mapping.DependantValue.setCascadeDeleteEnabled:(Z)V
        30: .line 1094
            aload 0 /* collValue */
            aload 7 /* key */
            invokevirtual org.hibernate.mapping.Collection.setKey:(Lorg/hibernate/mapping/KeyValue;)V
        31: .line 1095
            aload 3 /* property */
            ifnull 32
            aload 3 /* property */
            ldc Lorg/hibernate/annotations/ForeignKey;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.ForeignKey
            goto 33
      StackMap locals:
      StackMap stack:
        32: aconst_null
      StackMap locals:
      StackMap stack: org.hibernate.annotations.ForeignKey
        33: astore 8 /* fk */
        start local 8 // org.hibernate.annotations.ForeignKey fk
        34: .line 1096
            aload 8 /* fk */
            ifnull 35
            aload 8 /* fk */
            invokeinterface org.hibernate.annotations.ForeignKey.name:()Ljava/lang/String;
            goto 36
      StackMap locals: org.hibernate.annotations.ForeignKey
      StackMap stack:
        35: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
        36: astore 9 /* fkName */
        start local 9 // java.lang.String fkName
        37: .line 1097
            aload 9 /* fkName */
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifne 38
            aload 7 /* key */
            aload 9 /* fkName */
            invokevirtual org.hibernate.mapping.DependantValue.setForeignKeyName:(Ljava/lang/String;)V
        38: .line 1098
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* key */
            areturn
        end local 9 // java.lang.String fkName
        end local 8 // org.hibernate.annotations.ForeignKey fk
        end local 7 // org.hibernate.mapping.DependantValue key
        end local 6 // java.lang.String propRef
        end local 5 // org.hibernate.mapping.KeyValue keyVal
        end local 4 // org.hibernate.cfg.Mappings mappings
        end local 3 // org.hibernate.annotations.common.reflection.XProperty property
        end local 2 // boolean cascadeDeleteEnabled
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        end local 0 // org.hibernate.mapping.Collection collValue
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   39     0             collValue  Lorg/hibernate/mapping/Collection;
            0   39     1           joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   39     2  cascadeDeleteEnabled  Z
            0   39     3              property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   39     4              mappings  Lorg/hibernate/cfg/Mappings;
           15   16     5                keyVal  Lorg/hibernate/mapping/KeyValue;
           20   39     5                keyVal  Lorg/hibernate/mapping/KeyValue;
            5   12     6            entityName  Ljava/lang/String;
            9   12     7               propRef  Ljava/lang/String;
           13   39     6               propRef  Ljava/lang/String;
           21   39     7                   key  Lorg/hibernate/mapping/DependantValue;
           34   39     8                    fk  Lorg/hibernate/annotations/ForeignKey;
           37   39     9                fkName  Ljava/lang/String;
    MethodParameters:
                      Name  Flags
      collValue             
      joinColumns           
      cascadeDeleteEnabled  
      property              
      mappings              

  protected void bindManyToManySecondPass(org.hibernate.mapping.Collection, java.util.Map, org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.cfg.Ejb3Column[], boolean, org.hibernate.annotations.common.reflection.XClass, boolean, boolean, boolean, org.hibernate.cfg.annotations.TableBinder, org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.PropertyHolder, org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/mapping/Collection;Ljava/util/Map;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3JoinColumn;[Lorg/hibernate/cfg/Ejb3Column;ZLorg/hibernate/annotations/common/reflection/XClass;ZZZLorg/hibernate/cfg/annotations/TableBinder;Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/Mappings;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=31, args_size=15
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.mapping.Collection collValue
        start local 2 // java.util.Map persistentClasses
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        start local 4 // org.hibernate.cfg.Ejb3JoinColumn[] inverseJoinColumns
        start local 5 // org.hibernate.cfg.Ejb3Column[] elementColumns
        start local 6 // boolean isEmbedded
        start local 7 // org.hibernate.annotations.common.reflection.XClass collType
        start local 8 // boolean ignoreNotFound
        start local 9 // boolean unique
        start local 10 // boolean cascadeDeleteEnabled
        start local 11 // org.hibernate.cfg.annotations.TableBinder associationTableBinder
        start local 12 // org.hibernate.annotations.common.reflection.XProperty property
        start local 13 // org.hibernate.cfg.PropertyHolder parentPropertyHolder
        start local 14 // org.hibernate.cfg.Mappings mappings
         0: .line 1115
            aload 12 /* property */
            ifnonnull 2
         1: .line 1116
            new java.lang.IllegalArgumentException
            dup
            ldc "null was passed for argument property"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1119
      StackMap locals:
      StackMap stack:
            aload 2 /* persistentClasses */
            aload 7 /* collType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.mapping.PersistentClass
            astore 15 /* collectionEntity */
        start local 15 // org.hibernate.mapping.PersistentClass collectionEntity
         3: .line 1120
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.jpaOrderBy:Ljavax/persistence/OrderBy;
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.extractHqlOrderBy:(Ljavax/persistence/OrderBy;)Ljava/lang/String;
            astore 16 /* hqlOrderBy */
        start local 16 // java.lang.String hqlOrderBy
         4: .line 1122
            aload 15 /* collectionEntity */
            ifnull 5
            iconst_1
            goto 6
      StackMap locals: org.hibernate.mapping.PersistentClass java.lang.String
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 17 /* isCollectionOfEntities */
        start local 17 // boolean isCollectionOfEntities
         7: .line 1123
            aload 12 /* property */
            ldc Lorg/hibernate/annotations/ManyToAny;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.ManyToAny
            astore 18 /* anyAnn */
        start local 18 // org.hibernate.annotations.ManyToAny anyAnn
         8: .line 1124
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
            ifeq 14
         9: .line 1125
            new java.lang.StringBuilder
            dup
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 19 /* path */
        start local 19 // java.lang.String path
        10: .line 1126
            iload 17 /* isCollectionOfEntities */
            ifeq 11
            iload 9 /* unique */
            ifeq 11
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Binding a OneToMany: %s through an association table"
            aload 19 /* path */
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
            goto 14
        11: .line 1127
      StackMap locals: int org.hibernate.annotations.ManyToAny java.lang.String
      StackMap stack:
            iload 17 /* isCollectionOfEntities */
            ifeq 12
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Binding as ManyToMany: %s"
            aload 19 /* path */
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
            goto 14
        12: .line 1128
      StackMap locals:
      StackMap stack:
            aload 18 /* anyAnn */
            ifnull 13
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Binding a ManyToAny: %s"
            aload 19 /* path */
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
            goto 14
        13: .line 1129
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.cfg.annotations.CollectionBinder.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Binding a collection of element: %s"
            aload 19 /* path */
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 19 // java.lang.String path
        14: .line 1132
      StackMap locals:
      StackMap stack:
            iload 17 /* isCollectionOfEntities */
            ifne 32
        15: .line 1133
            aload 12 /* property */
            ldc Ljavax/persistence/ManyToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 16
            aload 12 /* property */
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 20
        16: .line 1134
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 19 /* path */
        start local 19 // java.lang.String path
        17: .line 1135
            new org.hibernate.AnnotationException
            dup
        18: .line 1136
            new java.lang.StringBuilder
            dup
            ldc "Use of @OneToMany or @ManyToMany targeting an unmapped class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 19 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* collType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 1135
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 19 // java.lang.String path
        20: .line 1139
      StackMap locals:
      StackMap stack:
            aload 18 /* anyAnn */
            ifnull 26
        21: .line 1140
            aload 13 /* parentPropertyHolder */
            aload 12 /* property */
            invokeinterface org.hibernate.cfg.PropertyHolder.getJoinTable:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljavax/persistence/JoinTable;
            ifnonnull 32
        22: .line 1141
            new java.lang.StringBuilder
            dup
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 19 /* path */
        start local 19 // java.lang.String path
        23: .line 1142
            new org.hibernate.AnnotationException
            dup
        24: .line 1143
            new java.lang.StringBuilder
            dup
            ldc "@JoinTable is mandatory when @ManyToAny is used: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 19 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 1142
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 19 // java.lang.String path
        26: .line 1148
      StackMap locals:
      StackMap stack:
            aload 13 /* parentPropertyHolder */
            aload 12 /* property */
            invokeinterface org.hibernate.cfg.PropertyHolder.getJoinTable:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljavax/persistence/JoinTable;
            astore 19 /* joinTableAnn */
        start local 19 // javax.persistence.JoinTable joinTableAnn
        27: .line 1149
            aload 19 /* joinTableAnn */
            ifnull 32
            aload 19 /* joinTableAnn */
            invokeinterface javax.persistence.JoinTable.inverseJoinColumns:()[Ljavax/persistence/JoinColumn;
            arraylength
            ifle 32
        28: .line 1150
            new java.lang.StringBuilder
            dup
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 20 /* path */
        start local 20 // java.lang.String path
        29: .line 1151
            new org.hibernate.AnnotationException
            dup
        30: .line 1152
            new java.lang.StringBuilder
            dup
            ldc "Use of @JoinTable.inverseJoinColumns targeting an unmapped class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 20 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* collType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        31: .line 1151
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // java.lang.String path
        end local 19 // javax.persistence.JoinTable joinTableAnn
        32: .line 1158
      StackMap locals:
      StackMap stack:
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifeq 33
            iconst_0
            goto 34
      StackMap locals:
      StackMap stack:
        33: iconst_1
      StackMap locals:
      StackMap stack: int
        34: istore 19 /* mappedBy */
        start local 19 // boolean mappedBy
        35: .line 1159
            iload 19 /* mappedBy */
            ifeq 68
        36: .line 1160
            iload 17 /* isCollectionOfEntities */
            ifne 45
        37: .line 1161
            new java.lang.StringBuilder
            dup
            bipush 80
            invokespecial java.lang.StringBuilder.<init>:(I)V
        38: .line 1163
            ldc "Collection of elements must not have mappedBy or association reference an unmapped entity: "
        39: .line 1162
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        40: .line 1165
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        41: .line 1166
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 1167
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        43: .line 1161
            astore 20 /* error */
        start local 20 // java.lang.StringBuilder error
        44: .line 1168
            new org.hibernate.AnnotationException
            dup
            aload 20 /* error */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // java.lang.StringBuilder error
        45: .line 1172
      StackMap locals: int
      StackMap stack:
            aload 15 /* collectionEntity */
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.PersistentClass.getRecursiveProperty:(Ljava/lang/String;)Lorg/hibernate/mapping/Property;
            astore 20 /* otherSideProperty */
        start local 20 // org.hibernate.mapping.Property otherSideProperty
        46: .line 1173
            goto 56
        end local 20 // org.hibernate.mapping.Property otherSideProperty
        47: .line 1174
      StackMap locals:
      StackMap stack: org.hibernate.MappingException
            pop
        48: .line 1175
            new java.lang.StringBuilder
            dup
            bipush 80
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 21 /* error */
        start local 21 // java.lang.StringBuilder error
        49: .line 1176
            aload 21 /* error */
            ldc "mappedBy reference an unknown target entity property: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        50: .line 1177
            aload 7 /* collType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        51: .line 1178
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        52: .line 1179
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        53: .line 1180
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        54: .line 1181
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        55: .line 1182
            new org.hibernate.AnnotationException
            dup
            aload 21 /* error */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 21 // java.lang.StringBuilder error
        start local 20 // org.hibernate.mapping.Property otherSideProperty
        56: .line 1185
      StackMap locals: org.hibernate.mapping.Property
      StackMap stack:
            aload 20 /* otherSideProperty */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            instanceof org.hibernate.mapping.Collection
            ifeq 59
        57: .line 1187
            aload 20 /* otherSideProperty */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            checkcast org.hibernate.mapping.Collection
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            astore 21 /* table */
        start local 21 // org.hibernate.mapping.Table table
        58: .line 1188
            goto 60
        end local 21 // org.hibernate.mapping.Table table
        59: .line 1191
      StackMap locals:
      StackMap stack:
            aload 20 /* otherSideProperty */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            invokeinterface org.hibernate.mapping.Value.getTable:()Lorg/hibernate/mapping/Table;
            astore 21 /* table */
        start local 21 // org.hibernate.mapping.Table table
        60: .line 1193
      StackMap locals: org.hibernate.mapping.Table
      StackMap stack:
            aload 1 /* collValue */
            aload 21 /* table */
            invokevirtual org.hibernate.mapping.Collection.setCollectionTable:(Lorg/hibernate/mapping/Table;)V
        61: .line 1194
            aload 15 /* collectionEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            astore 22 /* entityName */
        start local 22 // java.lang.String entityName
        62: .line 1195
            aload 3 /* joinColumns */
            dup
            astore 26
            arraylength
            istore 25
            iconst_0
            istore 24
            goto 66
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.Property org.hibernate.mapping.Table java.lang.String top int int org.hibernate.cfg.Ejb3JoinColumn[]
      StackMap stack:
        63: aload 26
            iload 24
            aaload
            astore 23 /* column */
        start local 23 // org.hibernate.cfg.Ejb3JoinColumn column
        64: .line 1197
            aload 23 /* column */
            aload 22 /* entityName */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.setManyToManyOwnerSideEntityName:(Ljava/lang/String;)V
        end local 23 // org.hibernate.cfg.Ejb3JoinColumn column
        65: .line 1195
            iinc 24 1
      StackMap locals:
      StackMap stack:
        66: iload 24
            iload 25
            if_icmplt 63
        end local 22 // java.lang.String entityName
        end local 21 // org.hibernate.mapping.Table table
        end local 20 // org.hibernate.mapping.Property otherSideProperty
        67: .line 1199
            goto 99
        68: .line 1203
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack:
            aload 3 /* joinColumns */
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 81
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int top int int org.hibernate.cfg.Ejb3JoinColumn[]
      StackMap stack:
        69: aload 23
            iload 21
            aaload
            astore 20 /* column */
        start local 20 // org.hibernate.cfg.Ejb3JoinColumn column
        70: .line 1204
            aload 14 /* mappings */
        71: .line 1205
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            aload 20 /* column */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
        72: .line 1204
            invokeinterface org.hibernate.cfg.Mappings.getFromMappedBy:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 24 /* mappedByProperty */
        start local 24 // java.lang.String mappedByProperty
        73: .line 1207
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getTable:()Lorg/hibernate/mapping/Table;
            astore 25 /* ownerTable */
        start local 25 // org.hibernate.mapping.Table ownerTable
        74: .line 1208
            aload 20 /* column */
        75: .line 1209
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
        76: .line 1210
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getJpaEntityName:()Ljava/lang/String;
        77: .line 1211
            aload 14 /* mappings */
            aload 25 /* ownerTable */
            invokeinterface org.hibernate.cfg.Mappings.getLogicalTableName:(Lorg/hibernate/mapping/Table;)Ljava/lang/String;
        78: .line 1212
            aload 24 /* mappedByProperty */
        79: .line 1208
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.setMappedBy:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        end local 25 // org.hibernate.mapping.Table ownerTable
        end local 24 // java.lang.String mappedByProperty
        end local 20 // org.hibernate.cfg.Ejb3JoinColumn column
        80: .line 1203
            iinc 21 1
      StackMap locals:
      StackMap stack:
        81: iload 21
            iload 22
            if_icmplt 69
        82: .line 1217
            aload 11 /* associationTableBinder */
            invokevirtual org.hibernate.cfg.annotations.TableBinder.getName:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isEmpty:(Ljava/lang/String;)Z
            ifeq 95
        83: .line 1219
            aload 11 /* associationTableBinder */
        84: .line 1220
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
        85: .line 1221
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getJpaEntityName:()Ljava/lang/String;
        86: .line 1222
            aload 14 /* mappings */
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getTable:()Lorg/hibernate/mapping/Table;
            invokeinterface org.hibernate.cfg.Mappings.getLogicalTableName:(Lorg/hibernate/mapping/Table;)Ljava/lang/String;
        87: .line 1223
            aload 15 /* collectionEntity */
            ifnull 88
            aload 15 /* collectionEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            goto 89
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String
        88: aconst_null
        89: .line 1224
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String java.lang.String
            aload 15 /* collectionEntity */
            ifnull 90
            aload 15 /* collectionEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getJpaEntityName:()Ljava/lang/String;
            goto 91
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String java.lang.String
        90: aconst_null
        91: .line 1225
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
            aload 15 /* collectionEntity */
            ifnull 92
            aload 14 /* mappings */
            aload 15 /* collectionEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getTable:()Lorg/hibernate/mapping/Table;
            invokeinterface org.hibernate.cfg.Mappings.getLogicalTableName:(Lorg/hibernate/mapping/Table;)Ljava/lang/String;
            goto 93
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
        92: aconst_null
        93: .line 1226
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
        94: .line 1219
            invokevirtual org.hibernate.cfg.annotations.TableBinder.setDefaultName:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        95: .line 1229
      StackMap locals:
      StackMap stack:
            aload 11 /* associationTableBinder */
            iload 17 /* isCollectionOfEntities */
            ifne 96
            aload 12 /* property */
            ldc Ljavax/persistence/ElementCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 96
            iconst_1
            goto 97
      StackMap locals:
      StackMap stack: org.hibernate.cfg.annotations.TableBinder
        96: iconst_0
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int
      StackMap stack: org.hibernate.cfg.annotations.TableBinder int
        97: invokevirtual org.hibernate.cfg.annotations.TableBinder.setJPA2ElementCollection:(Z)V
        98: .line 1230
            aload 1 /* collValue */
            aload 11 /* associationTableBinder */
            invokevirtual org.hibernate.cfg.annotations.TableBinder.bind:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.mapping.Collection.setCollectionTable:(Lorg/hibernate/mapping/Table;)V
        99: .line 1232
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 17 /* isCollectionOfEntities */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.bindFilters:(Z)V
       100: .line 1233
            aload 1 /* collValue */
            aload 15 /* collectionEntity */
            aload 3 /* joinColumns */
            iload 10 /* cascadeDeleteEnabled */
            aload 12 /* property */
            aload 14 /* mappings */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.bindCollectionSecondPass:(Lorg/hibernate/mapping/Collection;Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/Mappings;)V
       101: .line 1235
            aconst_null
            astore 20 /* element */
        start local 20 // org.hibernate.mapping.ManyToOne element
       102: .line 1236
            iload 17 /* isCollectionOfEntities */
            ifeq 121
       103: .line 1238
            new org.hibernate.mapping.ManyToOne
            dup
            aload 14 /* mappings */
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokespecial org.hibernate.mapping.ManyToOne.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Table;)V
       104: .line 1237
            astore 20 /* element */
       105: .line 1239
            aload 1 /* collValue */
            aload 20 /* element */
            invokevirtual org.hibernate.mapping.Collection.setElement:(Lorg/hibernate/mapping/Value;)V
       106: .line 1240
            aload 20 /* element */
            aload 7 /* collType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.ManyToOne.setReferencedEntityName:(Ljava/lang/String;)V
       107: .line 1244
            aload 20 /* element */
            getstatic org.hibernate.FetchMode.JOIN:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.ManyToOne.setFetchMode:(Lorg/hibernate/FetchMode;)V
       108: .line 1245
            aload 20 /* element */
            iconst_0
            invokevirtual org.hibernate.mapping.ManyToOne.setLazy:(Z)V
       109: .line 1246
            aload 20 /* element */
            iload 8 /* ignoreNotFound */
            invokevirtual org.hibernate.mapping.ManyToOne.setIgnoreNotFound:(Z)V
       110: .line 1248
            aload 16 /* hqlOrderBy */
            ifnull 114
       111: .line 1249
            aload 1 /* collValue */
       112: .line 1250
            aload 16 /* hqlOrderBy */
            aload 15 /* collectionEntity */
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.buildOrderByClauseFromHql:(Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Ljava/lang/String;)Ljava/lang/String;
       113: .line 1249
            invokevirtual org.hibernate.mapping.Collection.setManyToManyOrdering:(Ljava/lang/String;)V
       114: .line 1253
      StackMap locals: org.hibernate.mapping.ManyToOne
      StackMap stack:
            aload 12 /* property */
            ldc Lorg/hibernate/annotations/ForeignKey;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.ForeignKey
            astore 21 /* fk */
        start local 21 // org.hibernate.annotations.ForeignKey fk
       115: .line 1254
            aload 21 /* fk */
            ifnull 116
            aload 21 /* fk */
            invokeinterface org.hibernate.annotations.ForeignKey.inverseName:()Ljava/lang/String;
            goto 117
      StackMap locals: org.hibernate.annotations.ForeignKey
      StackMap stack:
       116: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
       117: astore 22 /* fkName */
        start local 22 // java.lang.String fkName
       118: .line 1255
            aload 22 /* fkName */
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifne 237
       119: .line 1256
            aload 20 /* element */
            aload 22 /* fkName */
            invokevirtual org.hibernate.mapping.ManyToOne.setForeignKeyName:(Ljava/lang/String;)V
        end local 22 // java.lang.String fkName
        end local 21 // org.hibernate.annotations.ForeignKey fk
       120: .line 1258
            goto 237
       121: .line 1259
      StackMap locals:
      StackMap stack:
            aload 18 /* anyAnn */
            ifnull 134
       122: .line 1262
            new org.hibernate.cfg.PropertyInferredData
            dup
            aconst_null
            aload 12 /* property */
            ldc "unsupported"
            aload 14 /* mappings */
            invokeinterface org.hibernate.cfg.Mappings.getReflectionManager:()Lorg/hibernate/annotations/common/reflection/ReflectionManager;
            invokespecial org.hibernate.cfg.PropertyInferredData.<init>:(Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/annotations/common/reflection/XProperty;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/ReflectionManager;)V
            astore 21 /* inferredData */
        start local 21 // org.hibernate.cfg.PropertyData inferredData
       123: .line 1264
            aload 4 /* inverseJoinColumns */
            dup
            astore 25
            arraylength
            istore 24
            iconst_0
            istore 23
            goto 127
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.cfg.PropertyData top int int org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
       124: aload 25
            iload 23
            aaload
            astore 22 /* column */
        start local 22 // org.hibernate.cfg.Ejb3Column column
       125: .line 1265
            aload 22 /* column */
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.cfg.Ejb3Column.setTable:(Lorg/hibernate/mapping/Table;)V
        end local 22 // org.hibernate.cfg.Ejb3Column column
       126: .line 1264
            iinc 23 1
      StackMap locals:
      StackMap stack:
       127: iload 23
            iload 24
            if_icmplt 124
       128: .line 1267
            aload 18 /* anyAnn */
            invokeinterface org.hibernate.annotations.ManyToAny.metaDef:()Ljava/lang/String;
            aload 4 /* inverseJoinColumns */
            aload 18 /* anyAnn */
            invokeinterface org.hibernate.annotations.ManyToAny.metaColumn:()Ljavax/persistence/Column;
       129: .line 1268
            aload 21 /* inferredData */
            iload 10 /* cascadeDeleteEnabled */
            getstatic org.hibernate.cfg.annotations.Nullability.NO_CONSTRAINT:Lorg/hibernate/cfg/annotations/Nullability;
       130: .line 1269
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            new org.hibernate.cfg.annotations.EntityBinder
            dup
            invokespecial org.hibernate.cfg.annotations.EntityBinder.<init>:()V
            iconst_1
            aload 14 /* mappings */
       131: .line 1267
            invokestatic org.hibernate.cfg.BinderHelper.buildAnyValue:(Ljava/lang/String;[Lorg/hibernate/cfg/Ejb3JoinColumn;Ljavax/persistence/Column;Lorg/hibernate/cfg/PropertyData;ZLorg/hibernate/cfg/annotations/Nullability;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/annotations/EntityBinder;ZLorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/Any;
            astore 22 /* any */
        start local 22 // org.hibernate.mapping.Any any
       132: .line 1270
            aload 1 /* collValue */
            aload 22 /* any */
            invokevirtual org.hibernate.mapping.Collection.setElement:(Lorg/hibernate/mapping/Value;)V
        end local 22 // org.hibernate.mapping.Any any
        end local 21 // org.hibernate.cfg.PropertyData inferredData
       133: .line 1271
            goto 237
       134: .line 1276
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne
      StackMap stack:
            aconst_null
            astore 23 /* holder */
        start local 23 // org.hibernate.cfg.CollectionPropertyHolder holder
       135: .line 1277
            getstatic org.hibernate.cfg.BinderHelper.PRIMITIVE_NAMES:Ljava/util/Set;
            aload 7 /* collType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 146
       136: .line 1278
            getstatic org.hibernate.cfg.AnnotatedClassType.NONE:Lorg/hibernate/cfg/AnnotatedClassType;
            astore 22 /* classType */
        start local 22 // org.hibernate.cfg.AnnotatedClassType classType
       137: .line 1279
            aconst_null
            astore 21 /* elementClass */
        start local 21 // org.hibernate.annotations.common.reflection.XClass elementClass
       138: .line 1282
            aload 1 /* collValue */
       139: .line 1283
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
       140: .line 1284
            aconst_null
       141: .line 1285
            aload 12 /* property */
       142: .line 1286
            aload 13 /* parentPropertyHolder */
       143: .line 1287
            aload 14 /* mappings */
       144: .line 1281
            invokestatic org.hibernate.cfg.PropertyHolderBuilder.buildPropertyHolder:(Lorg/hibernate/mapping/Collection;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/cfg/CollectionPropertyHolder;
            astore 23 /* holder */
       145: .line 1289
            goto 163
        end local 22 // org.hibernate.cfg.AnnotatedClassType classType
        end local 21 // org.hibernate.annotations.common.reflection.XClass elementClass
       146: .line 1291
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne top top org.hibernate.cfg.CollectionPropertyHolder
      StackMap stack:
            aload 7 /* collType */
            astore 21 /* elementClass */
        start local 21 // org.hibernate.annotations.common.reflection.XClass elementClass
       147: .line 1292
            aload 14 /* mappings */
            aload 21 /* elementClass */
            invokeinterface org.hibernate.cfg.Mappings.getClassType:(Lorg/hibernate/annotations/common/reflection/XClass;)Lorg/hibernate/cfg/AnnotatedClassType;
            astore 22 /* classType */
        start local 22 // org.hibernate.cfg.AnnotatedClassType classType
       148: .line 1295
            aload 1 /* collValue */
       149: .line 1296
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
       150: .line 1297
            aload 21 /* elementClass */
       151: .line 1298
            aload 12 /* property */
       152: .line 1299
            aload 13 /* parentPropertyHolder */
       153: .line 1300
            aload 14 /* mappings */
       154: .line 1294
            invokestatic org.hibernate.cfg.PropertyHolderBuilder.buildPropertyHolder:(Lorg/hibernate/mapping/Collection;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/cfg/CollectionPropertyHolder;
            astore 23 /* holder */
       155: .line 1306
            aload 13 /* parentPropertyHolder */
            aload 12 /* property */
            invokeinterface org.hibernate.cfg.PropertyHolder.startingProperty:(Lorg/hibernate/annotations/common/reflection/XProperty;)V
       156: .line 1309
            aload 12 /* property */
            ldc Ljavax/persistence/AttributeOverride;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 159
       157: .line 1310
            aload 12 /* property */
            ldc Ljavax/persistence/AttributeOverrides;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 159
       158: .line 1309
            iconst_0
            goto 160
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder
      StackMap stack:
       159: iconst_1
      StackMap locals:
      StackMap stack: int
       160: istore 24 /* attributeOverride */
        start local 24 // boolean attributeOverride
       161: .line 1312
            iload 6 /* isEmbedded */
            ifne 162
            iload 24 /* attributeOverride */
            ifeq 163
       162: .line 1313
      StackMap locals: int
      StackMap stack:
            getstatic org.hibernate.cfg.AnnotatedClassType.EMBEDDABLE:Lorg/hibernate/cfg/AnnotatedClassType;
            astore 22 /* classType */
        end local 24 // boolean attributeOverride
       163: .line 1317
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.cfg.AnnotatedClassType.EMBEDDABLE:Lorg/hibernate/cfg/AnnotatedClassType;
            aload 22 /* classType */
            invokevirtual org.hibernate.cfg.AnnotatedClassType.equals:(Ljava/lang/Object;)Z
            ifeq 204
       164: .line 1318
            new org.hibernate.cfg.annotations.EntityBinder
            dup
            invokespecial org.hibernate.cfg.annotations.EntityBinder.<init>:()V
            astore 24 /* entityBinder */
        start local 24 // org.hibernate.cfg.annotations.EntityBinder entityBinder
       165: .line 1319
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            astore 25 /* owner */
        start local 25 // org.hibernate.mapping.PersistentClass owner
       166: .line 1323
            aload 25 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierProperty:()Lorg/hibernate/mapping/Property;
            ifnull 169
       167: .line 1324
            aload 25 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierProperty:()Lorg/hibernate/mapping/Property;
            invokevirtual org.hibernate.mapping.Property.getPropertyAccessorName:()Ljava/lang/String;
            ldc "property"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 26 /* isPropertyAnnotated */
        start local 26 // boolean isPropertyAnnotated
       168: .line 1325
            goto 174
        end local 26 // boolean isPropertyAnnotated
       169: .line 1326
      StackMap locals: org.hibernate.cfg.annotations.EntityBinder org.hibernate.mapping.PersistentClass
      StackMap stack:
            aload 25 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierMapper:()Lorg/hibernate/mapping/Component;
            ifnull 173
            aload 25 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierMapper:()Lorg/hibernate/mapping/Component;
            invokevirtual org.hibernate.mapping.Component.getPropertySpan:()I
            ifle 173
       170: .line 1327
            aload 25 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierMapper:()Lorg/hibernate/mapping/Component;
            invokevirtual org.hibernate.mapping.Component.getPropertyIterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Property
            astore 27 /* prop */
        start local 27 // org.hibernate.mapping.Property prop
       171: .line 1328
            aload 27 /* prop */
            invokevirtual org.hibernate.mapping.Property.getPropertyAccessorName:()Ljava/lang/String;
            ldc "property"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 26 /* isPropertyAnnotated */
        end local 27 // org.hibernate.mapping.Property prop
        start local 26 // boolean isPropertyAnnotated
       172: .line 1329
            goto 174
        end local 26 // boolean isPropertyAnnotated
       173: .line 1331
      StackMap locals:
      StackMap stack:
            new org.hibernate.annotations.common.AssertionFailure
            dup
            ldc "Unable to guess collection property accessor name"
            invokespecial org.hibernate.annotations.common.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        start local 26 // boolean isPropertyAnnotated
       174: .line 1335
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.isMap:()Z
            ifeq 180
       175: .line 1337
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.isHibernateExtensionMapping:()Z
            ifeq 178
       176: .line 1338
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "element"
            aload 21 /* elementClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 27 /* inferredData */
        start local 27 // org.hibernate.cfg.PropertyData inferredData
       177: .line 1339
            goto 184
        end local 27 // org.hibernate.cfg.PropertyData inferredData
       178: .line 1341
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "value"
            aload 21 /* elementClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 27 /* inferredData */
        start local 27 // org.hibernate.cfg.PropertyData inferredData
       179: .line 1343
            goto 184
        end local 27 // org.hibernate.cfg.PropertyData inferredData
       180: .line 1345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.CollectionBinder.isHibernateExtensionMapping:()Z
            ifeq 183
       181: .line 1346
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "element"
            aload 21 /* elementClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 27 /* inferredData */
        start local 27 // org.hibernate.cfg.PropertyData inferredData
       182: .line 1347
            goto 184
        end local 27 // org.hibernate.cfg.PropertyData inferredData
       183: .line 1350
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "collection&&element"
            aload 21 /* elementClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 27 /* inferredData */
        start local 27 // org.hibernate.cfg.PropertyData inferredData
       184: .line 1354
      StackMap locals: org.hibernate.cfg.PropertyData
      StackMap stack:
            iconst_1
            istore 28 /* isNullable */
        start local 28 // boolean isNullable
       185: .line 1356
            aload 23 /* holder */
       186: .line 1357
            aload 27 /* inferredData */
       187: .line 1358
            iload 26 /* isPropertyAnnotated */
            ifeq 188
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            goto 189
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.cfg.annotations.EntityBinder org.hibernate.mapping.PersistentClass int org.hibernate.cfg.PropertyData int
      StackMap stack: org.hibernate.cfg.CollectionPropertyHolder org.hibernate.cfg.PropertyData
       188: getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
       189: .line 1359
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.cfg.annotations.EntityBinder org.hibernate.mapping.PersistentClass int org.hibernate.cfg.PropertyData int
      StackMap stack: org.hibernate.cfg.CollectionPropertyHolder org.hibernate.cfg.PropertyData org.hibernate.cfg.AccessType
            iload 28 /* isNullable */
       190: .line 1360
            aload 24 /* entityBinder */
       191: .line 1361
            iconst_0
       192: .line 1362
            iconst_0
       193: .line 1363
            iconst_1
       194: .line 1364
            aload 14 /* mappings */
       195: .line 1365
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.inheritanceStatePerClass:Ljava/util/Map;
       196: .line 1355
            invokestatic org.hibernate.cfg.AnnotationBinder.fillComponent:(Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;Lorg/hibernate/cfg/AccessType;ZLorg/hibernate/cfg/annotations/EntityBinder;ZZZLorg/hibernate/cfg/Mappings;Ljava/util/Map;)Lorg/hibernate/mapping/Component;
            astore 29 /* component */
        start local 29 // org.hibernate.mapping.Component component
       197: .line 1368
            aload 1 /* collValue */
            aload 29 /* component */
            invokevirtual org.hibernate.mapping.Collection.setElement:(Lorg/hibernate/mapping/Value;)V
       198: .line 1370
            aload 16 /* hqlOrderBy */
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 237
       199: .line 1371
            new java.lang.StringBuilder
            dup
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* joinColumns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getPropertyName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            pop
       200: .line 1372
            aload 16 /* hqlOrderBy */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.adjustUserSuppliedValueCollectionOrderingFragment:(Ljava/lang/String;)Ljava/lang/String;
            astore 30 /* orderBy */
        start local 30 // java.lang.String orderBy
       201: .line 1373
            aload 30 /* orderBy */
            ifnull 237
       202: .line 1374
            aload 1 /* collValue */
            aload 30 /* orderBy */
            invokevirtual org.hibernate.mapping.Collection.setOrderBy:(Ljava/lang/String;)V
        end local 30 // java.lang.String orderBy
        end local 29 // org.hibernate.mapping.Component component
        end local 28 // boolean isNullable
        end local 27 // org.hibernate.cfg.PropertyData inferredData
        end local 26 // boolean isPropertyAnnotated
        end local 25 // org.hibernate.mapping.PersistentClass owner
        end local 24 // org.hibernate.cfg.annotations.EntityBinder entityBinder
       203: .line 1377
            goto 237
       204: .line 1379
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder
      StackMap stack:
            aload 23 /* holder */
            aload 12 /* property */
            invokevirtual org.hibernate.cfg.CollectionPropertyHolder.prepare:(Lorg/hibernate/annotations/common/reflection/XProperty;)V
       205: .line 1381
            new org.hibernate.cfg.annotations.SimpleValueBinder
            dup
            invokespecial org.hibernate.cfg.annotations.SimpleValueBinder.<init>:()V
            astore 24 /* elementBinder */
        start local 24 // org.hibernate.cfg.annotations.SimpleValueBinder elementBinder
       206: .line 1382
            aload 24 /* elementBinder */
            aload 14 /* mappings */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setMappings:(Lorg/hibernate/cfg/Mappings;)V
       207: .line 1383
            aload 24 /* elementBinder */
            aload 7 /* collType */
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setReturnedClassName:(Ljava/lang/String;)V
       208: .line 1384
            aload 5 /* elementColumns */
            ifnull 209
            aload 5 /* elementColumns */
            arraylength
            ifne 219
       209: .line 1385
      StackMap locals: org.hibernate.cfg.annotations.SimpleValueBinder
      StackMap stack:
            iconst_1
            anewarray org.hibernate.cfg.Ejb3Column
            astore 5 /* elementColumns */
       210: .line 1386
            new org.hibernate.cfg.Ejb3Column
            dup
            invokespecial org.hibernate.cfg.Ejb3Column.<init>:()V
            astore 25 /* column */
        start local 25 // org.hibernate.cfg.Ejb3Column column
       211: .line 1387
            aload 25 /* column */
            iconst_0
            invokevirtual org.hibernate.cfg.Ejb3Column.setImplicit:(Z)V
       212: .line 1389
            aload 25 /* column */
            iconst_1
            invokevirtual org.hibernate.cfg.Ejb3Column.setNullable:(Z)V
       213: .line 1390
            aload 25 /* column */
            sipush 255
            invokevirtual org.hibernate.cfg.Ejb3Column.setLength:(I)V
       214: .line 1391
            aload 25 /* column */
            ldc "elt"
            invokevirtual org.hibernate.cfg.Ejb3Column.setLogicalColumnName:(Ljava/lang/String;)V
       215: .line 1393
            aload 25 /* column */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokevirtual org.hibernate.cfg.Ejb3Column.setJoins:(Ljava/util/Map;)V
       216: .line 1394
            aload 25 /* column */
            aload 14 /* mappings */
            invokevirtual org.hibernate.cfg.Ejb3Column.setMappings:(Lorg/hibernate/cfg/Mappings;)V
       217: .line 1395
            aload 25 /* column */
            invokevirtual org.hibernate.cfg.Ejb3Column.bind:()V
       218: .line 1396
            aload 5 /* elementColumns */
            iconst_0
            aload 25 /* column */
            aastore
        end local 25 // org.hibernate.cfg.Ejb3Column column
       219: .line 1399
      StackMap locals:
      StackMap stack:
            aload 5 /* elementColumns */
            dup
            astore 28
            arraylength
            istore 27
            iconst_0
            istore 26
            goto 223
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.cfg.annotations.SimpleValueBinder top int int org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
       220: aload 28
            iload 26
            aaload
            astore 25 /* column */
        start local 25 // org.hibernate.cfg.Ejb3Column column
       221: .line 1400
            aload 25 /* column */
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.cfg.Ejb3Column.setTable:(Lorg/hibernate/mapping/Table;)V
        end local 25 // org.hibernate.cfg.Ejb3Column column
       222: .line 1399
            iinc 26 1
      StackMap locals:
      StackMap stack:
       223: iload 26
            iload 27
            if_icmplt 220
       224: .line 1402
            aload 24 /* elementBinder */
            aload 5 /* elementColumns */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setColumns:([Lorg/hibernate/cfg/Ejb3Column;)V
       225: .line 1403
            aload 24 /* elementBinder */
       226: .line 1404
            aload 12 /* property */
       227: .line 1405
            aload 21 /* elementClass */
       228: .line 1406
            aload 1 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
       229: .line 1407
            aload 23 /* holder */
            aload 21 /* elementClass */
            invokevirtual org.hibernate.cfg.CollectionPropertyHolder.resolveElementAttributeConverterDefinition:(Lorg/hibernate/annotations/common/reflection/XClass;)Lorg/hibernate/cfg/AttributeConverterDefinition;
       230: .line 1403
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setType:(Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/annotations/common/reflection/XClass;Ljava/lang/String;Lorg/hibernate/cfg/AttributeConverterDefinition;)V
       231: .line 1409
            aload 24 /* elementBinder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getEntityName:()Ljava/lang/String;
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setPersistentClassName:(Ljava/lang/String;)V
       232: .line 1410
            aload 24 /* elementBinder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.accessType:Lorg/hibernate/cfg/AccessType;
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setAccessType:(Lorg/hibernate/cfg/AccessType;)V
       233: .line 1411
            aload 1 /* collValue */
            aload 24 /* elementBinder */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.make:()Lorg/hibernate/mapping/SimpleValue;
            invokevirtual org.hibernate.mapping.Collection.setElement:(Lorg/hibernate/mapping/Value;)V
       234: .line 1412
            aload 16 /* hqlOrderBy */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.adjustUserSuppliedValueCollectionOrderingFragment:(Ljava/lang/String;)Ljava/lang/String;
            astore 25 /* orderBy */
        start local 25 // java.lang.String orderBy
       235: .line 1413
            aload 25 /* orderBy */
            ifnull 237
       236: .line 1414
            aload 1 /* collValue */
            aload 25 /* orderBy */
            invokevirtual org.hibernate.mapping.Collection.setOrderBy:(Ljava/lang/String;)V
        end local 25 // java.lang.String orderBy
        end local 24 // org.hibernate.cfg.annotations.SimpleValueBinder elementBinder
        end local 23 // org.hibernate.cfg.CollectionPropertyHolder holder
        end local 22 // org.hibernate.cfg.AnnotatedClassType classType
        end local 21 // org.hibernate.annotations.common.reflection.XClass elementClass
       237: .line 1419
      StackMap locals: org.hibernate.cfg.annotations.CollectionBinder org.hibernate.mapping.Collection java.util.Map org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.cfg.Ejb3Column[] int org.hibernate.annotations.common.reflection.XClass int int int org.hibernate.cfg.annotations.TableBinder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyHolder org.hibernate.cfg.Mappings org.hibernate.mapping.PersistentClass java.lang.String int org.hibernate.annotations.ManyToAny int org.hibernate.mapping.ManyToOne
      StackMap stack:
            aload 1 /* collValue */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.checkFilterConditions:(Lorg/hibernate/mapping/Collection;)V
       238: .line 1422
            iload 17 /* isCollectionOfEntities */
            ifeq 240
       239: .line 1423
            aload 15 /* collectionEntity */
            aload 4 /* inverseJoinColumns */
            aload 20 /* element */
            iload 9 /* unique */
            aload 14 /* mappings */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.bindManytoManyInverseFk:(Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/SimpleValue;ZLorg/hibernate/cfg/Mappings;)V
       240: .line 1426
      StackMap locals:
      StackMap stack:
            return
        end local 20 // org.hibernate.mapping.ManyToOne element
        end local 19 // boolean mappedBy
        end local 18 // org.hibernate.annotations.ManyToAny anyAnn
        end local 17 // boolean isCollectionOfEntities
        end local 16 // java.lang.String hqlOrderBy
        end local 15 // org.hibernate.mapping.PersistentClass collectionEntity
        end local 14 // org.hibernate.cfg.Mappings mappings
        end local 13 // org.hibernate.cfg.PropertyHolder parentPropertyHolder
        end local 12 // org.hibernate.annotations.common.reflection.XProperty property
        end local 11 // org.hibernate.cfg.annotations.TableBinder associationTableBinder
        end local 10 // boolean cascadeDeleteEnabled
        end local 9 // boolean unique
        end local 8 // boolean ignoreNotFound
        end local 7 // org.hibernate.annotations.common.reflection.XClass collType
        end local 6 // boolean isEmbedded
        end local 5 // org.hibernate.cfg.Ejb3Column[] elementColumns
        end local 4 // org.hibernate.cfg.Ejb3JoinColumn[] inverseJoinColumns
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        end local 2 // java.util.Map persistentClasses
        end local 1 // org.hibernate.mapping.Collection collValue
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  241     0                    this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0  241     1               collValue  Lorg/hibernate/mapping/Collection;
            0  241     2       persistentClasses  Ljava/util/Map;
            0  241     3             joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0  241     4      inverseJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0  241     5          elementColumns  [Lorg/hibernate/cfg/Ejb3Column;
            0  241     6              isEmbedded  Z
            0  241     7                collType  Lorg/hibernate/annotations/common/reflection/XClass;
            0  241     8          ignoreNotFound  Z
            0  241     9                  unique  Z
            0  241    10    cascadeDeleteEnabled  Z
            0  241    11  associationTableBinder  Lorg/hibernate/cfg/annotations/TableBinder;
            0  241    12                property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0  241    13    parentPropertyHolder  Lorg/hibernate/cfg/PropertyHolder;
            0  241    14                mappings  Lorg/hibernate/cfg/Mappings;
            3  241    15        collectionEntity  Lorg/hibernate/mapping/PersistentClass;
            4  241    16              hqlOrderBy  Ljava/lang/String;
            7  241    17  isCollectionOfEntities  Z
            8  241    18                  anyAnn  Lorg/hibernate/annotations/ManyToAny;
           10   14    19                    path  Ljava/lang/String;
           17   20    19                    path  Ljava/lang/String;
           23   26    19                    path  Ljava/lang/String;
           27   32    19            joinTableAnn  Ljavax/persistence/JoinTable;
           29   32    20                    path  Ljava/lang/String;
           35  241    19                mappedBy  Z
           44   45    20                   error  Ljava/lang/StringBuilder;
           46   47    20       otherSideProperty  Lorg/hibernate/mapping/Property;
           56   67    20       otherSideProperty  Lorg/hibernate/mapping/Property;
           49   56    21                   error  Ljava/lang/StringBuilder;
           58   59    21                   table  Lorg/hibernate/mapping/Table;
           60   67    21                   table  Lorg/hibernate/mapping/Table;
           62   67    22              entityName  Ljava/lang/String;
           64   65    23                  column  Lorg/hibernate/cfg/Ejb3JoinColumn;
           70   80    20                  column  Lorg/hibernate/cfg/Ejb3JoinColumn;
           73   80    24        mappedByProperty  Ljava/lang/String;
           74   80    25              ownerTable  Lorg/hibernate/mapping/Table;
          102  241    20                 element  Lorg/hibernate/mapping/ManyToOne;
          115  120    21                      fk  Lorg/hibernate/annotations/ForeignKey;
          118  120    22                  fkName  Ljava/lang/String;
          123  133    21            inferredData  Lorg/hibernate/cfg/PropertyData;
          125  126    22                  column  Lorg/hibernate/cfg/Ejb3Column;
          132  133    22                     any  Lorg/hibernate/mapping/Any;
          138  146    21            elementClass  Lorg/hibernate/annotations/common/reflection/XClass;
          147  237    21            elementClass  Lorg/hibernate/annotations/common/reflection/XClass;
          137  146    22               classType  Lorg/hibernate/cfg/AnnotatedClassType;
          148  237    22               classType  Lorg/hibernate/cfg/AnnotatedClassType;
          135  237    23                  holder  Lorg/hibernate/cfg/CollectionPropertyHolder;
          161  163    24       attributeOverride  Z
          165  203    24            entityBinder  Lorg/hibernate/cfg/annotations/EntityBinder;
          166  203    25                   owner  Lorg/hibernate/mapping/PersistentClass;
          168  169    26     isPropertyAnnotated  Z
          172  173    26     isPropertyAnnotated  Z
          174  203    26     isPropertyAnnotated  Z
          171  172    27                    prop  Lorg/hibernate/mapping/Property;
          177  178    27            inferredData  Lorg/hibernate/cfg/PropertyData;
          179  180    27            inferredData  Lorg/hibernate/cfg/PropertyData;
          182  183    27            inferredData  Lorg/hibernate/cfg/PropertyData;
          184  203    27            inferredData  Lorg/hibernate/cfg/PropertyData;
          185  203    28              isNullable  Z
          197  203    29               component  Lorg/hibernate/mapping/Component;
          201  203    30                 orderBy  Ljava/lang/String;
          206  237    24           elementBinder  Lorg/hibernate/cfg/annotations/SimpleValueBinder;
          211  219    25                  column  Lorg/hibernate/cfg/Ejb3Column;
          221  222    25                  column  Lorg/hibernate/cfg/Ejb3Column;
          235  237    25                 orderBy  Ljava/lang/String;
      Exception table:
        from    to  target  type
          45    46      47  Class org.hibernate.MappingException
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
                        Name  Flags
      collValue               
      persistentClasses       
      joinColumns             
      inverseJoinColumns      
      elementColumns          
      isEmbedded              
      collType                
      ignoreNotFound          
      unique                  
      cascadeDeleteEnabled    
      associationTableBinder  
      property                
      parentPropertyHolder    
      mappings                

  private java.lang.String extractHqlOrderBy(javax.persistence.OrderBy);
    descriptor: (Ljavax/persistence/OrderBy;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // javax.persistence.OrderBy jpaOrderBy
         0: .line 1429
            aload 1 /* jpaOrderBy */
            ifnull 2
         1: .line 1430
            aload 1 /* jpaOrderBy */
            invokeinterface javax.persistence.OrderBy.value:()Ljava/lang/String;
            areturn
         2: .line 1432
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // javax.persistence.OrderBy jpaOrderBy
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    3     1  jpaOrderBy  Ljavax/persistence/OrderBy;
    MethodParameters:
            Name  Flags
      jpaOrderBy  

  private static void checkFilterConditions(org.hibernate.mapping.Collection);
    descriptor: (Lorg/hibernate/mapping/Collection;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hibernate.mapping.Collection collValue
         0: .line 1437
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getFilters:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifne 1
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getWhere:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 9
         1: .line 1438
      StackMap locals:
      StackMap stack:
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getFetchMode:()Lorg/hibernate/FetchMode;
            getstatic org.hibernate.FetchMode.JOIN:Lorg/hibernate/FetchMode;
            if_acmpne 9
         2: .line 1439
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getElement:()Lorg/hibernate/mapping/Value;
            instanceof org.hibernate.mapping.SimpleValue
            ifne 9
         3: .line 1440
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getElement:()Lorg/hibernate/mapping/Value;
            invokeinterface org.hibernate.mapping.Value.getFetchMode:()Lorg/hibernate/FetchMode;
            getstatic org.hibernate.FetchMode.JOIN:Lorg/hibernate/FetchMode;
            if_acmpeq 9
         4: .line 1441
            new org.hibernate.MappingException
            dup
         5: .line 1442
            new java.lang.StringBuilder
            dup
            ldc "@ManyToMany or @CollectionOfElements defining filter or where without join fetching not valid within collection using join fetching["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 1443
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getRole:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1442
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 1441
            invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 1446
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hibernate.mapping.Collection collValue
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0  collValue  Lorg/hibernate/mapping/Collection;
    MethodParameters:
           Name  Flags
      collValue  

  private static void bindCollectionSecondPass(org.hibernate.mapping.Collection, org.hibernate.mapping.PersistentClass, org.hibernate.cfg.Ejb3JoinColumn[], boolean, org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/mapping/Collection;Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/Mappings;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // org.hibernate.mapping.Collection collValue
        start local 1 // org.hibernate.mapping.PersistentClass collectionEntity
        start local 2 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        start local 3 // boolean cascadeDeleteEnabled
        start local 4 // org.hibernate.annotations.common.reflection.XProperty property
        start local 5 // org.hibernate.cfg.Mappings mappings
         0: .line 1457
            aload 2 /* joinColumns */
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            aload 1 /* collectionEntity */
            aload 0 /* collValue */
            iconst_0
            aload 5 /* mappings */
         1: .line 1456
            invokestatic org.hibernate.cfg.BinderHelper.createSyntheticPropertyReference:([Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/Value;ZLorg/hibernate/cfg/Mappings;)V
         2: .line 1459
            goto 5
         3: .line 1460
      StackMap locals:
      StackMap stack: org.hibernate.AnnotationException
            astore 6 /* ex */
        start local 6 // org.hibernate.AnnotationException ex
         4: .line 1461
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unable to map collection "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* collectionEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 6 /* ex */
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // org.hibernate.AnnotationException ex
         5: .line 1463
      StackMap locals:
      StackMap stack:
            aload 0 /* collValue */
            aload 2 /* joinColumns */
            iload 3 /* cascadeDeleteEnabled */
            aload 4 /* property */
            aload 5 /* mappings */
            invokestatic org.hibernate.cfg.annotations.CollectionBinder.buildCollectionKey:(Lorg/hibernate/mapping/Collection;[Lorg/hibernate/cfg/Ejb3JoinColumn;ZLorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/SimpleValue;
            astore 6 /* key */
        start local 6 // org.hibernate.mapping.SimpleValue key
         6: .line 1464
            aload 4 /* property */
            ldc Ljavax/persistence/ElementCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 8
            aload 2 /* joinColumns */
            arraylength
            ifle 8
         7: .line 1465
            aload 2 /* joinColumns */
            iconst_0
            aaload
            iconst_1
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.setJPA2ElementCollection:(Z)V
         8: .line 1467
      StackMap locals: org.hibernate.mapping.SimpleValue
      StackMap stack:
            aload 0 /* collValue */
            invokevirtual org.hibernate.mapping.Collection.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            aload 1 /* collectionEntity */
            aload 2 /* joinColumns */
            aload 6 /* key */
            iconst_0
            aload 5 /* mappings */
            invokestatic org.hibernate.cfg.annotations.TableBinder.bindFk:(Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/SimpleValue;ZLorg/hibernate/cfg/Mappings;)V
         9: .line 1468
            return
        end local 6 // org.hibernate.mapping.SimpleValue key
        end local 5 // org.hibernate.cfg.Mappings mappings
        end local 4 // org.hibernate.annotations.common.reflection.XProperty property
        end local 3 // boolean cascadeDeleteEnabled
        end local 2 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        end local 1 // org.hibernate.mapping.PersistentClass collectionEntity
        end local 0 // org.hibernate.mapping.Collection collValue
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   10     0             collValue  Lorg/hibernate/mapping/Collection;
            0   10     1      collectionEntity  Lorg/hibernate/mapping/PersistentClass;
            0   10     2           joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   10     3  cascadeDeleteEnabled  Z
            0   10     4              property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   10     5              mappings  Lorg/hibernate/cfg/Mappings;
            4    5     6                    ex  Lorg/hibernate/AnnotationException;
            6   10     6                   key  Lorg/hibernate/mapping/SimpleValue;
      Exception table:
        from    to  target  type
           0     2       3  Class org.hibernate.AnnotationException
    MethodParameters:
                      Name  Flags
      collValue             
      collectionEntity      
      joinColumns           
      cascadeDeleteEnabled  
      property              
      mappings              

  public void setCascadeDeleteEnabled(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean onDeleteCascade
         0: .line 1471
            aload 0 /* this */
            iload 1 /* onDeleteCascade */
            putfield org.hibernate.cfg.annotations.CollectionBinder.cascadeDeleteEnabled:Z
         1: .line 1472
            return
        end local 1 // boolean onDeleteCascade
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  onDeleteCascade  Z
    MethodParameters:
                 Name  Flags
      onDeleteCascade  

  private java.lang.String safeCollectionRole();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
         0: .line 1475
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            ifnull 2
         1: .line 1476
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            invokeinterface org.hibernate.cfg.PropertyHolder.getEntityName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.CollectionBinder.propertyName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         2: .line 1479
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/cfg/annotations/CollectionBinder;

  public static void bindManytoManyInverseFk(org.hibernate.mapping.PersistentClass, org.hibernate.cfg.Ejb3JoinColumn[], org.hibernate.mapping.SimpleValue, boolean, org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/SimpleValue;ZLorg/hibernate/cfg/Mappings;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=5
        start local 0 // org.hibernate.mapping.PersistentClass referencedEntity
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] columns
        start local 2 // org.hibernate.mapping.SimpleValue value
        start local 3 // boolean unique
        start local 4 // org.hibernate.cfg.Mappings mappings
         0: .line 1496
            aload 1 /* columns */
            iconst_0
            aaload
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.getMappedBy:()Ljava/lang/String;
            astore 5 /* mappedBy */
        start local 5 // java.lang.String mappedBy
         1: .line 1497
            aload 5 /* mappedBy */
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 32
         2: .line 1498
            aload 0 /* referencedEntity */
            aload 5 /* mappedBy */
            invokevirtual org.hibernate.mapping.PersistentClass.getRecursiveProperty:(Ljava/lang/String;)Lorg/hibernate/mapping/Property;
            astore 6 /* property */
        start local 6 // org.hibernate.mapping.Property property
         3: .line 1500
            aload 6 /* property */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            instanceof org.hibernate.mapping.Collection
            ifeq 6
         4: .line 1501
            aload 6 /* property */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            checkcast org.hibernate.mapping.Collection
            invokevirtual org.hibernate.mapping.Collection.getKey:()Lorg/hibernate/mapping/KeyValue;
            invokeinterface org.hibernate.mapping.KeyValue.getColumnIterator:()Ljava/util/Iterator;
            astore 7 /* mappedByColumns */
        start local 7 // java.util.Iterator mappedByColumns
         5: .line 1502
            goto 19
        end local 7 // java.util.Iterator mappedByColumns
         6: .line 1505
      StackMap locals: java.lang.String org.hibernate.mapping.Property
      StackMap stack:
            aload 0 /* referencedEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getJoinIterator:()Ljava/util/Iterator;
            astore 8 /* joinsIt */
        start local 8 // java.util.Iterator joinsIt
         7: .line 1506
            aconst_null
            astore 9 /* key */
        start local 9 // org.hibernate.mapping.KeyValue key
         8: .line 1507
            goto 13
         9: .line 1508
      StackMap locals: org.hibernate.mapping.PersistentClass org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.mapping.SimpleValue int org.hibernate.cfg.Mappings java.lang.String org.hibernate.mapping.Property top java.util.Iterator org.hibernate.mapping.KeyValue
      StackMap stack:
            aload 8 /* joinsIt */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Join
            astore 10 /* join */
        start local 10 // org.hibernate.mapping.Join join
        10: .line 1509
            aload 10 /* join */
            aload 6 /* property */
            invokevirtual org.hibernate.mapping.Join.containsProperty:(Lorg/hibernate/mapping/Property;)Z
            ifeq 13
        11: .line 1510
            aload 10 /* join */
            invokevirtual org.hibernate.mapping.Join.getKey:()Lorg/hibernate/mapping/KeyValue;
            astore 9 /* key */
        12: .line 1511
            goto 14
        end local 10 // org.hibernate.mapping.Join join
        13: .line 1507
      StackMap locals:
      StackMap stack:
            aload 8 /* joinsIt */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        14: .line 1514
      StackMap locals:
      StackMap stack:
            aload 9 /* key */
            ifnonnull 15
            aload 6 /* property */
            invokevirtual org.hibernate.mapping.Property.getPersistentClass:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifier:()Lorg/hibernate/mapping/KeyValue;
            astore 9 /* key */
        15: .line 1515
      StackMap locals:
      StackMap stack:
            aload 9 /* key */
            invokeinterface org.hibernate.mapping.KeyValue.getColumnIterator:()Ljava/util/Iterator;
            astore 7 /* mappedByColumns */
        end local 9 // org.hibernate.mapping.KeyValue key
        end local 8 // java.util.Iterator joinsIt
        start local 7 // java.util.Iterator mappedByColumns
        16: .line 1517
            goto 19
        17: .line 1518
      StackMap locals: org.hibernate.mapping.PersistentClass org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.mapping.SimpleValue int org.hibernate.cfg.Mappings java.lang.String org.hibernate.mapping.Property java.util.Iterator
      StackMap stack:
            aload 7 /* mappedByColumns */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Column
            astore 8 /* column */
        start local 8 // org.hibernate.mapping.Column column
        18: .line 1519
            aload 1 /* columns */
            iconst_0
            aaload
            aload 8 /* column */
            aload 2 /* value */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.linkValueUsingAColumnCopy:(Lorg/hibernate/mapping/Column;Lorg/hibernate/mapping/SimpleValue;)V
        end local 8 // org.hibernate.mapping.Column column
        19: .line 1517
      StackMap locals:
      StackMap stack:
            aload 7 /* mappedByColumns */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        20: .line 1522
            aload 4 /* mappings */
        21: .line 1523
            new java.lang.StringBuilder
            dup
            ldc "inverse__"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* referencedEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 5 /* mappedBy */
        22: .line 1522
            invokeinterface org.hibernate.cfg.Mappings.getPropertyReferencedAssociation:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
        23: .line 1521
            astore 8 /* referencedPropertyName */
        start local 8 // java.lang.String referencedPropertyName
        24: .line 1525
            aload 8 /* referencedPropertyName */
            ifnull 27
        25: .line 1527
            aload 2 /* value */
            checkcast org.hibernate.mapping.ManyToOne
            aload 8 /* referencedPropertyName */
            invokevirtual org.hibernate.mapping.ManyToOne.setReferencedPropertyName:(Ljava/lang/String;)V
        26: .line 1528
            aload 4 /* mappings */
            aload 0 /* referencedEntity */
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            aload 8 /* referencedPropertyName */
            invokeinterface org.hibernate.cfg.Mappings.addUniquePropertyReference:(Ljava/lang/String;Ljava/lang/String;)V
        27: .line 1530
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* value */
            checkcast org.hibernate.mapping.ManyToOne
            aload 8 /* referencedPropertyName */
            ifnonnull 28
            iconst_1
            goto 29
      StackMap locals:
      StackMap stack: org.hibernate.mapping.ManyToOne
        28: iconst_0
      StackMap locals: org.hibernate.mapping.PersistentClass org.hibernate.cfg.Ejb3JoinColumn[] org.hibernate.mapping.SimpleValue int org.hibernate.cfg.Mappings java.lang.String org.hibernate.mapping.Property java.util.Iterator java.lang.String
      StackMap stack: org.hibernate.mapping.ManyToOne int
        29: invokevirtual org.hibernate.mapping.ManyToOne.setReferenceToPrimaryKey:(Z)V
        30: .line 1531
            aload 2 /* value */
            invokevirtual org.hibernate.mapping.SimpleValue.createForeignKey:()V
        end local 8 // java.lang.String referencedPropertyName
        end local 7 // java.util.Iterator mappedByColumns
        end local 6 // org.hibernate.mapping.Property property
        31: .line 1532
            goto 34
        32: .line 1534
      StackMap locals:
      StackMap stack:
            aload 1 /* columns */
            aload 0 /* referencedEntity */
            aconst_null
            aload 2 /* value */
            iconst_1
            aload 4 /* mappings */
            invokestatic org.hibernate.cfg.BinderHelper.createSyntheticPropertyReference:([Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/Value;ZLorg/hibernate/cfg/Mappings;)V
        33: .line 1535
            aload 0 /* referencedEntity */
            aconst_null
            aload 1 /* columns */
            aload 2 /* value */
            iload 3 /* unique */
            aload 4 /* mappings */
            invokestatic org.hibernate.cfg.annotations.TableBinder.bindFk:(Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/SimpleValue;ZLorg/hibernate/cfg/Mappings;)V
        34: .line 1537
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.String mappedBy
        end local 4 // org.hibernate.cfg.Mappings mappings
        end local 3 // boolean unique
        end local 2 // org.hibernate.mapping.SimpleValue value
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] columns
        end local 0 // org.hibernate.mapping.PersistentClass referencedEntity
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   35     0        referencedEntity  Lorg/hibernate/mapping/PersistentClass;
            0   35     1                 columns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0   35     2                   value  Lorg/hibernate/mapping/SimpleValue;
            0   35     3                  unique  Z
            0   35     4                mappings  Lorg/hibernate/cfg/Mappings;
            1   35     5                mappedBy  Ljava/lang/String;
            3   31     6                property  Lorg/hibernate/mapping/Property;
            5    6     7         mappedByColumns  Ljava/util/Iterator;
           16   31     7         mappedByColumns  Ljava/util/Iterator;
            7   16     8                 joinsIt  Ljava/util/Iterator;
            8   16     9                     key  Lorg/hibernate/mapping/KeyValue;
           10   13    10                    join  Lorg/hibernate/mapping/Join;
           18   19     8                  column  Lorg/hibernate/mapping/Column;
           24   31     8  referencedPropertyName  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      referencedEntity  
      columns           
      value             
      unique            
      mappings          

  public void setFkJoinColumns(org.hibernate.cfg.Ejb3JoinColumn[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3JoinColumn;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] ejb3JoinColumns
         0: .line 1540
            aload 0 /* this */
            aload 1 /* ejb3JoinColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.fkJoinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
         1: .line 1541
            return
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] ejb3JoinColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  ejb3JoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
    MethodParameters:
                 Name  Flags
      ejb3JoinColumns  

  public void setExplicitAssociationTable(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean explicitAssocTable
         0: .line 1544
            aload 0 /* this */
            iload 1 /* explicitAssocTable */
            putfield org.hibernate.cfg.annotations.CollectionBinder.isExplicitAssociationTable:Z
         1: .line 1545
            return
        end local 1 // boolean explicitAssocTable
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  explicitAssocTable  Z
    MethodParameters:
                    Name  Flags
      explicitAssocTable  

  public void setElementColumns(org.hibernate.cfg.Ejb3Column[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3Column;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3Column[] elementColumns
         0: .line 1548
            aload 0 /* this */
            aload 1 /* elementColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.elementColumns:[Lorg/hibernate/cfg/Ejb3Column;
         1: .line 1549
            return
        end local 1 // org.hibernate.cfg.Ejb3Column[] elementColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  elementColumns  [Lorg/hibernate/cfg/Ejb3Column;
    MethodParameters:
                Name  Flags
      elementColumns  

  public void setEmbedded(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean annotationPresent
         0: .line 1552
            aload 0 /* this */
            iload 1 /* annotationPresent */
            putfield org.hibernate.cfg.annotations.CollectionBinder.isEmbedded:Z
         1: .line 1553
            return
        end local 1 // boolean annotationPresent
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  annotationPresent  Z
    MethodParameters:
                   Name  Flags
      annotationPresent  

  public void setProperty(org.hibernate.annotations.common.reflection.XProperty);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XProperty;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.annotations.common.reflection.XProperty property
         0: .line 1556
            aload 0 /* this */
            aload 1 /* property */
            putfield org.hibernate.cfg.annotations.CollectionBinder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
         1: .line 1557
            return
        end local 1 // org.hibernate.annotations.common.reflection.XProperty property
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  property  Lorg/hibernate/annotations/common/reflection/XProperty;
    MethodParameters:
          Name  Flags
      property  

  public void setIgnoreNotFound(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // boolean ignoreNotFound
         0: .line 1560
            aload 0 /* this */
            iload 1 /* ignoreNotFound */
            putfield org.hibernate.cfg.annotations.CollectionBinder.ignoreNotFound:Z
         1: .line 1561
            return
        end local 1 // boolean ignoreNotFound
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  ignoreNotFound  Z
    MethodParameters:
                Name  Flags
      ignoreNotFound  

  public void setMapKeyColumns(org.hibernate.cfg.Ejb3Column[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3Column;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
         0: .line 1564
            aload 0 /* this */
            aload 1 /* mapKeyColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyColumns:[Lorg/hibernate/cfg/Ejb3Column;
         1: .line 1565
            return
        end local 1 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  mapKeyColumns  [Lorg/hibernate/cfg/Ejb3Column;
    MethodParameters:
               Name  Flags
      mapKeyColumns  

  public void setMapKeyManyToManyColumns(org.hibernate.cfg.Ejb3JoinColumn[]);
    descriptor: ([Lorg/hibernate/cfg/Ejb3JoinColumn;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // org.hibernate.cfg.Ejb3JoinColumn[] mapJoinColumns
         0: .line 1568
            aload 0 /* this */
            aload 1 /* mapJoinColumns */
            putfield org.hibernate.cfg.annotations.CollectionBinder.mapKeyManyToManyColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
         1: .line 1569
            return
        end local 1 // org.hibernate.cfg.Ejb3JoinColumn[] mapJoinColumns
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  mapJoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
    MethodParameters:
                Name  Flags
      mapJoinColumns  

  public void setLocalGenerators(java.util.HashMap<java.lang.String, org.hibernate.mapping.IdGenerator>);
    descriptor: (Ljava/util/HashMap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.CollectionBinder this
        start local 1 // java.util.HashMap localGenerators
         0: .line 1572
            aload 0 /* this */
            aload 1 /* localGenerators */
            putfield org.hibernate.cfg.annotations.CollectionBinder.localGenerators:Ljava/util/HashMap;
         1: .line 1573
            return
        end local 1 // java.util.HashMap localGenerators
        end local 0 // org.hibernate.cfg.annotations.CollectionBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/cfg/annotations/CollectionBinder;
            0    2     1  localGenerators  Ljava/util/HashMap<Ljava/lang/String;Lorg/hibernate/mapping/IdGenerator;>;
    Signature: (Ljava/util/HashMap<Ljava/lang/String;Lorg/hibernate/mapping/IdGenerator;>;)V
    MethodParameters:
                 Name  Flags
      localGenerators  
}
SourceFile: "CollectionBinder.java"
NestMembers:
  org.hibernate.cfg.annotations.CollectionBinder$1
InnerClasses:
  org.hibernate.cfg.annotations.CollectionBinder$1