going to try something slightly different
started by changing the Operator class