class org.hibernate.cfg.PropertyContainer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.cfg.PropertyContainer
  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

  private final org.hibernate.annotations.common.reflection.XClass xClass;
    descriptor: Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.annotations.common.reflection.XClass entityAtStake;
    descriptor: Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.cfg.AccessType classLevelAccessType;
    descriptor: Lorg/hibernate/cfg/AccessType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.TreeMap<java.lang.String, org.hibernate.annotations.common.reflection.XProperty> persistentAttributeMap;
    descriptor: Ljava/util/TreeMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/TreeMap<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 46
            ldc Lorg/hibernate/cfg/PropertyContainer;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.hibernate.cfg.PropertyContainer.$assertionsDisabled:Z
         3: .line 52
            ldc Lorg/hibernate/internal/CoreMessageLogger;
            ldc Lorg/hibernate/cfg/PropertyContainer;
            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.PropertyContainer.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.hibernate.annotations.common.reflection.XClass, org.hibernate.annotations.common.reflection.XClass, org.hibernate.cfg.AccessType);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/annotations/common/reflection/XClass;Lorg/hibernate/cfg/AccessType;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.hibernate.cfg.PropertyContainer this
        start local 1 // org.hibernate.annotations.common.reflection.XClass clazz
        start local 2 // org.hibernate.annotations.common.reflection.XClass entityAtStake
        start local 3 // org.hibernate.cfg.AccessType defaultClassLevelAccessType
         0: .line 68
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 69
            aload 0 /* this */
            aload 1 /* clazz */
            putfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
         2: .line 70
            aload 0 /* this */
            aload 2 /* entityAtStake */
            putfield org.hibernate.cfg.PropertyContainer.entityAtStake:Lorg/hibernate/annotations/common/reflection/XClass;
         3: .line 72
            aload 3 /* defaultClassLevelAccessType */
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            if_acmpne 5
         4: .line 75
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            astore 3 /* defaultClassLevelAccessType */
         5: .line 78
      StackMap locals: org.hibernate.cfg.PropertyContainer org.hibernate.annotations.common.reflection.XClass org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AccessType
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.PropertyContainer.determineLocalClassDefinedAccessStrategy:()Lorg/hibernate/cfg/AccessType;
            astore 4 /* localClassLevelAccessType */
        start local 4 // org.hibernate.cfg.AccessType localClassLevelAccessType
         6: .line 79
            getstatic org.hibernate.cfg.PropertyContainer.$assertionsDisabled:Z
            ifne 7
            aload 4 /* localClassLevelAccessType */
            ifnonnull 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 81
      StackMap locals: org.hibernate.cfg.AccessType
      StackMap stack:
            aload 0 /* this */
            aload 4 /* localClassLevelAccessType */
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 9
         8: .line 82
            aload 4 /* localClassLevelAccessType */
            goto 10
         9: .line 83
      StackMap locals:
      StackMap stack: org.hibernate.cfg.PropertyContainer
            aload 3 /* defaultClassLevelAccessType */
        10: .line 81
      StackMap locals: org.hibernate.cfg.PropertyContainer org.hibernate.annotations.common.reflection.XClass org.hibernate.annotations.common.reflection.XClass org.hibernate.cfg.AccessType org.hibernate.cfg.AccessType
      StackMap stack: org.hibernate.cfg.PropertyContainer org.hibernate.cfg.AccessType
            putfield org.hibernate.cfg.PropertyContainer.classLevelAccessType:Lorg/hibernate/cfg/AccessType;
        11: .line 84
            getstatic org.hibernate.cfg.PropertyContainer.$assertionsDisabled:Z
            ifne 12
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.classLevelAccessType:Lorg/hibernate/cfg/AccessType;
            getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 12
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.classLevelAccessType:Lorg/hibernate/cfg/AccessType;
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            putfield org.hibernate.cfg.PropertyContainer.persistentAttributeMap:Ljava/util/TreeMap;
        13: .line 88
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
            invokevirtual org.hibernate.cfg.AccessType.getType:()Ljava/lang/String;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getDeclaredProperties:(Ljava/lang/String;)Ljava/util/List;
            astore 5 /* fields */
        start local 5 // java.util.List fields
        14: .line 89
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            getstatic org.hibernate.cfg.AccessType.PROPERTY:Lorg/hibernate/cfg/AccessType;
            invokevirtual org.hibernate.cfg.AccessType.getType:()Ljava/lang/String;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getDeclaredProperties:(Ljava/lang/String;)Ljava/util/List;
            astore 6 /* getters */
        start local 6 // java.util.List getters
        15: .line 91
            aload 0 /* this */
            aload 5 /* fields */
            aload 6 /* getters */
            invokevirtual org.hibernate.cfg.PropertyContainer.preFilter:(Ljava/util/List;Ljava/util/List;)V
        16: .line 93
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 7 /* persistentAttributesFromGetters */
        start local 7 // java.util.Map persistentAttributesFromGetters
        17: .line 95
            aload 0 /* this */
        18: .line 96
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.persistentAttributeMap:Ljava/util/TreeMap;
        19: .line 97
            aload 7 /* persistentAttributesFromGetters */
        20: .line 98
            aload 5 /* fields */
        21: .line 99
            aload 6 /* getters */
        22: .line 95
            invokevirtual org.hibernate.cfg.PropertyContainer.collectPersistentAttributesUsingLocalAccessType:(Ljava/util/TreeMap;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V
        23: .line 101
            aload 0 /* this */
        24: .line 102
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.persistentAttributeMap:Ljava/util/TreeMap;
        25: .line 103
            aload 7 /* persistentAttributesFromGetters */
        26: .line 104
            aload 5 /* fields */
        27: .line 105
            aload 6 /* getters */
        28: .line 101
            invokevirtual org.hibernate.cfg.PropertyContainer.collectPersistentAttributesUsingClassLevelAccessType:(Ljava/util/TreeMap;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V
        29: .line 107
            return
        end local 7 // java.util.Map persistentAttributesFromGetters
        end local 6 // java.util.List getters
        end local 5 // java.util.List fields
        end local 4 // org.hibernate.cfg.AccessType localClassLevelAccessType
        end local 3 // org.hibernate.cfg.AccessType defaultClassLevelAccessType
        end local 2 // org.hibernate.annotations.common.reflection.XClass entityAtStake
        end local 1 // org.hibernate.annotations.common.reflection.XClass clazz
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0   30     0                             this  Lorg/hibernate/cfg/PropertyContainer;
            0   30     1                            clazz  Lorg/hibernate/annotations/common/reflection/XClass;
            0   30     2                    entityAtStake  Lorg/hibernate/annotations/common/reflection/XClass;
            0   30     3      defaultClassLevelAccessType  Lorg/hibernate/cfg/AccessType;
            6   30     4        localClassLevelAccessType  Lorg/hibernate/cfg/AccessType;
           14   30     5                           fields  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
           15   30     6                          getters  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
           17   30     7  persistentAttributesFromGetters  Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;
    MethodParameters:
                             Name  Flags
      clazz                        
      entityAtStake                
      defaultClassLevelAccessType  

  private void preFilter(java.util.List<org.hibernate.annotations.common.reflection.XProperty>, java.util.List<org.hibernate.annotations.common.reflection.XProperty>);
    descriptor: (Ljava/util/List;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=5, args_size=3
        start local 0 // org.hibernate.cfg.PropertyContainer this
        start local 1 // java.util.List fields
        start local 2 // java.util.List getters
         0: .line 110
            aload 1 /* fields */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* propertyIterator */
        start local 3 // java.util.Iterator propertyIterator
         1: .line 111
            goto 5
         2: .line 112
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 4 /* property */
        start local 4 // org.hibernate.annotations.common.reflection.XProperty property
         3: .line 113
            aload 4 /* property */
            invokestatic org.hibernate.cfg.PropertyContainer.mustBeSkipped:(Lorg/hibernate/annotations/common/reflection/XProperty;)Z
            ifeq 5
         4: .line 114
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.remove:()V
        end local 4 // org.hibernate.annotations.common.reflection.XProperty property
         5: .line 111
      StackMap locals:
      StackMap stack:
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 118
            aload 2 /* getters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* propertyIterator */
         7: .line 119
            goto 11
         8: .line 120
      StackMap locals:
      StackMap stack:
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 4 /* property */
        start local 4 // org.hibernate.annotations.common.reflection.XProperty property
         9: .line 121
            aload 4 /* property */
            invokestatic org.hibernate.cfg.PropertyContainer.mustBeSkipped:(Lorg/hibernate/annotations/common/reflection/XProperty;)Z
            ifeq 11
        10: .line 122
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.remove:()V
        end local 4 // org.hibernate.annotations.common.reflection.XProperty property
        11: .line 119
      StackMap locals:
      StackMap stack:
            aload 3 /* propertyIterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        12: .line 125
            return
        end local 3 // java.util.Iterator propertyIterator
        end local 2 // java.util.List getters
        end local 1 // java.util.List fields
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lorg/hibernate/cfg/PropertyContainer;
            0   13     1            fields  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   13     2           getters  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            1   13     3  propertyIterator  Ljava/util/Iterator<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            3    5     4          property  Lorg/hibernate/annotations/common/reflection/XProperty;
            9   11     4          property  Lorg/hibernate/annotations/common/reflection/XProperty;
    Signature: (Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;)V
    MethodParameters:
         Name  Flags
      fields   
      getters  

  private void collectPersistentAttributesUsingLocalAccessType(java.util.TreeMap<java.lang.String, org.hibernate.annotations.common.reflection.XProperty>, java.util.Map<java.lang.String, org.hibernate.annotations.common.reflection.XProperty>, java.util.List<org.hibernate.annotations.common.reflection.XProperty>, java.util.List<org.hibernate.annotations.common.reflection.XProperty>);
    descriptor: (Ljava/util/TreeMap;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=5
        start local 0 // org.hibernate.cfg.PropertyContainer this
        start local 1 // java.util.TreeMap persistentAttributeMap
        start local 2 // java.util.Map persistentAttributesFromGetters
        start local 3 // java.util.List fields
        start local 4 // java.util.List getters
         0: .line 134
            aload 3 /* fields */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5 /* propertyIterator */
        start local 5 // java.util.Iterator propertyIterator
         1: .line 135
            goto 9
         2: .line 136
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 6 /* xProperty */
        start local 6 // org.hibernate.annotations.common.reflection.XProperty xProperty
         3: .line 137
            aload 6 /* xProperty */
            ldc Ljavax/persistence/Access;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.Access
            astore 7 /* localAccessAnnotation */
        start local 7 // javax.persistence.Access localAccessAnnotation
         4: .line 138
            aload 7 /* localAccessAnnotation */
            ifnull 9
         5: .line 139
            aload 7 /* localAccessAnnotation */
            invokeinterface javax.persistence.Access.value:()Ljavax/persistence/AccessType;
            getstatic javax.persistence.AccessType.FIELD:Ljavax/persistence/AccessType;
            if_acmpeq 7
         6: .line 140
            goto 9
         7: .line 143
      StackMap locals: org.hibernate.annotations.common.reflection.XProperty javax.persistence.Access
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.remove:()V
         8: .line 144
            aload 1 /* persistentAttributeMap */
            aload 6 /* xProperty */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            aload 6 /* xProperty */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // javax.persistence.Access localAccessAnnotation
        end local 6 // org.hibernate.annotations.common.reflection.XProperty xProperty
         9: .line 135
      StackMap locals:
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        10: .line 148
            aload 4 /* getters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5 /* propertyIterator */
        11: .line 149
            goto 31
        12: .line 150
      StackMap locals:
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 6 /* xProperty */
        start local 6 // org.hibernate.annotations.common.reflection.XProperty xProperty
        13: .line 151
            aload 6 /* xProperty */
            ldc Ljavax/persistence/Access;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.Access
            astore 7 /* localAccessAnnotation */
        start local 7 // javax.persistence.Access localAccessAnnotation
        14: .line 152
            aload 7 /* localAccessAnnotation */
            ifnull 31
        15: .line 153
            aload 7 /* localAccessAnnotation */
            invokeinterface javax.persistence.Access.value:()Ljavax/persistence/AccessType;
            getstatic javax.persistence.AccessType.PROPERTY:Ljavax/persistence/AccessType;
            if_acmpeq 17
        16: .line 154
            goto 31
        17: .line 157
      StackMap locals: org.hibernate.annotations.common.reflection.XProperty javax.persistence.Access
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.remove:()V
        18: .line 159
            aload 6 /* xProperty */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        19: .line 162
            aload 2 /* persistentAttributesFromGetters */
            aload 8 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 9 /* previous */
        start local 9 // org.hibernate.annotations.common.reflection.XProperty previous
        20: .line 163
            aload 9 /* previous */
            ifnull 29
        21: .line 164
            new org.hibernate.boot.MappingException
            dup
        22: .line 165
            getstatic org.hibernate.cfg.PropertyContainer.LOG:Lorg/hibernate/internal/CoreMessageLogger;
        23: .line 166
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
        24: .line 167
            aload 9 /* previous */
            invokestatic org.hibernate.cfg.annotations.HCANNHelper.annotatedElementSignature:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljava/lang/String;
        25: .line 168
            aload 6 /* xProperty */
            invokestatic org.hibernate.cfg.annotations.HCANNHelper.annotatedElementSignature:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljava/lang/String;
        26: .line 165
            invokeinterface org.hibernate.internal.CoreMessageLogger.ambiguousPropertyMethods:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
        27: .line 170
            new org.hibernate.boot.jaxb.Origin
            dup
            getstatic org.hibernate.boot.jaxb.SourceType.ANNOTATION:Lorg/hibernate/boot/jaxb/SourceType;
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokespecial org.hibernate.boot.jaxb.Origin.<init>:(Lorg/hibernate/boot/jaxb/SourceType;Ljava/lang/String;)V
        28: .line 164
            invokespecial org.hibernate.boot.MappingException.<init>:(Ljava/lang/String;Lorg/hibernate/boot/jaxb/Origin;)V
            athrow
        29: .line 174
      StackMap locals: java.lang.String org.hibernate.annotations.common.reflection.XProperty
      StackMap stack:
            aload 1 /* persistentAttributeMap */
            aload 8 /* name */
            aload 6 /* xProperty */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 175
            aload 2 /* persistentAttributesFromGetters */
            aload 8 /* name */
            aload 6 /* xProperty */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // org.hibernate.annotations.common.reflection.XProperty previous
        end local 8 // java.lang.String name
        end local 7 // javax.persistence.Access localAccessAnnotation
        end local 6 // org.hibernate.annotations.common.reflection.XProperty xProperty
        31: .line 149
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List java.util.Iterator
      StackMap stack:
            aload 5 /* propertyIterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        32: .line 177
            return
        end local 5 // java.util.Iterator propertyIterator
        end local 4 // java.util.List getters
        end local 3 // java.util.List fields
        end local 2 // java.util.Map persistentAttributesFromGetters
        end local 1 // java.util.TreeMap persistentAttributeMap
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0   33     0                             this  Lorg/hibernate/cfg/PropertyContainer;
            0   33     1           persistentAttributeMap  Ljava/util/TreeMap<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   33     2  persistentAttributesFromGetters  Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   33     3                           fields  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   33     4                          getters  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            1   33     5                 propertyIterator  Ljava/util/Iterator<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            3    9     6                        xProperty  Lorg/hibernate/annotations/common/reflection/XProperty;
            4    9     7            localAccessAnnotation  Ljavax/persistence/Access;
           13   31     6                        xProperty  Lorg/hibernate/annotations/common/reflection/XProperty;
           14   31     7            localAccessAnnotation  Ljavax/persistence/Access;
           19   31     8                             name  Ljava/lang/String;
           20   31     9                         previous  Lorg/hibernate/annotations/common/reflection/XProperty;
    Signature: (Ljava/util/TreeMap<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;)V
    MethodParameters:
                                 Name  Flags
      persistentAttributeMap           
      persistentAttributesFromGetters  
      fields                           
      getters                          

  private void collectPersistentAttributesUsingClassLevelAccessType(java.util.TreeMap<java.lang.String, org.hibernate.annotations.common.reflection.XProperty>, java.util.Map<java.lang.String, org.hibernate.annotations.common.reflection.XProperty>, java.util.List<org.hibernate.annotations.common.reflection.XProperty>, java.util.List<org.hibernate.annotations.common.reflection.XProperty>);
    descriptor: (Ljava/util/TreeMap;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // org.hibernate.cfg.PropertyContainer this
        start local 1 // java.util.TreeMap persistentAttributeMap
        start local 2 // java.util.Map persistentAttributesFromGetters
        start local 3 // java.util.List fields
        start local 4 // java.util.List getters
         0: .line 184
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.classLevelAccessType:Lorg/hibernate/cfg/AccessType;
            getstatic org.hibernate.cfg.AccessType.FIELD:Lorg/hibernate/cfg/AccessType;
            if_acmpne 8
         1: .line 185
            aload 3 /* fields */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 6
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 5 /* field */
        start local 5 // org.hibernate.annotations.common.reflection.XProperty field
         3: .line 186
            aload 1 /* persistentAttributeMap */
            aload 5 /* field */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            invokevirtual java.util.TreeMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 187
            goto 6
         5: .line 190
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List org.hibernate.annotations.common.reflection.XProperty java.util.Iterator
      StackMap stack:
            aload 1 /* persistentAttributeMap */
            aload 5 /* field */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            aload 5 /* field */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // org.hibernate.annotations.common.reflection.XProperty field
         6: .line 185
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 192
            goto 26
         8: .line 194
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List
      StackMap stack:
            aload 4 /* getters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 25
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 5 /* getter */
        start local 5 // org.hibernate.annotations.common.reflection.XProperty getter
        10: .line 195
            aload 5 /* getter */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        11: .line 198
            aload 2 /* persistentAttributesFromGetters */
            aload 7 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 8 /* previous */
        start local 8 // org.hibernate.annotations.common.reflection.XProperty previous
        12: .line 199
            aload 8 /* previous */
            ifnull 21
        13: .line 200
            new org.hibernate.boot.MappingException
            dup
        14: .line 201
            getstatic org.hibernate.cfg.PropertyContainer.LOG:Lorg/hibernate/internal/CoreMessageLogger;
        15: .line 202
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
        16: .line 203
            aload 8 /* previous */
            invokestatic org.hibernate.cfg.annotations.HCANNHelper.annotatedElementSignature:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljava/lang/String;
        17: .line 204
            aload 5 /* getter */
            invokestatic org.hibernate.cfg.annotations.HCANNHelper.annotatedElementSignature:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljava/lang/String;
        18: .line 201
            invokeinterface org.hibernate.internal.CoreMessageLogger.ambiguousPropertyMethods:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
        19: .line 206
            new org.hibernate.boot.jaxb.Origin
            dup
            getstatic org.hibernate.boot.jaxb.SourceType.ANNOTATION:Lorg/hibernate/boot/jaxb/SourceType;
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokespecial org.hibernate.boot.jaxb.Origin.<init>:(Lorg/hibernate/boot/jaxb/SourceType;Ljava/lang/String;)V
        20: .line 200
            invokespecial org.hibernate.boot.MappingException.<init>:(Ljava/lang/String;Lorg/hibernate/boot/jaxb/Origin;)V
            athrow
        21: .line 210
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List org.hibernate.annotations.common.reflection.XProperty java.util.Iterator java.lang.String org.hibernate.annotations.common.reflection.XProperty
      StackMap stack:
            aload 1 /* persistentAttributeMap */
            aload 7 /* name */
            invokevirtual java.util.TreeMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 23
        22: .line 211
            goto 25
        23: .line 214
      StackMap locals:
      StackMap stack:
            aload 1 /* persistentAttributeMap */
            aload 5 /* getter */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
            aload 5 /* getter */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 215
            aload 2 /* persistentAttributesFromGetters */
            aload 7 /* name */
            aload 5 /* getter */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // org.hibernate.annotations.common.reflection.XProperty previous
        end local 7 // java.lang.String name
        end local 5 // org.hibernate.annotations.common.reflection.XProperty getter
        25: .line 194
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        26: .line 218
      StackMap locals: org.hibernate.cfg.PropertyContainer java.util.TreeMap java.util.Map java.util.List java.util.List
      StackMap stack:
            return
        end local 4 // java.util.List getters
        end local 3 // java.util.List fields
        end local 2 // java.util.Map persistentAttributesFromGetters
        end local 1 // java.util.TreeMap persistentAttributeMap
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0   27     0                             this  Lorg/hibernate/cfg/PropertyContainer;
            0   27     1           persistentAttributeMap  Ljava/util/TreeMap<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   27     2  persistentAttributesFromGetters  Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   27     3                           fields  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            0   27     4                          getters  Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;
            3    6     5                            field  Lorg/hibernate/annotations/common/reflection/XProperty;
           10   25     5                           getter  Lorg/hibernate/annotations/common/reflection/XProperty;
           11   25     7                             name  Ljava/lang/String;
           12   25     8                         previous  Lorg/hibernate/annotations/common/reflection/XProperty;
    Signature: (Ljava/util/TreeMap<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;Ljava/util/List<Lorg/hibernate/annotations/common/reflection/XProperty;>;)V
    MethodParameters:
                                 Name  Flags
      persistentAttributeMap           
      persistentAttributesFromGetters  
      fields                           
      getters                          

  public org.hibernate.annotations.common.reflection.XClass getEntityAtStake();
    descriptor: ()Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 221
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.entityAtStake:Lorg/hibernate/annotations/common/reflection/XClass;
            areturn
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/PropertyContainer;

  public org.hibernate.annotations.common.reflection.XClass getDeclaringClass();
    descriptor: ()Lorg/hibernate/annotations/common/reflection/XClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 225
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            areturn
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/PropertyContainer;

  public org.hibernate.cfg.AccessType getClassLevelAccessType();
    descriptor: ()Lorg/hibernate/cfg/AccessType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 229
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.classLevelAccessType:Lorg/hibernate/cfg/AccessType;
            areturn
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/PropertyContainer;

  public java.util.Collection<org.hibernate.annotations.common.reflection.XProperty> getProperties();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 233
            aload 0 /* this */
            invokevirtual org.hibernate.cfg.PropertyContainer.assertTypesAreResolvable:()V
         1: .line 234
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.persistentAttributeMap:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
            invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/cfg/PropertyContainer;
    Signature: ()Ljava/util/Collection<Lorg/hibernate/annotations/common/reflection/XProperty;>;

  private void assertTypesAreResolvable();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 238
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.persistentAttributeMap:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 8
      StackMap locals: org.hibernate.cfg.PropertyContainer top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.annotations.common.reflection.XProperty
            astore 1 /* xProperty */
        start local 1 // org.hibernate.annotations.common.reflection.XProperty xProperty
         2: .line 239
            aload 1 /* xProperty */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isTypeResolved:()Z
            ifne 8
            aload 1 /* xProperty */
            invokestatic org.hibernate.cfg.PropertyContainer.discoverTypeWithoutReflection:(Lorg/hibernate/annotations/common/reflection/XProperty;)Z
            ifne 8
         3: .line 240
            new java.lang.StringBuilder
            dup
            ldc "Property "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            aload 1 /* xProperty */
            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;
         4: .line 241
            ldc " has an unbound type and no explicit target entity. Resolve this Generic usage issue"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 242
            ldc " or set an explicit target attribute (eg @OneToMany(target=) or use an explicit @Type"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 240
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* msg */
        start local 3 // java.lang.String msg
         7: .line 243
            new org.hibernate.AnnotationException
            dup
            aload 3 /* msg */
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String msg
        end local 1 // org.hibernate.annotations.common.reflection.XProperty xProperty
         8: .line 238
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 246
            return
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/hibernate/cfg/PropertyContainer;
            2    8     1  xProperty  Lorg/hibernate/annotations/common/reflection/XProperty;
            7    8     3        msg  Ljava/lang/String;

  private org.hibernate.cfg.AccessType determineLocalClassDefinedAccessStrategy();
    descriptor: ()Lorg/hibernate/cfg/AccessType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.hibernate.cfg.PropertyContainer this
         0: .line 328
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            astore 2 /* hibernateDefinedAccessType */
        start local 2 // org.hibernate.cfg.AccessType hibernateDefinedAccessType
         1: .line 329
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            astore 3 /* jpaDefinedAccessType */
        start local 3 // org.hibernate.cfg.AccessType jpaDefinedAccessType
         2: .line 331
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            ldc Lorg/hibernate/annotations/AccessType;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.AccessType
            astore 4 /* accessType */
        start local 4 // org.hibernate.annotations.AccessType accessType
         3: .line 332
            aload 4 /* accessType */
            ifnull 5
         4: .line 333
            aload 4 /* accessType */
            invokeinterface org.hibernate.annotations.AccessType.value:()Ljava/lang/String;
            invokestatic org.hibernate.cfg.AccessType.getAccessStrategy:(Ljava/lang/String;)Lorg/hibernate/cfg/AccessType;
            astore 2 /* hibernateDefinedAccessType */
         5: .line 336
      StackMap locals: org.hibernate.cfg.PropertyContainer top org.hibernate.cfg.AccessType org.hibernate.cfg.AccessType org.hibernate.annotations.AccessType
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.PropertyContainer.xClass:Lorg/hibernate/annotations/common/reflection/XClass;
            ldc Ljavax/persistence/Access;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.Access
            astore 5 /* access */
        start local 5 // javax.persistence.Access access
         6: .line 337
            aload 5 /* access */
            ifnull 8
         7: .line 338
            aload 5 /* access */
            invokeinterface javax.persistence.Access.value:()Ljavax/persistence/AccessType;
            invokestatic org.hibernate.cfg.AccessType.getAccessStrategy:(Ljavax/persistence/AccessType;)Lorg/hibernate/cfg/AccessType;
            astore 3 /* jpaDefinedAccessType */
         8: .line 341
      StackMap locals: javax.persistence.Access
      StackMap stack:
            aload 2 /* hibernateDefinedAccessType */
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 14
         9: .line 342
            aload 3 /* jpaDefinedAccessType */
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 14
        10: .line 343
            aload 2 /* hibernateDefinedAccessType */
            aload 3 /* jpaDefinedAccessType */
            if_acmpeq 14
        11: .line 344
            new org.hibernate.MappingException
            dup
        12: .line 345
            ldc "@AccessType and @Access specified with contradicting values. Use of @Access only is recommended. "
        13: .line 344
            invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 349
      StackMap locals:
      StackMap stack:
            aload 2 /* hibernateDefinedAccessType */
            getstatic org.hibernate.cfg.AccessType.DEFAULT:Lorg/hibernate/cfg/AccessType;
            if_acmpeq 17
        15: .line 350
            aload 2 /* hibernateDefinedAccessType */
            astore 1 /* classDefinedAccessType */
        start local 1 // org.hibernate.cfg.AccessType classDefinedAccessType
        16: .line 351
            goto 18
        end local 1 // org.hibernate.cfg.AccessType classDefinedAccessType
        17: .line 353
      StackMap locals:
      StackMap stack:
            aload 3 /* jpaDefinedAccessType */
            astore 1 /* classDefinedAccessType */
        start local 1 // org.hibernate.cfg.AccessType classDefinedAccessType
        18: .line 355
      StackMap locals: org.hibernate.cfg.PropertyContainer org.hibernate.cfg.AccessType org.hibernate.cfg.AccessType org.hibernate.cfg.AccessType org.hibernate.annotations.AccessType javax.persistence.Access
      StackMap stack:
            aload 1 /* classDefinedAccessType */
            areturn
        end local 5 // javax.persistence.Access access
        end local 4 // org.hibernate.annotations.AccessType accessType
        end local 3 // org.hibernate.cfg.AccessType jpaDefinedAccessType
        end local 2 // org.hibernate.cfg.AccessType hibernateDefinedAccessType
        end local 1 // org.hibernate.cfg.AccessType classDefinedAccessType
        end local 0 // org.hibernate.cfg.PropertyContainer this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   19     0                        this  Lorg/hibernate/cfg/PropertyContainer;
           16   17     1      classDefinedAccessType  Lorg/hibernate/cfg/AccessType;
           18   19     1      classDefinedAccessType  Lorg/hibernate/cfg/AccessType;
            1   19     2  hibernateDefinedAccessType  Lorg/hibernate/cfg/AccessType;
            2   19     3        jpaDefinedAccessType  Lorg/hibernate/cfg/AccessType;
            3   19     4                  accessType  Lorg/hibernate/annotations/AccessType;
            6   19     5                      access  Ljavax/persistence/Access;

  private static boolean discoverTypeWithoutReflection(org.hibernate.annotations.common.reflection.XProperty);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XProperty;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hibernate.annotations.common.reflection.XProperty p
         0: .line 359
            aload 0 /* p */
            ldc Ljavax/persistence/OneToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 4
            aload 0 /* p */
            ldc Ljavax/persistence/OneToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.OneToOne
         1: .line 360
            invokeinterface javax.persistence.OneToOne.targetEntity:()Ljava/lang/Class;
         2: .line 361
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 362
            iconst_1
            ireturn
         4: .line 364
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 8
            aload 0 /* p */
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.OneToMany
         5: .line 365
            invokeinterface javax.persistence.OneToMany.targetEntity:()Ljava/lang/Class;
         6: .line 366
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 367
            iconst_1
            ireturn
         8: .line 369
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Ljavax/persistence/ManyToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 12
            aload 0 /* p */
            ldc Ljavax/persistence/ManyToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.ManyToOne
         9: .line 370
            invokeinterface javax.persistence.ManyToOne.targetEntity:()Ljava/lang/Class;
        10: .line 371
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 372
            iconst_1
            ireturn
        12: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Ljavax/persistence/ManyToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 16
            aload 0 /* p */
            ldc Ljavax/persistence/ManyToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.ManyToMany
        13: .line 375
            invokeinterface javax.persistence.ManyToMany.targetEntity:()Ljava/lang/Class;
        14: .line 376
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 16
        15: .line 377
            iconst_1
            ireturn
        16: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Lorg/hibernate/annotations/Any;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 18
        17: .line 380
            iconst_1
            ireturn
        18: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Lorg/hibernate/annotations/ManyToAny;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 22
        19: .line 383
            aload 0 /* p */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isCollection:()Z
            ifne 21
            aload 0 /* p */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isArray:()Z
            ifne 21
        20: .line 384
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "@ManyToAny used on a non collection non array property: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* p */
            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;
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 386
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        22: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Lorg/hibernate/annotations/Type;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 24
        23: .line 389
            iconst_1
            ireturn
        24: .line 391
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            ldc Lorg/hibernate/annotations/Target;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 26
        25: .line 392
            iconst_1
            ireturn
        26: .line 394
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.hibernate.annotations.common.reflection.XProperty p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0     p  Lorg/hibernate/annotations/common/reflection/XProperty;
    MethodParameters:
      Name  Flags
      p     

  private static boolean mustBeSkipped(org.hibernate.annotations.common.reflection.XProperty);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XProperty;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hibernate.annotations.common.reflection.XProperty property
         0: .line 399
            aload 0 /* property */
            ldc Ljavax/persistence/Transient;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 4
         1: .line 400
            ldc "net.sf.cglib.transform.impl.InterceptFieldCallback"
            aload 0 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getType:()Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         2: .line 401
            ldc "org.hibernate.bytecode.internal.javassist.FieldHandler"
            aload 0 /* property */
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getType:()Lorg/hibernate/annotations/common/reflection/XClass;
            invokeinterface org.hibernate.annotations.common.reflection.XClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 399
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // org.hibernate.annotations.common.reflection.XProperty property
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  property  Lorg/hibernate/annotations/common/reflection/XProperty;
    MethodParameters:
          Name  Flags
      property  
}
SourceFile: "PropertyContainer.java"