Final? refactoring