add pre and post conditions