Added part 3 TODO Verify correctness