more on generating contracts