using hashNode to handle collision