version with cheaper z3 check