implementation of Abstract Service