Completed Part 1 and 2