template<bool> struct Range;
template<int value, typename = Range<true> > struct Unique;
template<int value> struct Unique<value, Range<(value > 1)> > { typedef char type[1]; };
Unique<3>::type o1;
template<int value> struct Unique<value, Range<(value > 2)> > { typedef char type[2]; };
Unique<3>::type o2;
int main ()
{
}
dGVtcGxhdGU8Ym9vbD4gc3RydWN0IFJhbmdlOwoKdGVtcGxhdGU8aW50IHZhbHVlLCB0eXBlbmFtZSA9IFJhbmdlPHRydWU+ID4gc3RydWN0IFVuaXF1ZTsKdGVtcGxhdGU8aW50IHZhbHVlPiBzdHJ1Y3QgVW5pcXVlPHZhbHVlLCBSYW5nZTwodmFsdWUgPiAxKT4gPiB7IHR5cGVkZWYgY2hhciB0eXBlWzFdOyB9OwpVbmlxdWU8Mz46OnR5cGUgbzE7IAoKdGVtcGxhdGU8aW50IHZhbHVlPiBzdHJ1Y3QgVW5pcXVlPHZhbHVlLCBSYW5nZTwodmFsdWUgPiAyKT4gPiB7IHR5cGVkZWYgY2hhciB0eXBlWzJdOyB9OwpVbmlxdWU8Mz46OnR5cGUgbzI7IAoKaW50IG1haW4gKCkKewp9Cg==