some things from tom3q's repository...