public override void RemoveAt(int index)
{
VerifyStateChanges();
if (index < 0 || index > m_InnerCount)
{
ThrowNewArgumentOutOfRangeException ("index", index,
"Index must be >= 0 and <= Count.");
}
m_InnerArrayList.RemoveAt(m_InnerIndex + index);
m_InnerCount--;
m_InnerStateChanges = m_InnerArrayList._version;
}