#include <iostream>
void f(unsigned char c) { std::cout << "f(unsigned char): " << (c >> 1) << std::endl; }
void f(signed char c) { std::cout << "f(signed char): " << (c >> 1) << std::endl; }
void f(char c) { std::cout << "f(char): " << (c >> 1) << std::endl; }
int main() {
unsigned char a = 12; f(a);
signed char b = -12; f(b);
char c = -12; f(c);
return 0;
}
/* end */
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdm9pZCBmKHVuc2lnbmVkIGNoYXIgYykgeyBzdGQ6OmNvdXQgPDwgImYodW5zaWduZWQgY2hhcik6ICIgPDwgKGMgPj4gMSkgPDwgc3RkOjplbmRsOyB9CnZvaWQgZihzaWduZWQgY2hhciBjKSB7IHN0ZDo6Y291dCA8PCAiZihzaWduZWQgY2hhcik6ICIgPDwgKGMgPj4gMSkgPDwgc3RkOjplbmRsOyB9CnZvaWQgZihjaGFyIGMpIHsgc3RkOjpjb3V0IDw8ICJmKGNoYXIpOiAiIDw8IChjID4+IDEpIDw8IHN0ZDo6ZW5kbDsgfQoKaW50IG1haW4oKSB7CiAgdW5zaWduZWQgY2hhciBhID0gMTI7IGYoYSk7ICAKICBzaWduZWQgY2hhciBiID0gLTEyOyBmKGIpOwogIGNoYXIgYyA9IC0xMjsgZihjKTsKICAKICByZXR1cm4gMDsKfQovKiBlbmQgKi8K