Course Notes for the University of Waterloo