Copyright(c) 2001 by David Kastrup
Any use of the code is permitted as long as this copyright
notice is preserved in the code.