#include <iostream>
class top {
int a;
};
class left : public top {
int b;
};
class right : public top {
int c;
};
class bottom : public left, public right {
int d;
};
int main() {
bottom* b = new bottom ();
left* l = (left*) b;
right* r = (right*) b;
std::cout << l << " " << r << '\n';
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgdG9wIHsKICAgIGludCBhOwp9OwoKY2xhc3MgbGVmdCA6IHB1YmxpYyB0b3AgewogICAgaW50IGI7Cn07CgpjbGFzcyByaWdodCA6IHB1YmxpYyB0b3AgewogICAgaW50IGM7Cn07CgpjbGFzcyBib3R0b20gOiBwdWJsaWMgbGVmdCwgcHVibGljIHJpZ2h0IHsKICAgIGludCBkOwp9OwoKaW50IG1haW4oKSB7CgogICAgYm90dG9tKiBiID0gbmV3IGJvdHRvbSAoKTsKCiAgICBsZWZ0KiBsID0gKGxlZnQqKSBiOwogICAgcmlnaHQqIHIgPSAocmlnaHQqKSBiOwoKICAgIHN0ZDo6Y291dCA8PCBsIDw8ICIgIiA8PCByIDw8ICdcbic7CiAgICByZXR1cm4gMDsKfQ==