problem 23 init