refactoring, documentation..