public List unique()
{
Hashtable dups = new Hashtable(m_size*3);
List acc = new List(m_of, m_size);
bool hasNull = false;
for (int i=0; i<m_size; i++)
{
object v = m_values[i];
if (v == null && !hasNull)
{
hasNull = true;
acc.add(v);
}
else if (v != null && dups[v] == null)
{
dups[v] = this;
acc.add(v);
}
}
return acc;
}