class X {
	public:
		virtual void f1() = 0;
		virtual void f2() = 0;
};

class Y : public X {
	public:
		virtual void f1();
};


// Now which of these two declarations are valid

int main () {
	X x1;
	Y y1;
}
	
Click here for the answers