UPDATED TPS6e 7.2 Exercise 43