using System;
using System.Text;
using System.Linq;
using System.Collections.Generic;
using System.Reflection;
public class Program
{
public static void Main(string[] args)
{
string test = "ABC";
Type t = test.GetType();
var indexer = t.GetProperties()
.Where(p => p.GetIndexParameters().Length != 0)
.FirstOrDefault();
if (indexer != null)
{
object[] indexArgs = { 1 };
var secondChar = indexer.GetValue(test, indexArgs);
Console.Write(secondChar);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dDsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmljOwp1c2luZyBTeXN0ZW0uUmVmbGVjdGlvbjsKICAgICAgICAKcHVibGljIGNsYXNzIFByb2dyYW0KewpwdWJsaWMgc3RhdGljIHZvaWQgTWFpbihzdHJpbmdbXSBhcmdzKQp7CiAgICBzdHJpbmcgdGVzdCA9ICJBQkMiOwogICAgVHlwZSB0ID0gdGVzdC5HZXRUeXBlKCk7CiAgICB2YXIgaW5kZXhlciA9IHQuR2V0UHJvcGVydGllcygpCiAgICAgICAgLldoZXJlKHAgPT4gcC5HZXRJbmRleFBhcmFtZXRlcnMoKS5MZW5ndGggIT0gMCkKICAgICAgICAuRmlyc3RPckRlZmF1bHQoKTsKICAgIGlmIChpbmRleGVyICE9IG51bGwpCiAgICB7CiAgICAgICAgb2JqZWN0W10gaW5kZXhBcmdzID0geyAxIH07CiAgICAgICAgdmFyIHNlY29uZENoYXIgPSBpbmRleGVyLkdldFZhbHVlKHRlc3QsIGluZGV4QXJncyk7CiAgICAgICAgQ29uc29sZS5Xcml0ZShzZWNvbmRDaGFyKTsKICAgIH0KfQp9