refactored DataProvider