add some enhancements