added some enhancements