implement negator