Problem 2 completion