refine lecture 2c