some typos and more comments