First version 21th exercise.