use the predicate method