refactor EDS