Refactor providers.