Solutions to Introduction to Functional Programming using Haskell, 2nd ed.