finished 2 a & b