Refactor. Split domain to domain and persist, again