public abstract class org.hibernate.criterion.SubqueryExpression implements org.hibernate.criterion.Criterion
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.criterion.SubqueryExpression
  super_class: java.lang.Object
{
  private org.hibernate.internal.CriteriaImpl criteriaImpl;
    descriptor: Lorg/hibernate/internal/CriteriaImpl;
    flags: (0x0002) ACC_PRIVATE

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

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

  private org.hibernate.engine.spi.QueryParameters params;
    descriptor: Lorg/hibernate/engine/spi/QueryParameters;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.type.Type[] types;
    descriptor: [Lorg/hibernate/type/Type;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.loader.criteria.CriteriaQueryTranslator innerQuery;
    descriptor: Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
    flags: (0x0002) ACC_PRIVATE

  protected void <init>(java.lang.String, java.lang.String, org.hibernate.criterion.DetachedCriteria);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/criterion/DetachedCriteria;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.hibernate.criterion.SubqueryExpression this
        start local 1 // java.lang.String op
        start local 2 // java.lang.String quantifier
        start local 3 // org.hibernate.criterion.DetachedCriteria dc
         0: .line 35
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 36
            aload 0 /* this */
            aload 3 /* dc */
            invokevirtual org.hibernate.criterion.DetachedCriteria.getCriteriaImpl:()Lorg/hibernate/internal/CriteriaImpl;
            putfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
         2: .line 37
            aload 0 /* this */
            aload 2 /* quantifier */
            putfield org.hibernate.criterion.SubqueryExpression.quantifier:Ljava/lang/String;
         3: .line 38
            aload 0 /* this */
            aload 1 /* op */
            putfield org.hibernate.criterion.SubqueryExpression.op:Ljava/lang/String;
         4: .line 39
            return
        end local 3 // org.hibernate.criterion.DetachedCriteria dc
        end local 2 // java.lang.String quantifier
        end local 1 // java.lang.String op
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/hibernate/criterion/SubqueryExpression;
            0    5     1          op  Ljava/lang/String;
            0    5     2  quantifier  Ljava/lang/String;
            0    5     3          dc  Lorg/hibernate/criterion/DetachedCriteria;
    MethodParameters:
            Name  Flags
      op          
      quantifier  
      dc          

  protected org.hibernate.type.Type[] getTypes();
    descriptor: ()[Lorg/hibernate/type/Type;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.criterion.SubqueryExpression this
         0: .line 42
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.types:[Lorg/hibernate/type/Type;
            areturn
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/criterion/SubqueryExpression;

  protected abstract java.lang.String toLeftSqlString(org.hibernate.Criteria, org.hibernate.criterion.CriteriaQuery);
    descriptor: (Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      criteria    
      outerQuery  

  public java.lang.String toSqlString(org.hibernate.Criteria, org.hibernate.criterion.CriteriaQuery);
    descriptor: (Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=7, args_size=3
        start local 0 // org.hibernate.criterion.SubqueryExpression this
        start local 1 // org.hibernate.Criteria criteria
        start local 2 // org.hibernate.criterion.CriteriaQuery criteriaQuery
         0: .line 49
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            aload 1 /* criteria */
            aload 2 /* criteriaQuery */
            invokevirtual org.hibernate.criterion.SubqueryExpression.toLeftSqlString:(Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         1: .line 50
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.op:Ljava/lang/String;
            ifnull 3
         2: .line 51
            aload 3 /* buf */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.op:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 53
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.quantifier:Ljava/lang/String;
            ifnull 5
         4: .line 54
            aload 3 /* buf */
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.quantifier:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 57
      StackMap locals:
      StackMap stack:
            aload 2 /* criteriaQuery */
            invokeinterface org.hibernate.criterion.CriteriaQuery.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            astore 4 /* factory */
        start local 4 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         6: .line 59
            aload 4 /* factory */
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getMetamodel:()Lorg/hibernate/metamodel/spi/MetamodelImplementor;
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getEntityOrClassName:()Ljava/lang/String;
            invokeinterface org.hibernate.metamodel.spi.MetamodelImplementor.entityPersister:(Ljava/lang/String;)Lorg/hibernate/persister/entity/EntityPersister;
            checkcast org.hibernate.persister.entity.OuterJoinLoadable
         7: .line 58
            astore 5 /* persister */
        start local 5 // org.hibernate.persister.entity.OuterJoinLoadable persister
         8: .line 61
            aload 0 /* this */
            aload 2 /* criteriaQuery */
            aload 4 /* factory */
            invokevirtual org.hibernate.criterion.SubqueryExpression.createAndSetInnerQuery:(Lorg/hibernate/criterion/CriteriaQuery;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
         9: .line 62
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            aload 0 /* this */
            aload 1 /* criteria */
            invokevirtual org.hibernate.criterion.SubqueryExpression.deriveRootSession:(Lorg/hibernate/Criteria;)Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            invokevirtual org.hibernate.internal.CriteriaImpl.setSession:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
        10: .line 64
            new org.hibernate.loader.criteria.CriteriaJoinWalker
            dup
        11: .line 65
            aload 5 /* persister */
        12: .line 66
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
        13: .line 67
            aload 4 /* factory */
        14: .line 68
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
        15: .line 69
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getEntityOrClassName:()Ljava/lang/String;
        16: .line 70
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getSession:()Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getLoadQueryInfluencers:()Lorg/hibernate/engine/spi/LoadQueryInfluencers;
        17: .line 71
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
            invokevirtual org.hibernate.loader.criteria.CriteriaQueryTranslator.getRootSQLALias:()Ljava/lang/String;
        18: .line 64
            invokespecial org.hibernate.loader.criteria.CriteriaJoinWalker.<init>:(Lorg/hibernate/persister/entity/OuterJoinLoadable;Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/internal/CriteriaImpl;Ljava/lang/String;Lorg/hibernate/engine/spi/LoadQueryInfluencers;Ljava/lang/String;)V
            astore 6 /* walker */
        start local 6 // org.hibernate.loader.criteria.CriteriaJoinWalker walker
        19: .line 74
            aload 3 /* buf */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 6 /* walker */
            invokevirtual org.hibernate.loader.criteria.CriteriaJoinWalker.getSQLString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 6 // org.hibernate.loader.criteria.CriteriaJoinWalker walker
        end local 5 // org.hibernate.persister.entity.OuterJoinLoadable persister
        end local 4 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 3 // java.lang.StringBuilder buf
        end local 2 // org.hibernate.criterion.CriteriaQuery criteriaQuery
        end local 1 // org.hibernate.Criteria criteria
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Lorg/hibernate/criterion/SubqueryExpression;
            0   20     1       criteria  Lorg/hibernate/Criteria;
            0   20     2  criteriaQuery  Lorg/hibernate/criterion/CriteriaQuery;
            1   20     3            buf  Ljava/lang/StringBuilder;
            6   20     4        factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            8   20     5      persister  Lorg/hibernate/persister/entity/OuterJoinLoadable;
           19   20     6         walker  Lorg/hibernate/loader/criteria/CriteriaJoinWalker;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
               Name  Flags
      criteria       
      criteriaQuery  

  private org.hibernate.engine.spi.SharedSessionContractImplementor deriveRootSession(org.hibernate.Criteria);
    descriptor: (Lorg/hibernate/Criteria;)Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.criterion.SubqueryExpression this
        start local 1 // org.hibernate.Criteria criteria
         0: .line 78
            aload 1 /* criteria */
            instanceof org.hibernate.internal.CriteriaImpl
            ifeq 2
         1: .line 79
            aload 1 /* criteria */
            checkcast org.hibernate.internal.CriteriaImpl
            invokevirtual org.hibernate.internal.CriteriaImpl.getSession:()Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            areturn
         2: .line 81
      StackMap locals:
      StackMap stack:
            aload 1 /* criteria */
            instanceof org.hibernate.internal.CriteriaImpl$Subcriteria
            ifeq 4
         3: .line 82
            aload 0 /* this */
            aload 1 /* criteria */
            checkcast org.hibernate.internal.CriteriaImpl$Subcriteria
            invokevirtual org.hibernate.internal.CriteriaImpl$Subcriteria.getParent:()Lorg/hibernate/Criteria;
            invokevirtual org.hibernate.criterion.SubqueryExpression.deriveRootSession:(Lorg/hibernate/Criteria;)Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            areturn
         4: .line 87
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.hibernate.Criteria criteria
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/hibernate/criterion/SubqueryExpression;
            0    5     1  criteria  Lorg/hibernate/Criteria;
    MethodParameters:
          Name  Flags
      criteria  

  public org.hibernate.engine.spi.TypedValue[] getTypedValues(org.hibernate.Criteria, org.hibernate.criterion.CriteriaQuery);
    descriptor: (Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)[Lorg/hibernate/engine/spi/TypedValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=3
        start local 0 // org.hibernate.criterion.SubqueryExpression this
        start local 1 // org.hibernate.Criteria criteria
        start local 2 // org.hibernate.criterion.CriteriaQuery criteriaQuery
         0: .line 95
            aload 2 /* criteriaQuery */
            invokeinterface org.hibernate.criterion.CriteriaQuery.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            astore 3 /* factory */
        start local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         1: .line 96
            aload 0 /* this */
            aload 2 /* criteriaQuery */
            aload 3 /* factory */
            invokevirtual org.hibernate.criterion.SubqueryExpression.createAndSetInnerQuery:(Lorg/hibernate/criterion/CriteriaQuery;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
         2: .line 98
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.params:Lorg/hibernate/engine/spi/QueryParameters;
            invokevirtual org.hibernate.engine.spi.QueryParameters.getPositionalParameterTypes:()[Lorg/hibernate/type/Type;
            astore 4 /* ppTypes */
        start local 4 // org.hibernate.type.Type[] ppTypes
         3: .line 99
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.params:Lorg/hibernate/engine/spi/QueryParameters;
            invokevirtual org.hibernate.engine.spi.QueryParameters.getPositionalParameterValues:()[Ljava/lang/Object;
            astore 5 /* ppValues */
        start local 5 // java.lang.Object[] ppValues
         4: .line 100
            aload 4 /* ppTypes */
            arraylength
            anewarray org.hibernate.engine.spi.TypedValue
            astore 6 /* tv */
        start local 6 // org.hibernate.engine.spi.TypedValue[] tv
         5: .line 101
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: goto 9
         7: .line 102
      StackMap locals: org.hibernate.criterion.SubqueryExpression org.hibernate.Criteria org.hibernate.criterion.CriteriaQuery org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.type.Type[] java.lang.Object[] org.hibernate.engine.spi.TypedValue[] int
      StackMap stack:
            aload 6 /* tv */
            iload 7 /* i */
            new org.hibernate.engine.spi.TypedValue
            dup
            aload 4 /* ppTypes */
            iload 7 /* i */
            aaload
            aload 5 /* ppValues */
            iload 7 /* i */
            aaload
            invokespecial org.hibernate.engine.spi.TypedValue.<init>:(Lorg/hibernate/type/Type;Ljava/lang/Object;)V
            aastore
         8: .line 101
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 7 /* i */
            aload 4 /* ppTypes */
            arraylength
            if_icmplt 7
        end local 7 // int i
        10: .line 104
            aload 6 /* tv */
            areturn
        end local 6 // org.hibernate.engine.spi.TypedValue[] tv
        end local 5 // java.lang.Object[] ppValues
        end local 4 // org.hibernate.type.Type[] ppTypes
        end local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 2 // org.hibernate.criterion.CriteriaQuery criteriaQuery
        end local 1 // org.hibernate.Criteria criteria
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/hibernate/criterion/SubqueryExpression;
            0   11     1       criteria  Lorg/hibernate/Criteria;
            0   11     2  criteriaQuery  Lorg/hibernate/criterion/CriteriaQuery;
            1   11     3        factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            3   11     4        ppTypes  [Lorg/hibernate/type/Type;
            4   11     5       ppValues  [Ljava/lang/Object;
            5   11     6             tv  [Lorg/hibernate/engine/spi/TypedValue;
            6   10     7              i  I
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
               Name  Flags
      criteria       
      criteriaQuery  

  private void createAndSetInnerQuery(org.hibernate.criterion.CriteriaQuery, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/criterion/CriteriaQuery;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // org.hibernate.criterion.SubqueryExpression this
        start local 1 // org.hibernate.criterion.CriteriaQuery criteriaQuery
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 114
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
            ifnonnull 14
         1: .line 119
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getAlias:()Ljava/lang/String;
            ifnonnull 4
         2: .line 120
            aload 1 /* criteriaQuery */
            invokeinterface org.hibernate.criterion.CriteriaQuery.generateSQLAlias:()Ljava/lang/String;
            astore 3 /* alias */
        start local 3 // java.lang.String alias
         3: .line 121
            goto 5
        end local 3 // java.lang.String alias
         4: .line 123
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getAlias:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* alias */
        start local 3 // java.lang.String alias
         5: .line 126
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            new org.hibernate.loader.criteria.CriteriaQueryTranslator
            dup
         6: .line 127
            aload 2 /* factory */
         7: .line 128
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
         8: .line 129
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.criteriaImpl:Lorg/hibernate/internal/CriteriaImpl;
            invokevirtual org.hibernate.internal.CriteriaImpl.getEntityOrClassName:()Ljava/lang/String;
         9: .line 130
            aload 3 /* alias */
        10: .line 131
            aload 1 /* criteriaQuery */
            invokespecial org.hibernate.loader.criteria.CriteriaQueryTranslator.<init>:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/internal/CriteriaImpl;Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/criterion/CriteriaQuery;)V
        11: .line 126
            putfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
        12: .line 134
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
            invokevirtual org.hibernate.loader.criteria.CriteriaQueryTranslator.getQueryParameters:()Lorg/hibernate/engine/spi/QueryParameters;
            putfield org.hibernate.criterion.SubqueryExpression.params:Lorg/hibernate/engine/spi/QueryParameters;
        13: .line 135
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.criterion.SubqueryExpression.innerQuery:Lorg/hibernate/loader/criteria/CriteriaQueryTranslator;
            invokevirtual org.hibernate.loader.criteria.CriteriaQueryTranslator.getProjectedTypes:()[Lorg/hibernate/type/Type;
            putfield org.hibernate.criterion.SubqueryExpression.types:[Lorg/hibernate/type/Type;
        end local 3 // java.lang.String alias
        14: .line 137
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // org.hibernate.criterion.CriteriaQuery criteriaQuery
        end local 0 // org.hibernate.criterion.SubqueryExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lorg/hibernate/criterion/SubqueryExpression;
            0   15     1  criteriaQuery  Lorg/hibernate/criterion/CriteriaQuery;
            0   15     2        factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            3    4     3          alias  Ljava/lang/String;
            5   14     3          alias  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      criteriaQuery  
      factory        
}
SourceFile: "SubqueryExpression.java"
InnerClasses:
  public final Subcriteria = org.hibernate.internal.CriteriaImpl$Subcriteria of org.hibernate.internal.CriteriaImpl