finished 3 a & b