CS331 Notes