refactoring, details, etc.