#include <iostream>
using namespace std;
class First
{
public:
virtual void Report() { cout << "First" << endl; }
};
class Second : public First
{
public:
virtual void Report() { cout << "Second" << endl; }
Second() {}
};
class Third : public Second
{
public:
Third() : Second() { Report(); }
virtual void Report() { cout << "Third" << endl; }
};
int main()
{
Third third;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgRmlyc3QKewpwdWJsaWM6CiAgICB2aXJ0dWFsIHZvaWQgUmVwb3J0KCkgeyBjb3V0IDw8ICJGaXJzdCIgPDwgZW5kbDsgfQp9OwoKY2xhc3MgU2Vjb25kIDogcHVibGljIEZpcnN0CnsKcHVibGljOgogICAgdmlydHVhbCB2b2lkIFJlcG9ydCgpIHsgY291dCA8PCAiU2Vjb25kIiA8PCBlbmRsOyB9CiAgICBTZWNvbmQoKSB7fQp9OwoKY2xhc3MgVGhpcmQgOiBwdWJsaWMgU2Vjb25kCnsKcHVibGljOgoJVGhpcmQoKSA6IFNlY29uZCgpIHsgUmVwb3J0KCk7IH0KICAgIHZpcnR1YWwgdm9pZCBSZXBvcnQoKSB7IGNvdXQgPDwgIlRoaXJkIiA8PCBlbmRsOyB9Cn07CgppbnQgbWFpbigpCnsKCVRoaXJkIHRoaXJkOwogICAgcmV0dXJuIDA7Cn0=