refactor clean factories