add precondition utilities