fix hashcode conflict