#include <iostream>
using namespace std;
class Foo
{
public:
Foo()
{
cout << "Constructed!" << endl;
}
Foo(const Foo&)
{
cout << "Copied!" << endl;
}
Foo(Foo&&)
{
cout << "Movied!" << endl;
}
int data = 3;
};
Foo returns_a_foo()
{
Foo foo;
foo.data = 5;
return foo;
}
int main() {
// your code goes here
Foo foo = returns_a_foo();
cout << "Foo's data is " << foo.data << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgRm9vCnsKcHVibGljOgoJRm9vKCkKCXsKCQljb3V0IDw8ICJDb25zdHJ1Y3RlZCEiIDw8IGVuZGw7Cgl9CgkKCUZvbyhjb25zdCBGb28mKQoJewoJCWNvdXQgPDwgIkNvcGllZCEiIDw8IGVuZGw7Cgl9CgkKCUZvbyhGb28mJikKCXsKCQljb3V0IDw8ICJNb3ZpZWQhIiA8PCBlbmRsOwoJfQoJCglpbnQgZGF0YSA9IDM7Cn07CgpGb28gcmV0dXJuc19hX2ZvbygpCnsKCUZvbyBmb287Cglmb28uZGF0YSA9IDU7CglyZXR1cm4gZm9vOwp9CgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCUZvbyBmb28gPSByZXR1cm5zX2FfZm9vKCk7Cgljb3V0IDw8ICJGb28ncyBkYXRhIGlzICIgPDwgZm9vLmRhdGEgPDwgZW5kbDsKCXJldHVybiAwOwp9