import csharp predicate getExpandedOperatorArgs(Expr e, Expr left, Expr right) { e = any(BinaryArithmeticOperation bo | bo.getLeftOperand() = left and bo.getRightOperand() = right ) or e = any(OperatorCall oc | oc.getArgument(0) = left and oc.getArgument(1) = right ) } from AssignOperation ao, AssignExpr ae, Expr op, Expr left, Expr right where ae = ao.getExpandedAssignment() and op = ae.getRValue() and getExpandedOperatorArgs(op, left, right) select ao, ae, ae.getLValue(), op, left, right