intermediate version(add,sub,mul,dev)