public class org.hibernate.query.criteria.internal.CriteriaSubqueryImpl<T> extends org.hibernate.query.criteria.internal.expression.ExpressionImpl<T> implements javax.persistence.criteria.Subquery<T>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.query.criteria.internal.CriteriaSubqueryImpl
  super_class: org.hibernate.query.criteria.internal.expression.ExpressionImpl
{
  private final javax.persistence.criteria.CommonAbstractCriteria parent;
    descriptor: Ljavax/persistence/criteria/CommonAbstractCriteria;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.query.criteria.internal.QueryStructure<T> queryStructure;
    descriptor: Lorg/hibernate/query/criteria/internal/QueryStructure;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/hibernate/query/criteria/internal/QueryStructure<TT;>;

  private javax.persistence.criteria.Expression<T> wrappedSelection;
    descriptor: Ljavax/persistence/criteria/Expression;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljavax/persistence/criteria/Expression<TT;>;

  public void <init>(org.hibernate.query.criteria.internal.CriteriaBuilderImpl, java.lang.Class<T>, javax.persistence.criteria.CommonAbstractCriteria);
    descriptor: (Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljava/lang/Class;Ljavax/persistence/criteria/CommonAbstractCriteria;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // org.hibernate.query.criteria.internal.CriteriaBuilderImpl criteriaBuilder
        start local 2 // java.lang.Class javaType
        start local 3 // javax.persistence.criteria.CommonAbstractCriteria parent
         0: .line 45
            aload 0 /* this */
            aload 1 /* criteriaBuilder */
            aload 2 /* javaType */
            invokespecial org.hibernate.query.criteria.internal.expression.ExpressionImpl.<init>:(Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljava/lang/Class;)V
         1: .line 46
            aload 0 /* this */
            aload 3 /* parent */
            putfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.parent:Ljavax/persistence/criteria/CommonAbstractCriteria;
         2: .line 47
            aload 0 /* this */
            new org.hibernate.query.criteria.internal.QueryStructure
            dup
            aload 0 /* this */
            aload 1 /* criteriaBuilder */
            invokespecial org.hibernate.query.criteria.internal.QueryStructure.<init>:(Ljavax/persistence/criteria/AbstractQuery;Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;)V
            putfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
         3: .line 48
            return
        end local 3 // javax.persistence.criteria.CommonAbstractCriteria parent
        end local 2 // java.lang.Class javaType
        end local 1 // org.hibernate.query.criteria.internal.CriteriaBuilderImpl criteriaBuilder
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    4     1  criteriaBuilder  Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            0    4     2         javaType  Ljava/lang/Class<TT;>;
            0    4     3           parent  Ljavax/persistence/criteria/CommonAbstractCriteria;
    Signature: (Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljava/lang/Class<TT;>;Ljavax/persistence/criteria/CommonAbstractCriteria;)V
    MethodParameters:
                 Name  Flags
      criteriaBuilder  
      javaType         
      parent           

  public javax.persistence.criteria.AbstractQuery<?> getParent();
    descriptor: ()Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 52
            ldc Ljavax/persistence/criteria/AbstractQuery;
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.parent:Ljavax/persistence/criteria/CommonAbstractCriteria;
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 53
            new java.lang.IllegalStateException
            dup
            ldc "Cannot call getParent on update/delete criterias"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 55
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.parent:Ljavax/persistence/criteria/CommonAbstractCriteria;
            checkcast javax.persistence.criteria.AbstractQuery
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljavax/persistence/criteria/AbstractQuery<*>;

  public javax.persistence.criteria.CommonAbstractCriteria getContainingQuery();
    descriptor: ()Ljavax/persistence/criteria/CommonAbstractCriteria;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 60
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.parent:Ljavax/persistence/criteria/CommonAbstractCriteria;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;

  public void registerParameters(org.hibernate.query.criteria.internal.ParameterRegistry);
    descriptor: (Lorg/hibernate/query/criteria/internal/ParameterRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // org.hibernate.query.criteria.internal.ParameterRegistry registry
         0: .line 65
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getParameters:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: org.hibernate.query.criteria.internal.CriteriaSubqueryImpl org.hibernate.query.criteria.internal.ParameterRegistry top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.persistence.criteria.ParameterExpression
            astore 2 /* param */
        start local 2 // javax.persistence.criteria.ParameterExpression param
         2: .line 66
            aload 1 /* registry */
            aload 2 /* param */
            invokeinterface org.hibernate.query.criteria.internal.ParameterRegistry.registerParameter:(Ljavax/persistence/criteria/ParameterExpression;)V
        end local 2 // javax.persistence.criteria.ParameterExpression param
         3: .line 65
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 68
            return
        end local 1 // org.hibernate.query.criteria.internal.ParameterRegistry registry
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    5     1  registry  Lorg/hibernate/query/criteria/internal/ParameterRegistry;
            2    3     2     param  Ljavax/persistence/criteria/ParameterExpression;
    MethodParameters:
          Name  Flags
      registry  

  public java.lang.Class<T> getResultType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 72
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.getJavaType:()Ljava/lang/Class;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljava/lang/Class<TT;>;

  public java.util.Set<javax.persistence.criteria.Root<?>> getRoots();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 80
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getRoots:()Ljava/util/Set;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljava/util/Set<Ljavax/persistence/criteria/Root<*>;>;

  public <X> javax.persistence.criteria.Root<X> from(javax.persistence.metamodel.EntityType<X>);
    descriptor: (Ljavax/persistence/metamodel/EntityType;)Ljavax/persistence/criteria/Root;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.metamodel.EntityType entityType
         0: .line 85
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* entityType */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.from:(Ljavax/persistence/metamodel/EntityType;)Ljavax/persistence/criteria/Root;
            areturn
        end local 1 // javax.persistence.metamodel.EntityType entityType
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    1     1  entityType  Ljavax/persistence/metamodel/EntityType<TX;>;
    Signature: <X:Ljava/lang/Object;>(Ljavax/persistence/metamodel/EntityType<TX;>;)Ljavax/persistence/criteria/Root<TX;>;
    MethodParameters:
            Name  Flags
      entityType  

  public <X> javax.persistence.criteria.Root<X> from(java.lang.Class<X>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/criteria/Root;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // java.lang.Class entityClass
         0: .line 90
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* entityClass */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.from:(Ljava/lang/Class;)Ljavax/persistence/criteria/Root;
            areturn
        end local 1 // java.lang.Class entityClass
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    1     1  entityClass  Ljava/lang/Class<TX;>;
    Signature: <X:Ljava/lang/Object;>(Ljava/lang/Class<TX;>;)Ljavax/persistence/criteria/Root<TX;>;
    MethodParameters:
             Name  Flags
      entityClass  

  public javax.persistence.criteria.Subquery<T> distinct(boolean);
    descriptor: (Z)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // boolean applyDistinction
         0: .line 98
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            iload 1 /* applyDistinction */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setDistinct:(Z)V
         1: .line 99
            aload 0 /* this */
            areturn
        end local 1 // boolean applyDistinction
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  applyDistinction  Z
    Signature: (Z)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
                  Name  Flags
      applyDistinction  

  public boolean isDistinct();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 104
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.isDistinct:()Z
            ireturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;

  public javax.persistence.criteria.Expression<T> getSelection();
    descriptor: ()Ljavax/persistence/criteria/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 111
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.wrappedSelection:Ljavax/persistence/criteria/Expression;
            ifnonnull 4
         1: .line 112
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getSelection:()Ljavax/persistence/criteria/Selection;
            ifnonnull 3
         2: .line 113
            aconst_null
            areturn
         3: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.hibernate.query.criteria.internal.CriteriaSubqueryImpl$SubquerySelection
            dup
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getSelection:()Ljavax/persistence/criteria/Selection;
            checkcast org.hibernate.query.criteria.internal.expression.ExpressionImpl
            aload 0 /* this */
            invokespecial org.hibernate.query.criteria.internal.CriteriaSubqueryImpl$SubquerySelection.<init>:(Lorg/hibernate/query/criteria/internal/expression/ExpressionImpl;Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)V
            putfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.wrappedSelection:Ljavax/persistence/criteria/Expression;
         4: .line 117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.wrappedSelection:Ljavax/persistence/criteria/Expression;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljavax/persistence/criteria/Expression<TT;>;

  public javax.persistence.criteria.Subquery<T> select(javax.persistence.criteria.Expression<T>);
    descriptor: (Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Expression expression
         0: .line 122
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* expression */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setSelection:(Ljavax/persistence/criteria/Selection;)V
         1: .line 123
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Expression expression
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  expression  Ljavax/persistence/criteria/Expression<TT;>;
    Signature: (Ljavax/persistence/criteria/Expression<TT;>;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
            Name  Flags
      expression  

  public javax.persistence.criteria.Predicate getRestriction();
    descriptor: ()Ljavax/persistence/criteria/Predicate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 146
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getRestriction:()Ljavax/persistence/criteria/Predicate;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;

  public javax.persistence.criteria.Subquery<T> where(javax.persistence.criteria.Expression<java.lang.Boolean>);
    descriptor: (Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Expression expression
         0: .line 151
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.criteriaBuilder:()Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            aload 1 /* expression */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaBuilderImpl.wrap:(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Predicate;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setRestriction:(Ljavax/persistence/criteria/Predicate;)V
         1: .line 152
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Expression expression
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  expression  Ljavax/persistence/criteria/Expression<Ljava/lang/Boolean;>;
    Signature: (Ljavax/persistence/criteria/Expression<Ljava/lang/Boolean;>;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
            Name  Flags
      expression  

  public javax.persistence.criteria.Subquery<T> where(javax.persistence.criteria.Predicate[]);
    descriptor: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Predicate[] predicates
         0: .line 158
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.criteriaBuilder:()Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            aload 1 /* predicates */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaBuilderImpl.and:([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Predicate;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setRestriction:(Ljavax/persistence/criteria/Predicate;)V
         1: .line 159
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Predicate[] predicates
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  predicates  [Ljavax/persistence/criteria/Predicate;
    Signature: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
            Name  Flags
      predicates  

  public java.util.List<javax.persistence.criteria.Expression<?>> getGroupList();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 168
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getGroupings:()Ljava/util/List;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljava/util/List<Ljavax/persistence/criteria/Expression<*>;>;

  public javax.persistence.criteria.Subquery<T> groupBy(javax.persistence.criteria.Expression<?>[]);
    descriptor: ([Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Expression[] groupings
         0: .line 173
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* groupings */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setGroupings:([Ljavax/persistence/criteria/Expression;)V
         1: .line 174
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Expression[] groupings
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  groupings  [Ljavax/persistence/criteria/Expression;
    Signature: ([Ljavax/persistence/criteria/Expression<*>;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
           Name  Flags
      groupings  

  public javax.persistence.criteria.Subquery<T> groupBy(java.util.List<javax.persistence.criteria.Expression<?>>);
    descriptor: (Ljava/util/List;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // java.util.List groupings
         0: .line 179
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* groupings */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setGroupings:(Ljava/util/List;)V
         1: .line 180
            aload 0 /* this */
            areturn
        end local 1 // java.util.List groupings
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  groupings  Ljava/util/List<Ljavax/persistence/criteria/Expression<*>;>;
    Signature: (Ljava/util/List<Ljavax/persistence/criteria/Expression<*>;>;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
           Name  Flags
      groupings  

  public javax.persistence.criteria.Predicate getGroupRestriction();
    descriptor: ()Ljavax/persistence/criteria/Predicate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 185
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.getHaving:()Ljavax/persistence/criteria/Predicate;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;

  public javax.persistence.criteria.Subquery<T> having(javax.persistence.criteria.Expression<java.lang.Boolean>);
    descriptor: (Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Expression expression
         0: .line 190
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.criteriaBuilder:()Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            aload 1 /* expression */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaBuilderImpl.wrap:(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Predicate;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setHaving:(Ljavax/persistence/criteria/Predicate;)V
         1: .line 191
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Expression expression
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  expression  Ljavax/persistence/criteria/Expression<Ljava/lang/Boolean;>;
    Signature: (Ljavax/persistence/criteria/Expression<Ljava/lang/Boolean;>;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
            Name  Flags
      expression  

  public javax.persistence.criteria.Subquery<T> having(javax.persistence.criteria.Predicate[]);
    descriptor: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Predicate[] predicates
         0: .line 196
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.criteriaBuilder:()Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            aload 1 /* predicates */
            invokevirtual org.hibernate.query.criteria.internal.CriteriaBuilderImpl.and:([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Predicate;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.setHaving:(Ljavax/persistence/criteria/Predicate;)V
         1: .line 197
            aload 0 /* this */
            areturn
        end local 1 // javax.persistence.criteria.Predicate[] predicates
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    2     1  predicates  [Ljavax/persistence/criteria/Predicate;
    Signature: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery<TT;>;
    MethodParameters:
            Name  Flags
      predicates  

  public java.util.Set<javax.persistence.criteria.Join<?, ?>> getCorrelatedJoins();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
         0: .line 205
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.collectCorrelatedJoins:()Ljava/util/Set;
            areturn
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
    Signature: ()Ljava/util/Set<Ljavax/persistence/criteria/Join<**>;>;

  public <Y> javax.persistence.criteria.Root<Y> correlate(javax.persistence.criteria.Root<Y>);
    descriptor: (Ljavax/persistence/criteria/Root;)Ljavax/persistence/criteria/Root;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Root source
         0: .line 210
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.path.RootImpl
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.path.RootImpl.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/path/RootImpl;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.path.RootImpl correlation
         1: .line 211
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 212
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.path.RootImpl correlation
        end local 1 // javax.persistence.criteria.Root source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/Root<TY;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/path/RootImpl<TY;>;
    Signature: <Y:Ljava/lang/Object;>(Ljavax/persistence/criteria/Root<TY;>;)Ljavax/persistence/criteria/Root<TY;>;
    MethodParameters:
        Name  Flags
      source  

  public <X, Y> javax.persistence.criteria.Join<X, Y> correlate(javax.persistence.criteria.Join<X, Y>);
    descriptor: (Ljavax/persistence/criteria/Join;)Ljavax/persistence/criteria/Join;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.Join source
         0: .line 217
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.JoinImplementor
            aload 0 /* this */
            invokeinterface org.hibernate.query.criteria.internal.JoinImplementor.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/JoinImplementor;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.JoinImplementor correlation
         1: .line 218
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 219
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.JoinImplementor correlation
        end local 1 // javax.persistence.criteria.Join source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/Join<TX;TY;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/JoinImplementor<TX;TY;>;
    Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;>(Ljavax/persistence/criteria/Join<TX;TY;>;)Ljavax/persistence/criteria/Join<TX;TY;>;
    MethodParameters:
        Name  Flags
      source  

  public <X, Y> javax.persistence.criteria.CollectionJoin<X, Y> correlate(javax.persistence.criteria.CollectionJoin<X, Y>);
    descriptor: (Ljavax/persistence/criteria/CollectionJoin;)Ljavax/persistence/criteria/CollectionJoin;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.CollectionJoin source
         0: .line 224
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.CollectionJoinImplementor
            aload 0 /* this */
            invokeinterface org.hibernate.query.criteria.internal.CollectionJoinImplementor.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/CollectionJoinImplementor;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.CollectionJoinImplementor correlation
         1: .line 225
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 226
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.CollectionJoinImplementor correlation
        end local 1 // javax.persistence.criteria.CollectionJoin source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/CollectionJoin<TX;TY;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/CollectionJoinImplementor<TX;TY;>;
    Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;>(Ljavax/persistence/criteria/CollectionJoin<TX;TY;>;)Ljavax/persistence/criteria/CollectionJoin<TX;TY;>;
    MethodParameters:
        Name  Flags
      source  

  public <X, Y> javax.persistence.criteria.SetJoin<X, Y> correlate(javax.persistence.criteria.SetJoin<X, Y>);
    descriptor: (Ljavax/persistence/criteria/SetJoin;)Ljavax/persistence/criteria/SetJoin;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.SetJoin source
         0: .line 231
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.SetJoinImplementor
            aload 0 /* this */
            invokeinterface org.hibernate.query.criteria.internal.SetJoinImplementor.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/SetJoinImplementor;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.SetJoinImplementor correlation
         1: .line 232
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 233
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.SetJoinImplementor correlation
        end local 1 // javax.persistence.criteria.SetJoin source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/SetJoin<TX;TY;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/SetJoinImplementor<TX;TY;>;
    Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;>(Ljavax/persistence/criteria/SetJoin<TX;TY;>;)Ljavax/persistence/criteria/SetJoin<TX;TY;>;
    MethodParameters:
        Name  Flags
      source  

  public <X, Y> javax.persistence.criteria.ListJoin<X, Y> correlate(javax.persistence.criteria.ListJoin<X, Y>);
    descriptor: (Ljavax/persistence/criteria/ListJoin;)Ljavax/persistence/criteria/ListJoin;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.ListJoin source
         0: .line 238
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.ListJoinImplementor
            aload 0 /* this */
            invokeinterface org.hibernate.query.criteria.internal.ListJoinImplementor.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/ListJoinImplementor;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.ListJoinImplementor correlation
         1: .line 239
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 240
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.ListJoinImplementor correlation
        end local 1 // javax.persistence.criteria.ListJoin source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/ListJoin<TX;TY;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/ListJoinImplementor<TX;TY;>;
    Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;>(Ljavax/persistence/criteria/ListJoin<TX;TY;>;)Ljavax/persistence/criteria/ListJoin<TX;TY;>;
    MethodParameters:
        Name  Flags
      source  

  public <X, K, V> javax.persistence.criteria.MapJoin<X, K, V> correlate(javax.persistence.criteria.MapJoin<X, K, V>);
    descriptor: (Ljavax/persistence/criteria/MapJoin;)Ljavax/persistence/criteria/MapJoin;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // javax.persistence.criteria.MapJoin source
         0: .line 245
            aload 1 /* source */
            checkcast org.hibernate.query.criteria.internal.MapJoinImplementor
            aload 0 /* this */
            invokeinterface org.hibernate.query.criteria.internal.MapJoinImplementor.correlateTo:(Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl;)Lorg/hibernate/query/criteria/internal/MapJoinImplementor;
            astore 2 /* correlation */
        start local 2 // org.hibernate.query.criteria.internal.MapJoinImplementor correlation
         1: .line 246
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* correlation */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.addCorrelationRoot:(Lorg/hibernate/query/criteria/internal/FromImplementor;)V
         2: .line 247
            aload 2 /* correlation */
            areturn
        end local 2 // org.hibernate.query.criteria.internal.MapJoinImplementor correlation
        end local 1 // javax.persistence.criteria.MapJoin source
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    3     1       source  Ljavax/persistence/criteria/MapJoin<TX;TK;TV;>;
            1    3     2  correlation  Lorg/hibernate/query/criteria/internal/MapJoinImplementor<TX;TK;TV;>;
    Signature: <X:Ljava/lang/Object;K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljavax/persistence/criteria/MapJoin<TX;TK;TV;>;)Ljavax/persistence/criteria/MapJoin<TX;TK;TV;>;
    MethodParameters:
        Name  Flags
      source  

  public <U> javax.persistence.criteria.Subquery<U> subquery(java.lang.Class<U>);
    descriptor: (Ljava/lang/Class;)Ljavax/persistence/criteria/Subquery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // java.lang.Class subqueryType
         0: .line 252
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 1 /* subqueryType */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.subquery:(Ljava/lang/Class;)Ljavax/persistence/criteria/Subquery;
            areturn
        end local 1 // java.lang.Class subqueryType
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    1     1  subqueryType  Ljava/lang/Class<TU;>;
    Signature: <U:Ljava/lang/Object;>(Ljava/lang/Class<TU;>;)Ljavax/persistence/criteria/Subquery<TU;>;
    MethodParameters:
              Name  Flags
      subqueryType  

  public java.lang.String render(org.hibernate.query.criteria.internal.compile.RenderingContext);
    descriptor: (Lorg/hibernate/query/criteria/internal/compile/RenderingContext;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
         0: .line 260
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 2 /* subqueryBuffer */
        start local 2 // java.lang.StringBuilder subqueryBuffer
         1: .line 261
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.queryStructure:Lorg/hibernate/query/criteria/internal/QueryStructure;
            aload 2 /* subqueryBuffer */
            aload 1 /* renderingContext */
            invokevirtual org.hibernate.query.criteria.internal.QueryStructure.render:(Ljava/lang/StringBuilder;Lorg/hibernate/query/criteria/internal/compile/RenderingContext;)V
         2: .line 262
            aload 2 /* subqueryBuffer */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 263
            aload 2 /* subqueryBuffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder subqueryBuffer
        end local 1 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    4     1  renderingContext  Lorg/hibernate/query/criteria/internal/compile/RenderingContext;
            1    4     2    subqueryBuffer  Ljava/lang/StringBuilder;
    MethodParameters:
                  Name  Flags
      renderingContext  

  public java.lang.String renderProjection(org.hibernate.query.criteria.internal.compile.RenderingContext);
    descriptor: (Lorg/hibernate/query/criteria/internal/compile/RenderingContext;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
        start local 1 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
         0: .line 268
            new java.lang.IllegalStateException
            dup
            ldc "Subquery cannot occur in select clause"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
        end local 0 // org.hibernate.query.criteria.internal.CriteriaSubqueryImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lorg/hibernate/query/criteria/internal/CriteriaSubqueryImpl<TT;>;
            0    1     1  renderingContext  Lorg/hibernate/query/criteria/internal/compile/RenderingContext;
    MethodParameters:
                  Name  Flags
      renderingContext  

  public javax.persistence.criteria.AbstractQuery groupBy(java.util.List);
    descriptor: (Ljava/util/List;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.groupBy:(Ljava/util/List;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery groupBy(javax.persistence.criteria.Expression[]);
    descriptor: ([Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.groupBy:([Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery distinct(boolean);
    descriptor: (Z)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.distinct:(Z)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.Selection getSelection();
    descriptor: ()Ljavax/persistence/criteria/Selection;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.getSelection:()Ljavax/persistence/criteria/Expression;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery where(javax.persistence.criteria.Predicate[]);
    descriptor: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.where:([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery where(javax.persistence.criteria.Expression);
    descriptor: (Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.where:(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery having(javax.persistence.criteria.Predicate[]);
    descriptor: ([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.having:([Ljavax/persistence/criteria/Predicate;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.persistence.criteria.AbstractQuery having(javax.persistence.criteria.Expression);
    descriptor: (Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/AbstractQuery;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.query.criteria.internal.CriteriaSubqueryImpl.having:(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Subquery;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <T:Ljava/lang/Object;>Lorg/hibernate/query/criteria/internal/expression/ExpressionImpl<TT;>;Ljavax/persistence/criteria/Subquery<TT;>;Ljava/io/Serializable;
SourceFile: "CriteriaSubqueryImpl.java"
NestMembers:
  org.hibernate.query.criteria.internal.CriteriaSubqueryImpl$SubquerySelection
InnerClasses:
  public SubquerySelection = org.hibernate.query.criteria.internal.CriteriaSubqueryImpl$SubquerySelection of org.hibernate.query.criteria.internal.CriteriaSubqueryImpl