set([u"foo", b"foo]) will error because the two kinds of string have the same hash, and this causes a comparison. Is that correct?