#include <iostream>
using namespace std;
struct A {
A() { std::cout << "A()" << std::endl; }
A(int i) { std::cout << i << std::endl; }
};
struct B : virtual A {
B() : A(42) {}
};
struct C : public B {
C() : B() {}
};
int main() {
C c;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IEEgewogQSgpIHsgc3RkOjpjb3V0IDw8ICJBKCkiIDw8IHN0ZDo6ZW5kbDsgfQogQShpbnQgaSkgeyBzdGQ6OmNvdXQgPDwgaSA8PCBzdGQ6OmVuZGw7IH0KfTsKCnN0cnVjdCBCIDogdmlydHVhbCBBIHsKIEIoKSA6IEEoNDIpIHt9Cn07CgpzdHJ1Y3QgQyA6IHB1YmxpYyBCIHsKIEMoKSA6IEIoKSB7fQp9OwoKaW50IG1haW4oKSB7CglDIGM7CglyZXR1cm4gMDsKfQ==