Answer ex2.58 (in progress)