public Queryable<T> takeWhileN(FunctionExpression<Predicate2<T, Integer>> predicate) {
   return factory.takeWhileN(getThis(), predicate);
 }