fix hashCode