solve exercises 16.25 - 16.27