service implementation updated