private object GetAtIndex(int index) { var enumerator = GetEnumerator(); // TODO: make faster do not use enumerator var count = 0; while (enumerator.MoveNext()) { if (count == index) { return enumerator.Current; } count++; } return null; }