updated through lecture 9