Move refactor Provider