working part 3.