Finish exercise 23, but I still have a lot do not understand.