moved singleton to base service