update lecture 23