more contact service refactor