#include <iostream>
using namespace std;
class Base {
public :
void show() {
cout<<"This is base class"<<endl;
}
};
class Derived : public Base {
public:
virtual void show() {
cout<<"This is derived class"<<endl;
}
};
class D2 : public Derived {
public :
void show () {
cout<<"This is derived 2"<<endl;
}
};
int main() {
// your code goes here
Derived *obj = new D2();
obj->show();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKICAgIGNsYXNzICBCYXNlIHsKICAgICAgICBwdWJsaWMgOgogICAgICAgIHZvaWQgc2hvdygpIHsKICAgICAgICAgICAgY291dDw8IlRoaXMgaXMgYmFzZSBjbGFzcyI8PGVuZGw7CiAgICAgICAgfQogICAgfTsKICAgIGNsYXNzICBEZXJpdmVkIDogcHVibGljIEJhc2UgewogICAgICAgIHB1YmxpYzoKICAgICAgICB2aXJ0dWFsIHZvaWQgc2hvdygpIHsKICAgICAgICAgICAgY291dDw8IlRoaXMgaXMgZGVyaXZlZCBjbGFzcyI8PGVuZGw7CiAgICAgICAgfQogICAgfTsKCiAgICBjbGFzcyBEMiA6IHB1YmxpYyBEZXJpdmVkIHsKICAgICAgICBwdWJsaWMgOgogICAgICAgIHZvaWQgc2hvdyAoKSB7CiAgICAgICAgICAgIGNvdXQ8PCJUaGlzIGlzIGRlcml2ZWQgMiI8PGVuZGw7CiAgICAgICAgfQogICAgfTsKCiAgICBpbnQgbWFpbigpIHsKICAgICAgICAvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCiAgICAgICAgRGVyaXZlZCAqb2JqID0gbmV3IEQyKCk7CiAgICAgICAgb2JqLT5zaG93KCk7CiAgICAgICAgcmV0dXJuIDA7Cn0=