unique keys from NativeMultiHashMap?

This thread finally helped…

var (keys, length) = hash_map.GetUniqueKeyArray(Allocator.Temp);
            for (int i = 0; i < length; i++)
            {
                var key = keys[i];
                // get items by key
            }

This produces what I expect… the list of unque hashes I put in.

What I don’t understand… is what is coming out of GetKeyArray(), because if I iterate through everything returned and stuff that into a hashtable, it has way more unique entries than the above returns. What is in the GetKeyArray() data that makes the entries non-unqiue?