CS301 Lecture 1-10