using System.Runtime.CompilerServices;

interface IS
{
	[IndexerName ("Hello")]
	int this[int index] { get; }
}

class D : IS
{
	[IndexerName ("DUUU")]
	public int this[int index] {
		get {
			return 1;
		}
	}
}

static class X
{
	public static int Main ()
	{
		IS a = new D ();
		int r = a[1];

		D d = new D ();
		r = d[2];

		return 0;
	}
}