did a bit more refactoring