fixed bug in negate