public boolean hasNext() {
   return source.hasNext() && testingPipe.precondition(source.peekNext());
 }
 public Instance next() {
   // Make sure this is not an Instance we were supposed to skip.
   assert (testingPipe.precondition(source.peekNext()));
   return source.next();
 }