updated part 3 4