lecture: lecture 23: finished