#include <iostream>
using namespace std;
template<typename T>
struct Test
{
T t;
Test(const T &t_) : t(t_) {}
};
Test<int> foo()
{
return 3;
}
int main() {
auto res = foo();
cout<<"foo returns "<<res.t<<"\n";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8dHlwZW5hbWUgVD4Kc3RydWN0IFRlc3QKewoJVCAgICB0OwoJVGVzdChjb25zdCBUICZ0XykgOiB0KHRfKSB7fQp9OwoKVGVzdDxpbnQ+IGZvbygpCnsKCXJldHVybiAzOwp9CgoKaW50IG1haW4oKSB7CgkKCWF1dG8gcmVzID0gZm9vKCk7Cgljb3V0PDwiZm9vIHJldHVybnMgIjw8cmVzLnQ8PCJcbiI7CglyZXR1cm4gMDsKfQ==