#include <iostream>
using namespace std;
class Foo
{
public:
virtual ~Foo() { cout << "Foo Destroyed" << endl; }
};
class Bar : public Foo
{
public:
~Bar() { cout << "Bar Destroyed" << endl; }
};
class Baz : public Bar
{
public:
~Baz() { cout << "Baz Destroyed" << endl; }
};
int main() {
Foo* c = new Baz();
delete c;
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgRm9vCnsKcHVibGljOgoJdmlydHVhbCB+Rm9vKCkgeyBjb3V0IDw8ICJGb28gRGVzdHJveWVkIiA8PCBlbmRsOyB9Cn07CgpjbGFzcyBCYXIgOiBwdWJsaWMgRm9vCnsKcHVibGljOgoJfkJhcigpIHsgY291dCA8PCAiQmFyIERlc3Ryb3llZCIgPDwgZW5kbDsgfQp9OwoKY2xhc3MgQmF6IDogcHVibGljIEJhcgp7CnB1YmxpYzoKCX5CYXooKSB7IGNvdXQgPDwgIkJheiBEZXN0cm95ZWQiIDw8IGVuZGw7IH0KfTsKCmludCBtYWluKCkgewoJRm9vKiBjID0gbmV3IEJheigpOwoJZGVsZXRlIGM7CgkKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXJldHVybiAwOwp9