#include <iostream>
template<typename T>
struct Comparator
{
bool operator==(const Comparator<T>&)
{
return true;
}
template<typename U>
bool operator==(const Comparator<U>&)
{
return false;
}
};
int main() {
Comparator<int> compInt;
Comparator<float> compF;
std::cout << (compInt == compInt) and not (compInt == compF);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8dHlwZW5hbWUgVD4Kc3RydWN0IENvbXBhcmF0b3IKewogICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IENvbXBhcmF0b3I8VD4mKQogICAgewogICAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdGVtcGxhdGU8dHlwZW5hbWUgVT4KICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDb21wYXJhdG9yPFU+JikKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9Cn07CgppbnQgbWFpbigpIHsKCUNvbXBhcmF0b3I8aW50PiBjb21wSW50OwogICAgQ29tcGFyYXRvcjxmbG9hdD4gY29tcEY7CiAgICBzdGQ6OmNvdXQgPDwgKGNvbXBJbnQgPT0gY29tcEludCkgYW5kIG5vdCAoY29tcEludCA9PSBjb21wRik7CglyZXR1cm4gMDsKfQ==