add a precondition higher up