#include <iostream>
using namespace std;
class Base
{
protected :
int x{ 0 } ;
} ;
class DerivedClass1 : public Base
{
void test( ) {
std:: cout << x<< std:: endl ;
}
private :
using Base:: x ;
} ;
class DerivedClass2 : public DerivedClass1
{
public :
int getX( ) const
{
return x;
}
} ;
int main( )
{
DerivedClass2 d2{ } ;
int x{ d2.getX ( ) } ;
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQmFzZQp7CnByb3RlY3RlZDoKICAgIGludCB4eyAwIH07Cn07CgpjbGFzcyBEZXJpdmVkQ2xhc3MxIDogcHVibGljIEJhc2UKewoJdm9pZCB0ZXN0KCkgewoJCXN0ZDo6Y291dDw8eDw8c3RkOjplbmRsOyAKCX0KcHJpdmF0ZToKCXVzaW5nIEJhc2U6Ong7IAoJCn07CgpjbGFzcyBEZXJpdmVkQ2xhc3MyIDogcHVibGljIERlcml2ZWRDbGFzczEKewpwdWJsaWM6CiAgICBpbnQgZ2V0WCgpIGNvbnN0CiAgICB7CiAgICAgICAgcmV0dXJuIHg7CiAgICB9Cn07CgppbnQgbWFpbigpCnsKICAgIERlcml2ZWRDbGFzczIgZDJ7fTsKICAgIGludCB4eyBkMi5nZXRYKCkgfTsKICAgIHJldHVybiAwOwp9Cgo=