pre/post conditions or any combination thereof