using System;
using System.Collections;
using System.Collections.Generic;
namespace Program
{
class Array<T> : IEnumerable
{
private Dictionary<uint, T> array = new Dictionary<uint, T>();
public T this[uint index]
{
get { return array[index]; }
set { array[index] = value; }
}
public IEnumerator GetEnumerator()
{
foreach(KeyValuePair<uint, T> keyValuePair in array)
{
yield return keyValuePair.Value;
}
}
}
class Program
{
static void Main()
{
Array<char> array = new Array<char>();
array[10] = 'X';
array[3] = '8';
foreach(char elem in array)
{
Console.WriteLine(elem);
}
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnM7CnVzaW5nIFN5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmljOwogCm5hbWVzcGFjZSBQcm9ncmFtCnsKICBjbGFzcyBBcnJheTxUPiA6IElFbnVtZXJhYmxlCiAgewogICAgcHJpdmF0ZSBEaWN0aW9uYXJ5PHVpbnQsIFQ+IGFycmF5ID0gbmV3IERpY3Rpb25hcnk8dWludCwgVD4oKTsKIAogICAgcHVibGljIFQgdGhpc1t1aW50IGluZGV4XQogICAgewogICAgICBnZXQgeyByZXR1cm4gYXJyYXlbaW5kZXhdOyAgfQogICAgICBzZXQgeyBhcnJheVtpbmRleF0gPSB2YWx1ZTsgfQogICAgfQogCiAgICBwdWJsaWMgSUVudW1lcmF0b3IgR2V0RW51bWVyYXRvcigpCiAgICB7CiAgICAgIGZvcmVhY2goS2V5VmFsdWVQYWlyPHVpbnQsIFQ+IGtleVZhbHVlUGFpciBpbiBhcnJheSkKICAgICAgewogICAgICAgIHlpZWxkIHJldHVybiBrZXlWYWx1ZVBhaXIuVmFsdWU7CiAgICAgIH0KICAgIH0KICB9CiAKICBjbGFzcyBQcm9ncmFtCiAgewogICAgc3RhdGljIHZvaWQgTWFpbigpCiAgICB7CiAgICAgIEFycmF5PGNoYXI+IGFycmF5ID0gbmV3IEFycmF5PGNoYXI+KCk7CiAgICAgIGFycmF5WzEwXSA9ICdYJzsKICAgICAgYXJyYXlbM10gPSAnOCc7CiAKICAgICAgZm9yZWFjaChjaGFyIGVsZW0gaW4gYXJyYXkpCiAgICAgIHsKICAgICAgICBDb25zb2xlLldyaXRlTGluZShlbGVtKTsKICAgICAgfQogICAgfQogIH0KfQ==