Solutions to Challenge 4.