finish chapter 15, require module