private static bool Equals(KeyString a, KeyString b)
{
bool ret = false;
if (object.ReferenceEquals(a, b)) {
ret = true;
} else if (object.ReferenceEquals(a, null)) {
ret = false;
} else if (object.ReferenceEquals(b, null)) {
ret = false;
} else {
int ct = a.m_Keys.Count;
if (ct == b.m_Keys.Count) {
ret = true;
for (int ix = 0; ix < ct; ++ix) {
if (a.m_Keys[ix] != b.m_Keys[ix]) {
ret = false;
break;
}
}
}
}
return ret;
}