Chapter 15: Added constraints.