Refactor providers and merge data