CS 352, Homework 3, the solution of Matthew Henkler. Quoting Ameya Varde (TA, CS 352): "Matthew's code is both correct and readable and his coding style is clean and elegant. I would recommend students wishing to understand HW3 take a look at Matthew's code." Matthew's solution is available on mentor, in the account for the user cs352, in the directory Sample/PROJECT3