My work for UWO's cs3319 course.