/*------------------- Test classes for smartwrappers ---------------------*/

interface A {
	attribute long value;
	string a();   // returns "a"
};

interface B : A {
	string b();   // returns "b"
};

interface C : A {
	string c();   // returns "c"
};

interface D : B, C {
	// returns the interface itself
	readonly attribute D self;

	string d();   // returns "d"

	// returns sum of both interface values
	long sum(A v1, A v2);  

	// dummy method
	void dummy();
};
