updated .equals