finished problem 2.3