Implemented part 2b