exercise 45 complete(ish)