fixed equals bug