some typos and a walkthrough