Hasker's CS 2400 Notes