minor refactoring of new features