#5 minor refactoring