lecture.3 source code