some typos corrected and TODO007 and TODO008 created