more altPredicate work - will eventually replace Predicate