Attempted solution to problem 1