wip: domain model refactoring