up to problem 10