adding factory service