#include <iostream>
#include <typeinfo>
template <class T>
void foo(T value)
{
std::cout << "type-name = " << typeid(T).name() << "\n";
std::cout << "value = " << value << "\n\n";
}
int main()
{
char c = 66;
unsigned char uc = 66;
signed char sc = 66;
foo(c);
foo(uc);
foo(sc);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZWluZm8+Cgp0ZW1wbGF0ZSA8Y2xhc3MgVD4Kdm9pZCBmb28oVCB2YWx1ZSkKewogICAgc3RkOjpjb3V0IDw8ICJ0eXBlLW5hbWUgPSAiIDw8IHR5cGVpZChUKS5uYW1lKCkgPDwgIlxuIjsKICAgIHN0ZDo6Y291dCA8PCAidmFsdWUgPSAiIDw8IHZhbHVlIDw8ICJcblxuIjsKfQoKaW50IG1haW4oKQp7CiAgICBjaGFyIGMgPSA2NjsKICAgIHVuc2lnbmVkIGNoYXIgdWMgPSA2NjsKICAgIHNpZ25lZCBjaGFyIHNjID0gNjY7CgogICAgZm9vKGMpOwogICAgZm9vKHVjKTsKICAgIGZvbyhzYyk7Cn0K