solution problem 12 added