added base service class