Copyright (C) duct projects All rights reserved.