public virtual object this[int i] { get { return GetValue(i); } set { throw new NotSupportedException(); } }