public StreamingQueryable <T> Where(Expression <Func <T, bool> > predicate) { return(new StreamingQueryable <T>(data.filter(predicate.Compile()), agent)); }