working copy of exercise 43