using System;

public class C
{
	static int Foo (int a, int b = 1, int c = 1)
	{
		return a;
	}
	
	int v;
	int this [int a, int b = 1, int c = 2] {
		set {
			v = a * 500 + b * 50 + c;
		}
		get {
			return v;
		}
	}

	public static int Main ()
	{
		if (Foo (c: 5, a: 10) != 10)
			return 1;

		if (Foo (a: 10) != 10)
			return 2;
		
		C c = new C ();
		c [a : 1, c : 2, b : 3] = 1;
		var res = c [1];
		if (res != 652)
			return 3;
		
		return 0;
	}
}