student version by Arthur F. Dalley, Douglas J. Gould.