refine save branch predicate