public override bool Equals(object that)
{
if (that is List)
{
List x = (List)that;
if (!m_of.Equals(x.m_of)) return false;
if (m_size != x.m_size) return false;
for (int i=0; i<m_size; i++)
if (!OpUtil.compareEQ(m_values[i], x.m_values[i])) return false;
return true;
}
return false;
}