solve exercises 15.15 - 15.17