properly consider hash conflicts.