add
implementing op2