reorder predicates for better readability