split up: new function makeOperator; makeMutator now calls this first