Copyright (C) 2005 by Arthur Cropley.