namespace test
{

	interface IIntf1
	{
		string GetType(int index);
	}
	
	interface IIntf2: IIntf1
	{
		bool IsDone();
	}
	
	class Impl: IIntf2
	{
		public string GetType(int index)
		{
			return "none";
		}
		
		public bool IsDone()
		{
			return true;
		}
	}

	class myclass
	{ 
	
	  public static void Main(string[] args)
	  {
	    IIntf1 intf = new Impl();
	    IIntf2 intf2 = intf as IIntf2;
	    if (intf2 != null) {
	    	string str = intf2.GetType(0);	    
	    }	  
	  }
	}
}