small model refactor