mapper: mapper uses entity factory