public boolean hasNext() {
   return source.hasNext() && testingPipe.precondition(source.peekNext());
 }
 public boolean hasNext() {
   return source.hasNext();
 }