exercise 2.82 apply-generic w/ multiple args