updated lecture 3.R