Homework 4, due on Monday, April 29