#include <iostream>
using namespace std;

class A
{
public:
	void print() const { cout << "A" << endl; }
};

class B : public A
{
public:
	void print() const { cout << "B" << endl; }
};

class C
{
public:
	virtual void print() const { cout << "C" << endl; }
};

class D : public C
{
public:
	void print() const { cout << "D" << endl; }
};


int main() {
	A* a = new B;
	a->print();
	
	C* c = new D;
	c->print();
	// your code goes here
	return 0;
}