introduced a universal predicate builder