- #include <iostream> 
- using namespace std; 
-   
- class A 
- { 
-     int i; 
- public: 
-     A() { i = 7; cout << 1 << f() << i << '/'; } 
-     A(int i) :i(i) { cout << 1 << f() << i << '/'; } 
-     char f() { return 'A'; } 
- }; 
- class B : public virtual A 
- { 
-     int i; 
- public: 
-     B(int i) : A(i), i(++i) { cout << 2 << i << '/'; } 
-     virtual char f() { return 'B'; } 
- }; 
- class C : public virtual A { 
- public: 
-     C(int i) : A(i) { cout << 3 << i << '/'; } 
-     virtual char f() { return 'C'; } 
- }; 
- class D :public A { 
- public: 
-     D(int i) { cout << 4 << i << '/'; } 
-     virtual char f() { return 'D'; } 
- }; 
- class E : public B, public C, public D { 
- public: 
-     E() : B(2), C(3), D(4) { cout << 5; } 
-     virtual char f() { return 'E'; } 
- }; 
- int main() 
- { 
-     E e; 
-     return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQQp7CiAgICBpbnQgaTsKcHVibGljOgogICAgQSgpIHsgaSA9IDc7IGNvdXQgPDwgMSA8PCBmKCkgPDwgaSA8PCAnLyc7IH0KICAgIEEoaW50IGkpIDppKGkpIHsgY291dCA8PCAxIDw8IGYoKSA8PCBpIDw8ICcvJzsgfQogICAgY2hhciBmKCkgeyByZXR1cm4gJ0EnOyB9Cn07CmNsYXNzIEIgOiBwdWJsaWMgdmlydHVhbCBBCnsKICAgIGludCBpOwpwdWJsaWM6CiAgICBCKGludCBpKSA6IEEoaSksIGkoKytpKSB7IGNvdXQgPDwgMiA8PCBpIDw8ICcvJzsgfQogICAgdmlydHVhbCBjaGFyIGYoKSB7IHJldHVybiAnQic7IH0KfTsKY2xhc3MgQyA6IHB1YmxpYyB2aXJ0dWFsIEEgewpwdWJsaWM6CiAgICBDKGludCBpKSA6IEEoaSkgeyBjb3V0IDw8IDMgPDwgaSA8PCAnLyc7IH0KICAgIHZpcnR1YWwgY2hhciBmKCkgeyByZXR1cm4gJ0MnOyB9Cn07CmNsYXNzIEQgOnB1YmxpYyBBIHsKcHVibGljOgogICAgRChpbnQgaSkgeyBjb3V0IDw8IDQgPDwgaSA8PCAnLyc7IH0KICAgIHZpcnR1YWwgY2hhciBmKCkgeyByZXR1cm4gJ0QnOyB9Cn07CmNsYXNzIEUgOiBwdWJsaWMgQiwgcHVibGljIEMsIHB1YmxpYyBEIHsKcHVibGljOgogICAgRSgpIDogQigyKSwgQygzKSwgRCg0KSB7IGNvdXQgPDwgNTsgfQogICAgdmlydHVhbCBjaGFyIGYoKSB7IHJldHVybiAnRSc7IH0KfTsKaW50IG1haW4oKQp7CiAgICBFIGU7CiAgICByZXR1cm4gMDsKfQ==