overrode the hashCode() method