updated event factory and domain objects