added negative operator