#include <iostream>
#include <typeinfo>
using namespace std;
template <typename Type> void test_template(Type x){
cout << x <<endl;
cout << typeid(Type).name() << endl;
}
int main()
{
test_template<int>(2);
test_template<double>(3.0);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZWluZm8+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnRlbXBsYXRlIDx0eXBlbmFtZSBUeXBlPiB2b2lkIHRlc3RfdGVtcGxhdGUoVHlwZSB4KXsKICAgIGNvdXQgPDwgeCA8PGVuZGw7CiAgICBjb3V0IDw8IHR5cGVpZChUeXBlKS5uYW1lKCkgPDwgZW5kbDsKfQppbnQgbWFpbigpCnsKICAgCiAgIHRlc3RfdGVtcGxhdGU8aW50PigyKTsKICAgdGVzdF90ZW1wbGF0ZTxkb3VibGU+KDMuMCk7CiAgIHJldHVybiAwOwp9