working on domain objects