#include <utility>
template <int N, typename = void>
struct foo : std::integral_constant<int, -1> {};
template <int N>
struct foo<N, typename std::enable_if<(0<=N)&&(N<10)>::type> : std::integral_constant<int, N> {};
#include <iostream>
int main()
{
std::cout << foo<-1>::value << '\n';
std::cout << foo<0>::value << '\n';
std::cout << foo<1>::value << '\n';
std::cout << foo<9>::value << '\n';
std::cout << foo<10>::value << '\n';
}
I2luY2x1ZGUgPHV0aWxpdHk+Cgp0ZW1wbGF0ZSA8aW50IE4sIHR5cGVuYW1lID0gdm9pZD4Kc3RydWN0IGZvbyA6IHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8aW50LCAtMT4ge307Cgp0ZW1wbGF0ZSA8aW50IE4+CnN0cnVjdCBmb288TiwgdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8KDA8PU4pJiYoTjwxMCk+Ojp0eXBlPiA6IHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8aW50LCBOPiB7fTsKCiNpbmNsdWRlIDxpb3N0cmVhbT4KaW50IG1haW4oKQp7CiAgICBzdGQ6OmNvdXQgPDwgZm9vPC0xPjo6dmFsdWUgPDwgJ1xuJzsKICAgIHN0ZDo6Y291dCA8PCBmb288MD46OnZhbHVlIDw8ICdcbic7CiAgICBzdGQ6OmNvdXQgPDwgZm9vPDE+Ojp2YWx1ZSA8PCAnXG4nOwogICAgc3RkOjpjb3V0IDw8IGZvbzw5Pjo6dmFsdWUgPDwgJ1xuJzsKICAgIHN0ZDo6Y291dCA8PCBmb288MTA+Ojp2YWx1ZSA8PCAnXG4nOwp9