hash table now handles collisions