#include <iostream>
using namespace std;
template <typename T>
struct foo {
T bar;
};
template <typename T>
foo<T> func(T arg) {
return { arg };
}
int main() {
cout << func(5).bar << endl
<< func(213.7).bar << endl
<< func("papa").bar << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CnN0cnVjdCBmb28gewoJVCBiYXI7Cn07Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KZm9vPFQ+IGZ1bmMoVCBhcmcpIHsKCXJldHVybiB7IGFyZyB9Owp9CgppbnQgbWFpbigpIHsKCWNvdXQgPDwgZnVuYyg1KS5iYXIgPDwgZW5kbAoJCSA8PCBmdW5jKDIxMy43KS5iYXIgPDwgZW5kbAoJCSA8PCBmdW5jKCJwYXBhIikuYmFyIDw8IGVuZGw7CglyZXR1cm4gMDsKfQ==