Author: Barry L. Reece
Alternate names: REECE