model refactoring
refactoring