Services refactor