cs504 lecture 25