copyright by Michael Demmel