public class org.hibernate.cfg.annotations.MapBinder extends org.hibernate.cfg.annotations.CollectionBinder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.cfg.annotations.MapBinder
  super_class: org.hibernate.cfg.annotations.CollectionBinder
{
  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.MapBinder this
        start local 1 // boolean sorted
         0: .line 78
            aload 0 /* this */
            iload 1 /* sorted */
            invokespecial org.hibernate.cfg.annotations.CollectionBinder.<init>:(Z)V
         1: .line 79
            return
        end local 1 // boolean sorted
        end local 0 // org.hibernate.cfg.annotations.MapBinder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/hibernate/cfg/annotations/MapBinder;
            0    2     1  sorted  Z
    MethodParameters:
        Name  Flags
      sorted  

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

  protected org.hibernate.mapping.Collection createCollection(org.hibernate.mapping.PersistentClass);
    descriptor: (Lorg/hibernate/mapping/PersistentClass;)Lorg/hibernate/mapping/Collection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.hibernate.cfg.annotations.MapBinder this
        start local 1 // org.hibernate.mapping.PersistentClass persistentClass
         0: .line 86
            new org.hibernate.mapping.Map
            dup
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.MapBinder.getMappings:()Lorg/hibernate/cfg/Mappings;
            aload 1 /* persistentClass */
            invokespecial org.hibernate.mapping.Map.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/PersistentClass;)V
            areturn
        end local 1 // org.hibernate.mapping.PersistentClass persistentClass
        end local 0 // org.hibernate.cfg.annotations.MapBinder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lorg/hibernate/cfg/annotations/MapBinder;
            0    1     1  persistentClass  Lorg/hibernate/mapping/PersistentClass;
    MethodParameters:
                 Name  Flags
      persistentClass  

  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=18, locals=14, args_size=14
        start local 0 // org.hibernate.cfg.annotations.MapBinder 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 104
            new org.hibernate.cfg.annotations.MapBinder$1
            dup
            aload 0 /* this */
            aload 13 /* mappings */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.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 */
            aload 5 /* mapKeyColumns */
            aload 6 /* mapKeyManyToManyColumns */
            invokespecial org.hibernate.cfg.annotations.MapBinder$1.<init>:(Lorg/hibernate/cfg/annotations/MapBinder;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;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3JoinColumn;)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.MapBinder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0                     this  Lorg/hibernate/cfg/annotations/MapBinder;
            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

  private void bindKeyFromAssociationTable(org.hibernate.annotations.common.reflection.XClass, java.util.Map, java.lang.String, org.hibernate.annotations.common.reflection.XProperty, boolean, org.hibernate.cfg.Mappings, org.hibernate.cfg.Ejb3Column[], org.hibernate.cfg.Ejb3JoinColumn[], java.lang.String);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XClass;Ljava/util/Map;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;ZLorg/hibernate/cfg/Mappings;[Lorg/hibernate/cfg/Ejb3Column;[Lorg/hibernate/cfg/Ejb3JoinColumn;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=27, args_size=10
        start local 0 // org.hibernate.cfg.annotations.MapBinder this
        start local 1 // org.hibernate.annotations.common.reflection.XClass collType
        start local 2 // java.util.Map persistentClasses
        start local 3 // java.lang.String mapKeyPropertyName
        start local 4 // org.hibernate.annotations.common.reflection.XProperty property
        start local 5 // boolean isEmbedded
        start local 6 // org.hibernate.cfg.Mappings mappings
        start local 7 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
        start local 8 // org.hibernate.cfg.Ejb3JoinColumn[] mapKeyManyToManyColumns
        start local 9 // java.lang.String targetPropertyName
         0: .line 130
            aload 3 /* mapKeyPropertyName */
            ifnull 14
         1: .line 132
            aload 2 /* persistentClasses */
            aload 1 /* 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 10 /* associatedClass */
        start local 10 // org.hibernate.mapping.PersistentClass associatedClass
         2: .line 133
            aload 10 /* associatedClass */
            ifnonnull 3
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Associated class not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* collType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 134
      StackMap locals: org.hibernate.mapping.PersistentClass
      StackMap stack:
            aload 10 /* associatedClass */
            aload 3 /* mapKeyPropertyName */
            invokestatic org.hibernate.cfg.BinderHelper.findPropertyByName:(Lorg/hibernate/mapping/PersistentClass;Ljava/lang/String;)Lorg/hibernate/mapping/Property;
            astore 11 /* mapProperty */
        start local 11 // org.hibernate.mapping.Property mapProperty
         4: .line 135
            aload 11 /* mapProperty */
            ifnonnull 8
         5: .line 136
            new org.hibernate.AnnotationException
            dup
         6: .line 137
            new java.lang.StringBuilder
            dup
            ldc "Map key property not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* 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 /* mapKeyPropertyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 136
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 140
      StackMap locals: org.hibernate.mapping.Property
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.collection:Lorg/hibernate/mapping/Collection;
            checkcast org.hibernate.mapping.Map
            astore 12 /* map */
        start local 12 // org.hibernate.mapping.Map map
         9: .line 141
            aload 0 /* this */
        10: .line 142
            aload 11 /* mapProperty */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            aload 12 /* map */
            aload 9 /* targetPropertyName */
            aload 10 /* associatedClass */
            aload 6 /* mappings */
        11: .line 141
            invokevirtual org.hibernate.cfg.annotations.MapBinder.createFormulatedValue:(Lorg/hibernate/mapping/Value;Lorg/hibernate/mapping/Collection;Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/Value;
            astore 13 /* indexValue */
        start local 13 // org.hibernate.mapping.Value indexValue
        12: .line 144
            aload 12 /* map */
            aload 13 /* indexValue */
            invokevirtual org.hibernate.mapping.Map.setIndex:(Lorg/hibernate/mapping/Value;)V
        end local 13 // org.hibernate.mapping.Value indexValue
        end local 12 // org.hibernate.mapping.Map map
        end local 11 // org.hibernate.mapping.Property mapProperty
        end local 10 // org.hibernate.mapping.PersistentClass associatedClass
        13: .line 145
            goto 141
        14: .line 150
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            astore 11 /* target */
        start local 11 // java.lang.Class target
        15: .line 155
            aload 4 /* property */
            ldc Ljavax/persistence/MapKeyClass;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 17
        16: .line 156
            aload 4 /* property */
            ldc Ljavax/persistence/MapKeyClass;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.MapKeyClass
            invokeinterface javax.persistence.MapKeyClass.value:()Ljava/lang/Class;
            astore 11 /* target */
        17: .line 158
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String top java.lang.Class
      StackMap stack:
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            aload 11 /* target */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 20
        18: .line 159
            aload 11 /* target */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 10 /* mapKeyType */
        start local 10 // java.lang.String mapKeyType
        19: .line 160
            goto 21
        end local 10 // java.lang.String mapKeyType
        20: .line 162
      StackMap locals:
      StackMap stack:
            aload 4 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getMapKey:()Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            astore 10 /* mapKeyType */
        start local 10 // java.lang.String mapKeyType
        21: .line 164
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class
      StackMap stack:
            aload 2 /* persistentClasses */
            aload 10 /* mapKeyType */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.mapping.PersistentClass
            astore 12 /* collectionEntity */
        start local 12 // org.hibernate.mapping.PersistentClass collectionEntity
        22: .line 165
            aload 12 /* collectionEntity */
            ifnull 23
            iconst_1
            goto 24
      StackMap locals: org.hibernate.mapping.PersistentClass
      StackMap stack:
        23: iconst_0
      StackMap locals:
      StackMap stack: int
        24: istore 13 /* isIndexOfEntities */
        start local 13 // boolean isIndexOfEntities
        25: .line 166
            aconst_null
            astore 14 /* element */
        start local 14 // org.hibernate.mapping.ManyToOne element
        26: .line 167
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.collection:Lorg/hibernate/mapping/Collection;
            checkcast org.hibernate.mapping.Map
            astore 15 /* mapValue */
        start local 15 // org.hibernate.mapping.Map mapValue
        27: .line 168
            iload 13 /* isIndexOfEntities */
            ifeq 34
        28: .line 169
            new org.hibernate.mapping.ManyToOne
            dup
            aload 6 /* mappings */
            aload 15 /* mapValue */
            invokevirtual org.hibernate.mapping.Map.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokespecial org.hibernate.mapping.ManyToOne.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Table;)V
            astore 14 /* element */
        29: .line 170
            aload 15 /* mapValue */
            aload 14 /* element */
            invokevirtual org.hibernate.mapping.Map.setIndex:(Lorg/hibernate/mapping/Value;)V
        30: .line 171
            aload 14 /* element */
            aload 10 /* mapKeyType */
            invokevirtual org.hibernate.mapping.ManyToOne.setReferencedEntityName:(Ljava/lang/String;)V
        31: .line 175
            aload 14 /* element */
            getstatic org.hibernate.FetchMode.JOIN:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.ManyToOne.setFetchMode:(Lorg/hibernate/FetchMode;)V
        32: .line 176
            aload 14 /* element */
            iconst_0
            invokevirtual org.hibernate.mapping.ManyToOne.setLazy:(Z)V
        33: .line 178
            goto 128
        34: .line 182
      StackMap locals: int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map
      StackMap stack:
            getstatic org.hibernate.cfg.BinderHelper.PRIMITIVE_NAMES:Ljava/util/Set;
            aload 10 /* mapKeyType */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 38
        35: .line 183
            getstatic org.hibernate.cfg.AnnotatedClassType.NONE:Lorg/hibernate/cfg/AnnotatedClassType;
            astore 17 /* classType */
        start local 17 // org.hibernate.cfg.AnnotatedClassType classType
        36: .line 184
            aconst_null
            astore 16 /* keyXClass */
        start local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
        37: .line 185
            goto 50
        end local 17 // org.hibernate.cfg.AnnotatedClassType classType
        end local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
        38: .line 188
      StackMap locals:
      StackMap stack:
            aload 6 /* mappings */
            invokeinterface org.hibernate.cfg.Mappings.getReflectionManager:()Lorg/hibernate/annotations/common/reflection/ReflectionManager;
            aload 10 /* mapKeyType */
            ldc Lorg/hibernate/cfg/annotations/MapBinder;
            invokeinterface org.hibernate.annotations.common.reflection.ReflectionManager.classForName:(Ljava/lang/String;Ljava/lang/Class;)Lorg/hibernate/annotations/common/reflection/XClass;
            astore 16 /* keyXClass */
        start local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
        39: .line 189
            goto 42
        end local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
        40: .line 190
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            astore 18 /* e */
        start local 18 // java.lang.ClassNotFoundException e
        41: .line 191
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unable to find class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* mapKeyType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 18 /* e */
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 18 // java.lang.ClassNotFoundException e
        start local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
        42: .line 193
      StackMap locals: org.hibernate.annotations.common.reflection.XClass
      StackMap stack:
            aload 6 /* mappings */
            aload 16 /* keyXClass */
            invokeinterface org.hibernate.cfg.Mappings.getClassType:(Lorg/hibernate/annotations/common/reflection/XClass;)Lorg/hibernate/cfg/AnnotatedClassType;
            astore 17 /* classType */
        start local 17 // org.hibernate.cfg.AnnotatedClassType classType
        43: .line 195
            aload 4 /* property */
            ldc Ljavax/persistence/AttributeOverride;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 46
        44: .line 196
            aload 4 /* property */
            ldc Ljavax/persistence/AttributeOverrides;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 46
        45: .line 195
            iconst_0
            goto 47
      StackMap locals: org.hibernate.cfg.AnnotatedClassType
      StackMap stack:
        46: iconst_1
      StackMap locals:
      StackMap stack: int
        47: istore 18 /* attributeOverride */
        start local 18 // boolean attributeOverride
        48: .line 197
            iload 5 /* isEmbedded */
            ifne 49
            iload 18 /* attributeOverride */
            ifeq 50
        49: .line 198
      StackMap locals: int
      StackMap stack:
            getstatic org.hibernate.cfg.AnnotatedClassType.EMBEDDABLE:Lorg/hibernate/cfg/AnnotatedClassType;
            astore 17 /* classType */
        end local 18 // boolean attributeOverride
        50: .line 203
      StackMap locals:
      StackMap stack:
            aload 15 /* mapValue */
        51: .line 204
            aload 15 /* mapValue */
            invokevirtual org.hibernate.mapping.Map.getRole:()Ljava/lang/String;
            ldc "mapkey"
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
        52: .line 205
            aload 16 /* keyXClass */
        53: .line 206
            aload 4 /* property */
        54: .line 207
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        55: .line 208
            aload 6 /* mappings */
        56: .line 202
            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 18 /* holder */
        start local 18 // org.hibernate.cfg.CollectionPropertyHolder holder
        57: .line 215
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 4 /* property */
            invokeinterface org.hibernate.cfg.PropertyHolder.startingProperty:(Lorg/hibernate/annotations/common/reflection/XProperty;)V
        58: .line 216
            aload 18 /* holder */
            aload 4 /* property */
            invokevirtual org.hibernate.cfg.CollectionPropertyHolder.prepare:(Lorg/hibernate/annotations/common/reflection/XProperty;)V
        59: .line 218
            aload 15 /* mapValue */
            invokevirtual org.hibernate.mapping.Map.getOwner:()Lorg/hibernate/mapping/PersistentClass;
            astore 19 /* owner */
        start local 19 // org.hibernate.mapping.PersistentClass owner
        60: .line 222
            aload 19 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierProperty:()Lorg/hibernate/mapping/Property;
            ifnull 66
        61: .line 223
            aload 19 /* 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
            ifeq 63
        62: .line 224
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            goto 64
        63: .line 225
      StackMap locals: org.hibernate.cfg.CollectionPropertyHolder org.hibernate.mapping.PersistentClass
      StackMap stack:
            getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
        64: .line 223
      StackMap locals:
      StackMap stack: org.hibernate.cfg.AccessType
            astore 20 /* accessType */
        start local 20 // org.hibernate.cfg.AccessType accessType
        65: .line 226
            goto 73
        end local 20 // org.hibernate.cfg.AccessType accessType
        66: .line 227
      StackMap locals:
      StackMap stack:
            aload 19 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierMapper:()Lorg/hibernate/mapping/Component;
            ifnull 72
            aload 19 /* owner */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifierMapper:()Lorg/hibernate/mapping/Component;
            invokevirtual org.hibernate.mapping.Component.getPropertySpan:()I
            ifle 72
        67: .line 228
            aload 19 /* 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 21 /* prop */
        start local 21 // org.hibernate.mapping.Property prop
        68: .line 229
            aload 21 /* prop */
            invokevirtual org.hibernate.mapping.Property.getPropertyAccessorName:()Ljava/lang/String;
            ldc "property"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 69
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            goto 70
        69: .line 230
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.mapping.PersistentClass top org.hibernate.mapping.Property
      StackMap stack:
            getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
        70: .line 229
      StackMap locals:
      StackMap stack: org.hibernate.cfg.AccessType
            astore 20 /* accessType */
        end local 21 // org.hibernate.mapping.Property prop
        start local 20 // org.hibernate.cfg.AccessType accessType
        71: .line 231
            goto 73
        end local 20 // org.hibernate.cfg.AccessType accessType
        72: .line 233
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.mapping.PersistentClass
      StackMap stack:
            new org.hibernate.AssertionFailure
            dup
            ldc "Unable to guess collection property accessor name"
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        start local 20 // org.hibernate.cfg.AccessType accessType
        73: .line 236
      StackMap locals: org.hibernate.cfg.AccessType
      StackMap stack:
            getstatic org.hibernate.cfg.AnnotatedClassType.EMBEDDABLE:Lorg/hibernate/cfg/AnnotatedClassType;
            aload 17 /* classType */
            invokevirtual org.hibernate.cfg.AnnotatedClassType.equals:(Ljava/lang/Object;)Z
            ifeq 92
        74: .line 237
            new org.hibernate.cfg.annotations.EntityBinder
            dup
            invokespecial org.hibernate.cfg.annotations.EntityBinder.<init>:()V
            astore 21 /* entityBinder */
        start local 21 // org.hibernate.cfg.annotations.EntityBinder entityBinder
        75: .line 240
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.annotations.MapBinder.isHibernateExtensionMapping:()Z
            ifeq 78
        76: .line 241
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "index"
            aload 16 /* keyXClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 22 /* inferredData */
        start local 22 // org.hibernate.cfg.PropertyData inferredData
        77: .line 242
            goto 79
        end local 22 // org.hibernate.cfg.PropertyData inferredData
        78: .line 245
      StackMap locals: org.hibernate.cfg.annotations.EntityBinder
      StackMap stack:
            new org.hibernate.cfg.PropertyPreloadedData
            dup
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            ldc "key"
            aload 16 /* keyXClass */
            invokespecial org.hibernate.cfg.PropertyPreloadedData.<init>:(Lorg/hibernate/cfg/AccessType;Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XClass;)V
            astore 22 /* inferredData */
        start local 22 // org.hibernate.cfg.PropertyData inferredData
        79: .line 250
      StackMap locals: org.hibernate.cfg.PropertyData
      StackMap stack:
            aload 18 /* holder */
        80: .line 251
            aload 22 /* inferredData */
        81: .line 252
            aload 20 /* accessType */
        82: .line 253
            iconst_1
        83: .line 254
            aload 21 /* entityBinder */
        84: .line 255
            iconst_0
        85: .line 256
            iconst_0
        86: .line 257
            iconst_1
        87: .line 258
            aload 6 /* mappings */
        88: .line 259
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.inheritanceStatePerClass:Ljava/util/Map;
        89: .line 249
            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 23 /* component */
        start local 23 // org.hibernate.mapping.Component component
        90: .line 261
            aload 15 /* mapValue */
            aload 23 /* component */
            invokevirtual org.hibernate.mapping.Map.setIndex:(Lorg/hibernate/mapping/Value;)V
        end local 23 // org.hibernate.mapping.Component component
        end local 22 // org.hibernate.cfg.PropertyData inferredData
        end local 21 // org.hibernate.cfg.annotations.EntityBinder entityBinder
        91: .line 262
            goto 128
        92: .line 264
      StackMap locals:
      StackMap stack:
            new org.hibernate.cfg.annotations.SimpleValueBinder
            dup
            invokespecial org.hibernate.cfg.annotations.SimpleValueBinder.<init>:()V
            astore 21 /* elementBinder */
        start local 21 // org.hibernate.cfg.annotations.SimpleValueBinder elementBinder
        93: .line 265
            aload 21 /* elementBinder */
            aload 6 /* mappings */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setMappings:(Lorg/hibernate/cfg/Mappings;)V
        94: .line 266
            aload 21 /* elementBinder */
            aload 10 /* mapKeyType */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setReturnedClassName:(Ljava/lang/String;)V
        95: .line 268
            aload 7 /* mapKeyColumns */
            astore 22 /* elementColumns */
        start local 22 // org.hibernate.cfg.Ejb3Column[] elementColumns
        96: .line 269
            aload 22 /* elementColumns */
            ifnull 97
            aload 22 /* elementColumns */
            arraylength
            ifne 107
        97: .line 270
      StackMap locals: org.hibernate.cfg.annotations.SimpleValueBinder org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
            iconst_1
            anewarray org.hibernate.cfg.Ejb3Column
            astore 22 /* elementColumns */
        98: .line 271
            new org.hibernate.cfg.Ejb3Column
            dup
            invokespecial org.hibernate.cfg.Ejb3Column.<init>:()V
            astore 23 /* column */
        start local 23 // org.hibernate.cfg.Ejb3Column column
        99: .line 272
            aload 23 /* column */
            iconst_0
            invokevirtual org.hibernate.cfg.Ejb3Column.setImplicit:(Z)V
       100: .line 273
            aload 23 /* column */
            iconst_1
            invokevirtual org.hibernate.cfg.Ejb3Column.setNullable:(Z)V
       101: .line 274
            aload 23 /* column */
            sipush 255
            invokevirtual org.hibernate.cfg.Ejb3Column.setLength:(I)V
       102: .line 275
            aload 23 /* column */
            ldc "id"
            invokevirtual org.hibernate.cfg.Ejb3Column.setLogicalColumnName:(Ljava/lang/String;)V
       103: .line 277
            aload 23 /* column */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokevirtual org.hibernate.cfg.Ejb3Column.setJoins:(Ljava/util/Map;)V
       104: .line 278
            aload 23 /* column */
            aload 6 /* mappings */
            invokevirtual org.hibernate.cfg.Ejb3Column.setMappings:(Lorg/hibernate/cfg/Mappings;)V
       105: .line 279
            aload 23 /* column */
            invokevirtual org.hibernate.cfg.Ejb3Column.bind:()V
       106: .line 280
            aload 22 /* elementColumns */
            iconst_0
            aload 23 /* column */
            aastore
        end local 23 // org.hibernate.cfg.Ejb3Column column
       107: .line 283
      StackMap locals:
      StackMap stack:
            aload 22 /* elementColumns */
            dup
            astore 26
            arraylength
            istore 25
            iconst_0
            istore 24
            goto 111
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.mapping.PersistentClass org.hibernate.cfg.AccessType org.hibernate.cfg.annotations.SimpleValueBinder org.hibernate.cfg.Ejb3Column[] top int int org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
       108: aload 26
            iload 24
            aaload
            astore 23 /* column */
        start local 23 // org.hibernate.cfg.Ejb3Column column
       109: .line 284
            aload 23 /* column */
            aload 15 /* mapValue */
            invokevirtual org.hibernate.mapping.Map.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.cfg.Ejb3Column.setTable:(Lorg/hibernate/mapping/Table;)V
        end local 23 // org.hibernate.cfg.Ejb3Column column
       110: .line 283
            iinc 24 1
      StackMap locals:
      StackMap stack:
       111: iload 24
            iload 25
            if_icmplt 108
       112: .line 286
            aload 21 /* elementBinder */
            aload 22 /* elementColumns */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setColumns:([Lorg/hibernate/cfg/Ejb3Column;)V
       113: .line 289
            aload 21 /* elementBinder */
            iconst_1
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setKey:(Z)V
       114: .line 290
            aload 4 /* property */
            ldc Lorg/hibernate/annotations/MapKeyType;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.MapKeyType
            astore 23 /* mapKeyTypeAnnotation */
        start local 23 // org.hibernate.annotations.MapKeyType mapKeyTypeAnnotation
       115: .line 291
            aload 23 /* mapKeyTypeAnnotation */
            ifnull 119
       116: .line 292
            aload 23 /* mapKeyTypeAnnotation */
            invokeinterface org.hibernate.annotations.MapKeyType.value:()Lorg/hibernate/annotations/Type;
            invokeinterface org.hibernate.annotations.Type.type:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.BinderHelper.isEmptyAnnotationValue:(Ljava/lang/String;)Z
            ifne 119
       117: .line 293
            aload 21 /* elementBinder */
            aload 23 /* mapKeyTypeAnnotation */
            invokeinterface org.hibernate.annotations.MapKeyType.value:()Lorg/hibernate/annotations/Type;
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setExplicitType:(Lorg/hibernate/annotations/Type;)V
       118: .line 294
            goto 125
       119: .line 296
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AnnotatedClassType org.hibernate.cfg.CollectionPropertyHolder org.hibernate.mapping.PersistentClass org.hibernate.cfg.AccessType org.hibernate.cfg.annotations.SimpleValueBinder org.hibernate.cfg.Ejb3Column[] org.hibernate.annotations.MapKeyType
      StackMap stack:
            aload 21 /* elementBinder */
       120: .line 297
            aload 4 /* property */
       121: .line 298
            aload 16 /* keyXClass */
       122: .line 299
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.mapping.Collection.getOwnerEntityName:()Ljava/lang/String;
       123: .line 300
            aload 18 /* holder */
            aload 16 /* keyXClass */
            invokevirtual org.hibernate.cfg.CollectionPropertyHolder.keyElementAttributeConverterDefinition:(Lorg/hibernate/annotations/common/reflection/XClass;)Lorg/hibernate/cfg/AttributeConverterDefinition;
       124: .line 296
            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
       125: .line 303
      StackMap locals:
      StackMap stack:
            aload 21 /* elementBinder */
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.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
       126: .line 304
            aload 21 /* elementBinder */
            aload 20 /* accessType */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.setAccessType:(Lorg/hibernate/cfg/AccessType;)V
       127: .line 305
            aload 15 /* mapValue */
            aload 21 /* elementBinder */
            invokevirtual org.hibernate.cfg.annotations.SimpleValueBinder.make:()Lorg/hibernate/mapping/SimpleValue;
            invokevirtual org.hibernate.mapping.Map.setIndex:(Lorg/hibernate/mapping/Value;)V
        end local 23 // org.hibernate.annotations.MapKeyType mapKeyTypeAnnotation
        end local 22 // org.hibernate.cfg.Ejb3Column[] elementColumns
        end local 21 // org.hibernate.cfg.annotations.SimpleValueBinder elementBinder
        end local 20 // org.hibernate.cfg.AccessType accessType
        end local 19 // org.hibernate.mapping.PersistentClass owner
        end local 18 // org.hibernate.cfg.CollectionPropertyHolder holder
        end local 17 // org.hibernate.cfg.AnnotatedClassType classType
        end local 16 // org.hibernate.annotations.common.reflection.XClass keyXClass
       128: .line 309
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.collection:Lorg/hibernate/mapping/Collection;
            invokevirtual org.hibernate.mapping.Collection.isOneToMany:()Z
            ifne 134
       129: .line 311
            aload 8 /* mapKeyManyToManyColumns */
            dup
            astore 19
            arraylength
            istore 18
            iconst_0
            istore 17
            goto 133
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map top int int org.hibernate.cfg.Ejb3JoinColumn[]
      StackMap stack:
       130: aload 19
            iload 17
            aaload
            astore 16 /* col */
        start local 16 // org.hibernate.cfg.Ejb3JoinColumn col
       131: .line 312
            aload 16 /* col */
            invokevirtual org.hibernate.cfg.Ejb3JoinColumn.forceNotNull:()V
        end local 16 // org.hibernate.cfg.Ejb3JoinColumn col
       132: .line 311
            iinc 17 1
      StackMap locals:
      StackMap stack:
       133: iload 17
            iload 18
            if_icmplt 130
       134: .line 315
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String java.lang.String java.lang.Class org.hibernate.mapping.PersistentClass int org.hibernate.mapping.ManyToOne org.hibernate.mapping.Map
      StackMap stack:
            iload 13 /* isIndexOfEntities */
            ifeq 141
       135: .line 317
            aload 12 /* collectionEntity */
       136: .line 318
            aload 8 /* mapKeyManyToManyColumns */
       137: .line 319
            aload 14 /* element */
       138: .line 320
            iconst_0
       139: .line 321
            aload 6 /* mappings */
       140: .line 316
            invokestatic org.hibernate.cfg.annotations.MapBinder.bindManytoManyInverseFk:(Lorg/hibernate/mapping/PersistentClass;[Lorg/hibernate/cfg/Ejb3JoinColumn;Lorg/hibernate/mapping/SimpleValue;ZLorg/hibernate/cfg/Mappings;)V
        end local 15 // org.hibernate.mapping.Map mapValue
        end local 14 // org.hibernate.mapping.ManyToOne element
        end local 13 // boolean isIndexOfEntities
        end local 12 // org.hibernate.mapping.PersistentClass collectionEntity
        end local 11 // java.lang.Class target
        end local 10 // java.lang.String mapKeyType
       141: .line 325
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.annotations.common.reflection.XClass java.util.Map java.lang.String org.hibernate.annotations.common.reflection.XProperty int org.hibernate.cfg.Mappings org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.Ejb3JoinColumn[] java.lang.String
      StackMap stack:
            return
        end local 9 // java.lang.String targetPropertyName
        end local 8 // org.hibernate.cfg.Ejb3JoinColumn[] mapKeyManyToManyColumns
        end local 7 // org.hibernate.cfg.Ejb3Column[] mapKeyColumns
        end local 6 // org.hibernate.cfg.Mappings mappings
        end local 5 // boolean isEmbedded
        end local 4 // org.hibernate.annotations.common.reflection.XProperty property
        end local 3 // java.lang.String mapKeyPropertyName
        end local 2 // java.util.Map persistentClasses
        end local 1 // org.hibernate.annotations.common.reflection.XClass collType
        end local 0 // org.hibernate.cfg.annotations.MapBinder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0  142     0                     this  Lorg/hibernate/cfg/annotations/MapBinder;
            0  142     1                 collType  Lorg/hibernate/annotations/common/reflection/XClass;
            0  142     2        persistentClasses  Ljava/util/Map;
            0  142     3       mapKeyPropertyName  Ljava/lang/String;
            0  142     4                 property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0  142     5               isEmbedded  Z
            0  142     6                 mappings  Lorg/hibernate/cfg/Mappings;
            0  142     7            mapKeyColumns  [Lorg/hibernate/cfg/Ejb3Column;
            0  142     8  mapKeyManyToManyColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            0  142     9       targetPropertyName  Ljava/lang/String;
            2   13    10          associatedClass  Lorg/hibernate/mapping/PersistentClass;
            4   13    11              mapProperty  Lorg/hibernate/mapping/Property;
            9   13    12                      map  Lorg/hibernate/mapping/Map;
           12   13    13               indexValue  Lorg/hibernate/mapping/Value;
           19   20    10               mapKeyType  Ljava/lang/String;
           21  141    10               mapKeyType  Ljava/lang/String;
           15  141    11                   target  Ljava/lang/Class;
           22  141    12         collectionEntity  Lorg/hibernate/mapping/PersistentClass;
           25  141    13        isIndexOfEntities  Z
           26  141    14                  element  Lorg/hibernate/mapping/ManyToOne;
           27  141    15                 mapValue  Lorg/hibernate/mapping/Map;
           37   38    16                keyXClass  Lorg/hibernate/annotations/common/reflection/XClass;
           39   40    16                keyXClass  Lorg/hibernate/annotations/common/reflection/XClass;
           42  128    16                keyXClass  Lorg/hibernate/annotations/common/reflection/XClass;
           36   38    17                classType  Lorg/hibernate/cfg/AnnotatedClassType;
           43  128    17                classType  Lorg/hibernate/cfg/AnnotatedClassType;
           41   42    18                        e  Ljava/lang/ClassNotFoundException;
           48   50    18        attributeOverride  Z
           57  128    18                   holder  Lorg/hibernate/cfg/CollectionPropertyHolder;
           60  128    19                    owner  Lorg/hibernate/mapping/PersistentClass;
           65   66    20               accessType  Lorg/hibernate/cfg/AccessType;
           71   72    20               accessType  Lorg/hibernate/cfg/AccessType;
           73  128    20               accessType  Lorg/hibernate/cfg/AccessType;
           68   71    21                     prop  Lorg/hibernate/mapping/Property;
           75   91    21             entityBinder  Lorg/hibernate/cfg/annotations/EntityBinder;
           77   78    22             inferredData  Lorg/hibernate/cfg/PropertyData;
           79   91    22             inferredData  Lorg/hibernate/cfg/PropertyData;
           90   91    23                component  Lorg/hibernate/mapping/Component;
           93  128    21            elementBinder  Lorg/hibernate/cfg/annotations/SimpleValueBinder;
           96  128    22           elementColumns  [Lorg/hibernate/cfg/Ejb3Column;
           99  107    23                   column  Lorg/hibernate/cfg/Ejb3Column;
          109  110    23                   column  Lorg/hibernate/cfg/Ejb3Column;
          115  128    23     mapKeyTypeAnnotation  Lorg/hibernate/annotations/MapKeyType;
          131  132    16                      col  Lorg/hibernate/cfg/Ejb3JoinColumn;
      Exception table:
        from    to  target  type
          38    39      40  Class java.lang.ClassNotFoundException
    MethodParameters:
                         Name  Flags
      collType                 
      persistentClasses        
      mapKeyPropertyName       
      property                 
      isEmbedded               
      mappings                 
      mapKeyColumns            
      mapKeyManyToManyColumns  
      targetPropertyName       

  protected org.hibernate.mapping.Value createFormulatedValue(org.hibernate.mapping.Value, org.hibernate.mapping.Collection, java.lang.String, org.hibernate.mapping.PersistentClass, org.hibernate.cfg.Mappings);
    descriptor: (Lorg/hibernate/mapping/Value;Lorg/hibernate/mapping/Collection;Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/Value;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=15, args_size=6
        start local 0 // org.hibernate.cfg.annotations.MapBinder this
        start local 1 // org.hibernate.mapping.Value value
        start local 2 // org.hibernate.mapping.Collection collection
        start local 3 // java.lang.String targetPropertyName
        start local 4 // org.hibernate.mapping.PersistentClass associatedClass
        start local 5 // org.hibernate.cfg.Mappings mappings
         0: .line 333
            aload 2 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getElement:()Lorg/hibernate/mapping/Value;
            astore 6 /* element */
        start local 6 // org.hibernate.mapping.Value element
         1: .line 334
            aconst_null
            astore 7 /* fromAndWhere */
        start local 7 // java.lang.String fromAndWhere
         2: .line 335
            aload 6 /* element */
            instanceof org.hibernate.mapping.OneToMany
            ifne 31
         3: .line 336
            aconst_null
            astore 8 /* referencedPropertyName */
        start local 8 // java.lang.String referencedPropertyName
         4: .line 337
            aload 6 /* element */
            instanceof org.hibernate.mapping.ToOne
            ifeq 7
         5: .line 338
            aload 6 /* element */
            checkcast org.hibernate.mapping.ToOne
            invokevirtual org.hibernate.mapping.ToOne.getReferencedPropertyName:()Ljava/lang/String;
            astore 8 /* referencedPropertyName */
         6: .line 339
            goto 12
         7: .line 340
      StackMap locals: org.hibernate.mapping.Value java.lang.String java.lang.String
      StackMap stack:
            aload 6 /* element */
            instanceof org.hibernate.mapping.DependantValue
            ifeq 12
         8: .line 342
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.MapBinder.propertyName:Ljava/lang/String;
            ifnull 11
         9: .line 343
            aload 2 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getReferencedPropertyName:()Ljava/lang/String;
            astore 8 /* referencedPropertyName */
        10: .line 344
            goto 12
        11: .line 346
      StackMap locals:
      StackMap stack:
            new org.hibernate.AnnotationException
            dup
            ldc "SecondaryTable JoinColumn cannot reference a non primary key"
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 350
      StackMap locals:
      StackMap stack:
            aload 8 /* referencedPropertyName */
            ifnonnull 15
        13: .line 351
            aload 4 /* associatedClass */
            invokevirtual org.hibernate.mapping.PersistentClass.getIdentifier:()Lorg/hibernate/mapping/KeyValue;
            invokeinterface org.hibernate.mapping.KeyValue.getColumnIterator:()Ljava/util/Iterator;
            astore 9 /* referencedEntityColumns */
        start local 9 // java.util.Iterator referencedEntityColumns
        14: .line 352
            goto 17
        end local 9 // java.util.Iterator referencedEntityColumns
        15: .line 354
      StackMap locals:
      StackMap stack:
            aload 4 /* associatedClass */
            aload 8 /* referencedPropertyName */
            invokevirtual org.hibernate.mapping.PersistentClass.getRecursiveProperty:(Ljava/lang/String;)Lorg/hibernate/mapping/Property;
            astore 10 /* referencedProperty */
        start local 10 // org.hibernate.mapping.Property referencedProperty
        16: .line 355
            aload 10 /* referencedProperty */
            invokevirtual org.hibernate.mapping.Property.getColumnIterator:()Ljava/util/Iterator;
            astore 9 /* referencedEntityColumns */
        end local 10 // org.hibernate.mapping.Property referencedProperty
        start local 9 // java.util.Iterator referencedEntityColumns
        17: .line 357
      StackMap locals: java.util.Iterator
      StackMap stack:
            ldc "$alias$"
            astore 10 /* alias */
        start local 10 // java.lang.String alias
        18: .line 358
            new java.lang.StringBuilder
            dup
            ldc " from "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        19: .line 359
            aload 4 /* associatedClass */
            invokevirtual org.hibernate.mapping.PersistentClass.getTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.mapping.Table.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 361
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        21: .line 362
            aload 10 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        22: .line 358
            astore 11 /* fromAndWhereSb */
        start local 11 // java.lang.StringBuilder fromAndWhereSb
        23: .line 363
            aload 6 /* element */
            invokeinterface org.hibernate.mapping.Value.getColumnIterator:()Ljava/util/Iterator;
            astore 12 /* collectionTableColumns */
        start local 12 // java.util.Iterator collectionTableColumns
        24: .line 364
            goto 29
        25: .line 365
      StackMap locals: java.lang.String java.lang.StringBuilder java.util.Iterator
      StackMap stack:
            aload 12 /* collectionTableColumns */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Column
            astore 13 /* colColumn */
        start local 13 // org.hibernate.mapping.Column colColumn
        26: .line 366
            aload 9 /* referencedEntityColumns */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Column
            astore 14 /* refColumn */
        start local 14 // org.hibernate.mapping.Column refColumn
        27: .line 367
            aload 11 /* fromAndWhereSb */
            aload 10 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 14 /* refColumn */
            invokevirtual org.hibernate.mapping.Column.getQuotedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        28: .line 368
            bipush 61
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 13 /* colColumn */
            invokevirtual org.hibernate.mapping.Column.getQuotedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 14 // org.hibernate.mapping.Column refColumn
        end local 13 // org.hibernate.mapping.Column colColumn
        29: .line 364
      StackMap locals:
      StackMap stack:
            aload 12 /* collectionTableColumns */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 25
        30: .line 370
            aload 11 /* fromAndWhereSb */
            iconst_0
            aload 11 /* fromAndWhereSb */
            invokevirtual java.lang.StringBuilder.length:()I
            iconst_5
            isub
            invokevirtual java.lang.StringBuilder.substring:(II)Ljava/lang/String;
            astore 7 /* fromAndWhere */
        end local 12 // java.util.Iterator collectionTableColumns
        end local 11 // java.lang.StringBuilder fromAndWhereSb
        end local 10 // java.lang.String alias
        end local 9 // java.util.Iterator referencedEntityColumns
        end local 8 // java.lang.String referencedPropertyName
        31: .line 373
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.mapping.Value org.hibernate.mapping.Collection java.lang.String org.hibernate.mapping.PersistentClass org.hibernate.cfg.Mappings org.hibernate.mapping.Value java.lang.String
      StackMap stack:
            aload 1 /* value */
            instanceof org.hibernate.mapping.Component
            ifeq 60
        32: .line 374
            aload 1 /* value */
            checkcast org.hibernate.mapping.Component
            astore 8 /* component */
        start local 8 // org.hibernate.mapping.Component component
        33: .line 375
            aload 8 /* component */
            invokevirtual org.hibernate.mapping.Component.getPropertyIterator:()Ljava/util/Iterator;
            astore 9 /* properties */
        start local 9 // java.util.Iterator properties
        34: .line 376
            new org.hibernate.mapping.Component
            dup
            aload 5 /* mappings */
            aload 2 /* collection */
            invokespecial org.hibernate.mapping.Component.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Collection;)V
            astore 10 /* indexComponent */
        start local 10 // org.hibernate.mapping.Component indexComponent
        35: .line 377
            aload 10 /* indexComponent */
            aload 8 /* component */
            invokevirtual org.hibernate.mapping.Component.getComponentClassName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Component.setComponentClassName:(Ljava/lang/String;)V
        36: .line 379
            aload 10 /* indexComponent */
            ldc "index"
            invokevirtual org.hibernate.mapping.Component.setNodeName:(Ljava/lang/String;)V
        37: .line 380
            goto 58
        38: .line 381
      StackMap locals: org.hibernate.mapping.Component java.util.Iterator org.hibernate.mapping.Component
      StackMap stack:
            aload 9 /* properties */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Property
            astore 11 /* current */
        start local 11 // org.hibernate.mapping.Property current
        39: .line 382
            new org.hibernate.mapping.Property
            dup
            invokespecial org.hibernate.mapping.Property.<init>:()V
            astore 12 /* newProperty */
        start local 12 // org.hibernate.mapping.Property newProperty
        40: .line 383
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getCascade:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Property.setCascade:(Ljava/lang/String;)V
        41: .line 384
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getValueGenerationStrategy:()Lorg/hibernate/tuple/ValueGeneration;
            invokevirtual org.hibernate.mapping.Property.setValueGenerationStrategy:(Lorg/hibernate/tuple/ValueGeneration;)V
        42: .line 385
            aload 12 /* newProperty */
            iconst_0
            invokevirtual org.hibernate.mapping.Property.setInsertable:(Z)V
        43: .line 386
            aload 12 /* newProperty */
            iconst_0
            invokevirtual org.hibernate.mapping.Property.setUpdateable:(Z)V
        44: .line 387
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getMetaAttributes:()Ljava/util/Map;
            invokevirtual org.hibernate.mapping.Property.setMetaAttributes:(Ljava/util/Map;)V
        45: .line 388
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Property.setName:(Ljava/lang/String;)V
        46: .line 389
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getNodeName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Property.setNodeName:(Ljava/lang/String;)V
        47: .line 390
            aload 12 /* newProperty */
            iconst_0
            invokevirtual org.hibernate.mapping.Property.setNaturalIdentifier:(Z)V
        48: .line 392
            aload 12 /* newProperty */
            iconst_0
            invokevirtual org.hibernate.mapping.Property.setOptional:(Z)V
        49: .line 393
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getPersistentClass:()Lorg/hibernate/mapping/PersistentClass;
            invokevirtual org.hibernate.mapping.Property.setPersistentClass:(Lorg/hibernate/mapping/PersistentClass;)V
        50: .line 394
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getPropertyAccessorName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Property.setPropertyAccessorName:(Ljava/lang/String;)V
        51: .line 395
            aload 12 /* newProperty */
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.isSelectable:()Z
            invokevirtual org.hibernate.mapping.Property.setSelectable:(Z)V
        52: .line 396
            aload 12 /* newProperty */
        53: .line 397
            aload 0 /* this */
        54: .line 398
            aload 11 /* current */
            invokevirtual org.hibernate.mapping.Property.getValue:()Lorg/hibernate/mapping/Value;
            aload 2 /* collection */
            aload 3 /* targetPropertyName */
            aload 4 /* associatedClass */
            aload 5 /* mappings */
        55: .line 397
            invokevirtual org.hibernate.cfg.annotations.MapBinder.createFormulatedValue:(Lorg/hibernate/mapping/Value;Lorg/hibernate/mapping/Collection;Ljava/lang/String;Lorg/hibernate/mapping/PersistentClass;Lorg/hibernate/cfg/Mappings;)Lorg/hibernate/mapping/Value;
        56: .line 396
            invokevirtual org.hibernate.mapping.Property.setValue:(Lorg/hibernate/mapping/Value;)V
        57: .line 401
            aload 10 /* indexComponent */
            aload 12 /* newProperty */
            invokevirtual org.hibernate.mapping.Component.addProperty:(Lorg/hibernate/mapping/Property;)V
        end local 12 // org.hibernate.mapping.Property newProperty
        end local 11 // org.hibernate.mapping.Property current
        58: .line 380
      StackMap locals:
      StackMap stack:
            aload 9 /* properties */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 38
        59: .line 403
            aload 10 /* indexComponent */
            areturn
        end local 10 // org.hibernate.mapping.Component indexComponent
        end local 9 // java.util.Iterator properties
        end local 8 // org.hibernate.mapping.Component component
        60: .line 405
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            instanceof org.hibernate.mapping.SimpleValue
            ifeq 96
        61: .line 406
            aload 1 /* value */
            checkcast org.hibernate.mapping.SimpleValue
            astore 8 /* sourceValue */
        start local 8 // org.hibernate.mapping.SimpleValue sourceValue
        62: .line 408
            aload 1 /* value */
            instanceof org.hibernate.mapping.ManyToOne
            ifeq 70
        63: .line 409
            aload 8 /* sourceValue */
            checkcast org.hibernate.mapping.ManyToOne
            astore 10 /* sourceManyToOne */
        start local 10 // org.hibernate.mapping.ManyToOne sourceManyToOne
        64: .line 410
            new org.hibernate.mapping.ManyToOne
            dup
            aload 5 /* mappings */
            aload 2 /* collection */
            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
            astore 11 /* targetManyToOne */
        start local 11 // org.hibernate.mapping.ManyToOne targetManyToOne
        65: .line 411
            aload 11 /* targetManyToOne */
            getstatic org.hibernate.FetchMode.DEFAULT:Lorg/hibernate/FetchMode;
            invokevirtual org.hibernate.mapping.ManyToOne.setFetchMode:(Lorg/hibernate/FetchMode;)V
        66: .line 412
            aload 11 /* targetManyToOne */
            iconst_1
            invokevirtual org.hibernate.mapping.ManyToOne.setLazy:(Z)V
        67: .line 414
            aload 11 /* targetManyToOne */
            aload 10 /* sourceManyToOne */
            invokevirtual org.hibernate.mapping.ManyToOne.getReferencedEntityName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.ManyToOne.setReferencedEntityName:(Ljava/lang/String;)V
        68: .line 415
            aload 11 /* targetManyToOne */
            astore 9 /* targetValue */
        end local 11 // org.hibernate.mapping.ManyToOne targetManyToOne
        end local 10 // org.hibernate.mapping.ManyToOne sourceManyToOne
        start local 9 // org.hibernate.mapping.SimpleValue targetValue
        69: .line 416
            goto 73
        end local 9 // org.hibernate.mapping.SimpleValue targetValue
        70: .line 418
      StackMap locals: org.hibernate.mapping.SimpleValue
      StackMap stack:
            new org.hibernate.mapping.SimpleValue
            dup
            aload 5 /* mappings */
            aload 2 /* collection */
            invokevirtual org.hibernate.mapping.Collection.getCollectionTable:()Lorg/hibernate/mapping/Table;
            invokespecial org.hibernate.mapping.SimpleValue.<init>:(Lorg/hibernate/cfg/Mappings;Lorg/hibernate/mapping/Table;)V
            astore 9 /* targetValue */
        start local 9 // org.hibernate.mapping.SimpleValue targetValue
        71: .line 419
            aload 9 /* targetValue */
            aload 8 /* sourceValue */
            invokevirtual org.hibernate.mapping.SimpleValue.getTypeName:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.SimpleValue.setTypeName:(Ljava/lang/String;)V
        72: .line 420
            aload 9 /* targetValue */
            aload 8 /* sourceValue */
            invokevirtual org.hibernate.mapping.SimpleValue.getTypeParameters:()Ljava/util/Properties;
            invokevirtual org.hibernate.mapping.SimpleValue.setTypeParameters:(Ljava/util/Properties;)V
        73: .line 422
      StackMap locals: org.hibernate.mapping.SimpleValue
      StackMap stack:
            aload 8 /* sourceValue */
            invokevirtual org.hibernate.mapping.SimpleValue.getColumnIterator:()Ljava/util/Iterator;
            astore 10 /* columns */
        start local 10 // java.util.Iterator columns
        74: .line 423
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            astore 11 /* random */
        start local 11 // java.util.Random random
        75: .line 424
            goto 94
        76: .line 425
      StackMap locals: java.util.Iterator java.util.Random
      StackMap stack:
            aload 10 /* columns */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 12 /* current */
        start local 12 // java.lang.Object current
        77: .line 426
            new org.hibernate.mapping.Formula
            dup
            invokespecial org.hibernate.mapping.Formula.<init>:()V
            astore 13 /* formula */
        start local 13 // org.hibernate.mapping.Formula formula
        78: .line 428
            aload 12 /* current */
            instanceof org.hibernate.mapping.Column
            ifeq 81
        79: .line 429
            aload 12 /* current */
            checkcast org.hibernate.mapping.Column
            invokevirtual org.hibernate.mapping.Column.getQuotedName:()Ljava/lang/String;
            astore 14 /* formulaString */
        start local 14 // java.lang.String formulaString
        80: .line 430
            goto 85
        end local 14 // java.lang.String formulaString
        81: .line 431
      StackMap locals: java.lang.Object org.hibernate.mapping.Formula
      StackMap stack:
            aload 12 /* current */
            instanceof org.hibernate.mapping.Formula
            ifeq 84
        82: .line 432
            aload 12 /* current */
            checkcast org.hibernate.mapping.Formula
            invokevirtual org.hibernate.mapping.Formula.getFormula:()Ljava/lang/String;
            astore 14 /* formulaString */
        start local 14 // java.lang.String formulaString
        83: .line 433
            goto 85
        end local 14 // java.lang.String formulaString
        84: .line 435
      StackMap locals:
      StackMap stack:
            new org.hibernate.AssertionFailure
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown element in column iterator: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* current */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        start local 14 // java.lang.String formulaString
        85: .line 437
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* fromAndWhere */
            ifnull 92
        86: .line 438
            aload 14 /* formulaString */
            ldc "$alias$"
            new org.hibernate.dialect.HSQLDialect
            dup
            invokespecial org.hibernate.dialect.HSQLDialect.<init>:()V
            invokestatic org.hibernate.sql.Template.renderWhereStringTemplate:(Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            astore 14 /* formulaString */
        87: .line 439
            new java.lang.StringBuilder
            dup
            ldc "(select "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 14 /* formulaString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* fromAndWhere */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 14 /* formulaString */
        88: .line 441
            aload 14 /* formulaString */
        89: .line 442
            ldc "$alias$"
        90: .line 443
            new java.lang.StringBuilder
            dup
            ldc "a"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* random */
            bipush 16
            invokevirtual java.util.Random.nextInt:(I)I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        91: .line 440
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 14 /* formulaString */
        92: .line 446
      StackMap locals:
      StackMap stack:
            aload 13 /* formula */
            aload 14 /* formulaString */
            invokevirtual org.hibernate.mapping.Formula.setFormula:(Ljava/lang/String;)V
        93: .line 447
            aload 9 /* targetValue */
            aload 13 /* formula */
            invokevirtual org.hibernate.mapping.SimpleValue.addFormula:(Lorg/hibernate/mapping/Formula;)V
        end local 14 // java.lang.String formulaString
        end local 13 // org.hibernate.mapping.Formula formula
        end local 12 // java.lang.Object current
        94: .line 424
      StackMap locals:
      StackMap stack:
            aload 10 /* columns */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 76
        95: .line 450
            aload 9 /* targetValue */
            areturn
        end local 11 // java.util.Random random
        end local 10 // java.util.Iterator columns
        end local 9 // org.hibernate.mapping.SimpleValue targetValue
        end local 8 // org.hibernate.mapping.SimpleValue sourceValue
        96: .line 453
      StackMap locals: org.hibernate.cfg.annotations.MapBinder org.hibernate.mapping.Value org.hibernate.mapping.Collection java.lang.String org.hibernate.mapping.PersistentClass org.hibernate.cfg.Mappings org.hibernate.mapping.Value java.lang.String
      StackMap stack:
            new org.hibernate.AssertionFailure
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown type encounters for map key: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.lang.String fromAndWhere
        end local 6 // org.hibernate.mapping.Value element
        end local 5 // org.hibernate.cfg.Mappings mappings
        end local 4 // org.hibernate.mapping.PersistentClass associatedClass
        end local 3 // java.lang.String targetPropertyName
        end local 2 // org.hibernate.mapping.Collection collection
        end local 1 // org.hibernate.mapping.Value value
        end local 0 // org.hibernate.cfg.annotations.MapBinder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   97     0                     this  Lorg/hibernate/cfg/annotations/MapBinder;
            0   97     1                    value  Lorg/hibernate/mapping/Value;
            0   97     2               collection  Lorg/hibernate/mapping/Collection;
            0   97     3       targetPropertyName  Ljava/lang/String;
            0   97     4          associatedClass  Lorg/hibernate/mapping/PersistentClass;
            0   97     5                 mappings  Lorg/hibernate/cfg/Mappings;
            1   97     6                  element  Lorg/hibernate/mapping/Value;
            2   97     7             fromAndWhere  Ljava/lang/String;
            4   31     8   referencedPropertyName  Ljava/lang/String;
           14   15     9  referencedEntityColumns  Ljava/util/Iterator;
           17   31     9  referencedEntityColumns  Ljava/util/Iterator;
           16   17    10       referencedProperty  Lorg/hibernate/mapping/Property;
           18   31    10                    alias  Ljava/lang/String;
           23   31    11           fromAndWhereSb  Ljava/lang/StringBuilder;
           24   31    12   collectionTableColumns  Ljava/util/Iterator;
           26   29    13                colColumn  Lorg/hibernate/mapping/Column;
           27   29    14                refColumn  Lorg/hibernate/mapping/Column;
           33   60     8                component  Lorg/hibernate/mapping/Component;
           34   60     9               properties  Ljava/util/Iterator;
           35   60    10           indexComponent  Lorg/hibernate/mapping/Component;
           39   58    11                  current  Lorg/hibernate/mapping/Property;
           40   58    12              newProperty  Lorg/hibernate/mapping/Property;
           62   96     8              sourceValue  Lorg/hibernate/mapping/SimpleValue;
           69   70     9              targetValue  Lorg/hibernate/mapping/SimpleValue;
           71   96     9              targetValue  Lorg/hibernate/mapping/SimpleValue;
           64   69    10          sourceManyToOne  Lorg/hibernate/mapping/ManyToOne;
           65   69    11          targetManyToOne  Lorg/hibernate/mapping/ManyToOne;
           74   96    10                  columns  Ljava/util/Iterator;
           75   96    11                   random  Ljava/util/Random;
           77   94    12                  current  Ljava/lang/Object;
           78   94    13                  formula  Lorg/hibernate/mapping/Formula;
           80   81    14            formulaString  Ljava/lang/String;
           83   84    14            formulaString  Ljava/lang/String;
           85   94    14            formulaString  Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      value               
      collection          
      targetPropertyName  
      associatedClass     
      mappings            
}
SourceFile: "MapBinder.java"
NestMembers:
  org.hibernate.cfg.annotations.MapBinder$1
InnerClasses:
  org.hibernate.cfg.annotations.MapBinder$1