operators refactoring finished