refactor product operation transformer