copyright (c) 2006 liminale