Implemented Part 2