added predicates and fixes