/* * Copyright (c) 1995-2007 Steve Roome * * You can use or reuse parts of this code provided that you keep * this copyright notice with the source code and if you publish * a product using any part of this work then you must state that * clearly in the documentation for your software. * */