solve problem 28
prepare for the future