repository: added entity factory