refactoring around Operator
refactoring around Operator
refactoring around Operator