problem 2.1 done