Spring 2014 Waterloo CS240 Notes