code: public Expression withAnd(Expression... and) {
          if (this.and == null) {
              setAnd(new java.util.ArrayList<Expression>(and.length));
          }
          for (Expression ele : and) {
              this.and.add(ele);
          }
          return this;
      }
docs: <p>
  Return results that match both <code>Dimension</code> objects.
  </p>
  <p>
  <b>NOTE:</b> This method appends the values to the existing list (if any). Use
  {@link #setAnd(java.util.Collection)} or {@link #withAnd(java.util.Collection)} if you want to override the
  existing values.
  </p>
  
  @param and
  Return results that match both <code>Dimension</code> objects.
  @return Returns a reference to this object so that method calls can be chained together.