hopefully problem 1 works, I have nothing to test it with...