#include <iostream>
#include <vector>
using namespace std;
class Out
{
class In
{
public:
int in = 5566;
};
public:
In XD() {
return In();
}
};
class Out2
{
class In2;
public:
In2 XDD();
};
class Out2::In2
{
public:
int in2 = 7788;
};
Out2::In2 Out2::XDD()
{
return Out2::In2();
}
auto Get()
{
class XD { public: int xd = 9999; };
return XD();
}
int main() {
//Case1
Out out;
auto in = out.XD();
cout << in.in << endl;
//Case2
Out2 out2;
auto in2 = out2.XDD();
cout << in2.in2 << endl;
//Case3
cout << Get().xd << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgT3V0CnsKICBjbGFzcyBJbgogIHsKICBwdWJsaWM6CiAgICBpbnQgaW4gPSA1NTY2OwogIH07CnB1YmxpYzoKICBJbiBYRCgpIHsKICAgIHJldHVybiBJbigpOwogIH0KfTsKCmNsYXNzIE91dDIKewogIGNsYXNzIEluMjsKcHVibGljOgogIEluMiBYREQoKTsKfTsKCmNsYXNzIE91dDI6OkluMgp7CnB1YmxpYzoKICBpbnQgaW4yID0gNzc4ODsKfTsKCk91dDI6OkluMiAgT3V0Mjo6WEREKCkKewogIHJldHVybiBPdXQyOjpJbjIoKTsKfQoKYXV0byBHZXQoKQp7CiAgY2xhc3MgWEQgeyBwdWJsaWM6IGludCB4ZCA9IDk5OTk7IH07CiAgcmV0dXJuIFhEKCk7Cn0KaW50IG1haW4oKSB7CgogIC8vQ2FzZTEKICBPdXQgb3V0OwogIGF1dG8gaW4gPSBvdXQuWEQoKTsKICBjb3V0IDw8IGluLmluIDw8IGVuZGw7CiAgLy9DYXNlMgogIE91dDIgb3V0MjsKICBhdXRvIGluMiA9IG91dDIuWEREKCk7CiAgY291dCA8PCBpbjIuaW4yIDw8IGVuZGw7CiAgLy9DYXNlMwogIGNvdXQgPDwgR2V0KCkueGQgPDwgZW5kbDsKCiAgcmV0dXJuIDA7Cn0=