Model extending and refactoring.