using System;

interface Iface {
	int A ();
}

class Implementor : Iface {
	public int A () {
		return 1;
	}
}

struct StructImplementor : Iface {
	public int A () {
		return 2;
	}
}
class Run {

	public static int Main ()
	{
		Iface iface;
		Implementor i = new Implementor ();

		iface = i;
		if (iface.A () != 1)
			return 1;

		StructImplementor s = new StructImplementor ();
		Iface xiface = (Iface) s;
		if (xiface.A () != 2)
			return 2;
		
		return 0;
	}
}