UPDATED TPS6e 1.2 Exercise 45