#include <iostream>
using namespace std;
class Base1
{
public:
void print(const char *str){ cout << "base1 " << str << endl; }
};
class Base2
{
public:
void print(const char *str){ cout << "base2 " << str << endl; }
};
class Derived : public Base1, public Base2
{
public:
void print(const char *str);
};
void Derived::print(const char *str)
{
cout << "Derived " << str << endl;
Base1::print(str);
Base2::print(str);
}
int main(int argc, char *argv[])
{
Derived d;
d.print("hello");
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQmFzZTEKewpwdWJsaWM6CiAgICB2b2lkIHByaW50KGNvbnN0IGNoYXIgKnN0cil7IGNvdXQgPDwgImJhc2UxICIgPDwgc3RyIDw8IGVuZGw7IH0KfTsKCmNsYXNzIEJhc2UyCnsKcHVibGljOgogICAgdm9pZCBwcmludChjb25zdCBjaGFyICpzdHIpeyBjb3V0IDw8ICJiYXNlMiAiIDw8IHN0ciA8PCBlbmRsOyB9Cn07CgpjbGFzcyBEZXJpdmVkIDogcHVibGljIEJhc2UxLCBwdWJsaWMgQmFzZTIKewpwdWJsaWM6CiAgICB2b2lkIHByaW50KGNvbnN0IGNoYXIgKnN0cik7Cn07Cgp2b2lkIERlcml2ZWQ6OnByaW50KGNvbnN0IGNoYXIgKnN0cikKewogICAgY291dCA8PCAiRGVyaXZlZCAiIDw8IHN0ciA8PCBlbmRsOwogICAgQmFzZTE6OnByaW50KHN0cik7CiAgICBCYXNlMjo6cHJpbnQoc3RyKTsKfQoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKewogICAgRGVyaXZlZCBkOwogICAgZC5wcmludCgiaGVsbG8iKTsKCiAgICByZXR1cm4gMDsKfQ==