Rearranged provider method