problem 46
problem 46