#include <iostream>
template<int X>
struct b {
int _y;
b(int y) : _y(y) {}
};
template<int X>
std::ostream & operator<<(std::ostream &os, const b<X>& p)
{
return os << p._y;
}
int main() {
int a = 0;
std::cout << (a<1>(2)) << std::endl;
std::cout << (b<1>(2)) << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8aW50IFg+CnN0cnVjdCBiIHsKCWludCBfeTsKCWIoaW50IHkpIDogX3koeSkge30KfTsKCnRlbXBsYXRlPGludCBYPgpzdGQ6Om9zdHJlYW0gJiBvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3MsIGNvbnN0IGI8WD4mIHApCnsKICAgIHJldHVybiBvcyA8PCBwLl95Owp9CgppbnQgbWFpbigpIHsKCWludCBhID0gMDsKCXN0ZDo6Y291dCA8PCAoYTwxPigyKSkgPDwgc3RkOjplbmRsOwoJc3RkOjpjb3V0IDw8IChiPDE+KDIpKSA8PCBzdGQ6OmVuZGw7CglyZXR1cm4gMDsKfQ==