+ minor refactoring