Use function precondition