refactoring assets model