added missing service implementation