enhancements and bug fixes