Author: david l. harrison and philippe fix