finished part 1,2,3 of ex4