predicate解决方案