refactor product sync new