#include <limits>
#include <iostream>
class UnixTime;
class SmallUnixTime
{
public:
int Value;
explicit SmallUnixTime(int value = 0) : Value(value)
{
}
operator bool() const
{
return this->Value;
}
};
class UnixTime
{
public:
long long Value;
explicit UnixTime(long long value = 0LL) : Value(value)
{
}
operator SmallUnixTime() const
{
SmallUnixTime sut(this->Value <= std::numeric_limits<int>::max() ? this->Value : 0);
return sut;
}
operator bool() const
{
return this->Value;
}
};
SmallUnixTime newClusters(int)
{
SmallUnixTime sut(std::numeric_limits<int>::max());
return sut;
}
UnixTime newSeed(int)
{
UnixTime ut(std::numeric_limits<int>::max() + 1LL);
return ut;
}
int main() {
int Sp = 0;
int m_seedsfilter = 2;
{
bool good;
bool bad = !m_seedsfilter ? good=true
: m_seedsfilter==1 ? good=newClusters(Sp)
: good=newSeed(Sp);
std::cout << good << " " << bad << std::endl;
}
{
bool good;
bool bad = good = !m_seedsfilter ? true
: m_seedsfilter==1 ? newClusters(Sp)
: newSeed(Sp);
std::cout << good << " " << bad << std::endl;
}
return 0;
}
I2luY2x1ZGUgPGxpbWl0cz4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgVW5peFRpbWU7CgpjbGFzcyBTbWFsbFVuaXhUaW1lCnsKICAgIHB1YmxpYzoKICAgICAgICBpbnQgVmFsdWU7CiAgICAgICAgCiAgICAgICAgZXhwbGljaXQgU21hbGxVbml4VGltZShpbnQgdmFsdWUgPSAwKSA6IFZhbHVlKHZhbHVlKQogICAgICAgIHsKICAgICAgICB9CiAgICAKICAgICAgICBvcGVyYXRvciBib29sKCkgY29uc3QKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLT5WYWx1ZTsKICAgICAgICB9Cn07CgpjbGFzcyBVbml4VGltZQp7CiAgICBwdWJsaWM6CiAgICAgICAgbG9uZyBsb25nIFZhbHVlOwogICAgICAgIAogICAgICAgIGV4cGxpY2l0IFVuaXhUaW1lKGxvbmcgbG9uZyB2YWx1ZSA9IDBMTCkgOiBWYWx1ZSh2YWx1ZSkKICAgICAgICB7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIG9wZXJhdG9yIFNtYWxsVW5peFRpbWUoKSBjb25zdAogICAgICAgIHsKICAgICAgICAgICAgU21hbGxVbml4VGltZSBzdXQodGhpcy0+VmFsdWUgPD0gc3RkOjpudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKSA/IHRoaXMtPlZhbHVlIDogMCk7CiAgICAgICAgICAgIHJldHVybiBzdXQ7CiAgICAgICAgfQogICAgCiAgICAgICAgb3BlcmF0b3IgYm9vbCgpIGNvbnN0CiAgICAgICAgewogICAgICAgICAgICByZXR1cm4gdGhpcy0+VmFsdWU7CiAgICAgICAgfQp9OwoKU21hbGxVbml4VGltZSBuZXdDbHVzdGVycyhpbnQpCnsKICAgIFNtYWxsVW5peFRpbWUgc3V0KHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWF4KCkpOwogICAgcmV0dXJuIHN1dDsKfQoKVW5peFRpbWUgbmV3U2VlZChpbnQpCnsKICAgIFVuaXhUaW1lIHV0KHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWF4KCkgKyAxTEwpOwogICAgcmV0dXJuIHV0Owp9CgppbnQgbWFpbigpIHsKICAgIGludCBTcCA9IDA7CiAgICAKICAgIGludCBtX3NlZWRzZmlsdGVyID0gMjsKICAgIAogICAgewogICAgICAgIGJvb2wgZ29vZDsKICAgICAgICBib29sIGJhZCA9ICFtX3NlZWRzZmlsdGVyID8gZ29vZD10cnVlIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG1fc2VlZHNmaWx0ZXI9PTEgPyBnb29kPW5ld0NsdXN0ZXJzKFNwKSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZ29vZD1uZXdTZWVkKFNwKTsKCiAgICAgICAgc3RkOjpjb3V0IDw8IGdvb2QgPDwgIiAiIDw8IGJhZCA8PCBzdGQ6OmVuZGw7CiAgICB9CiAgICAKICAgIHsKICAgICAgICBib29sIGdvb2Q7CiAgICAgICAgYm9vbCBiYWQgPSBnb29kID0gIW1fc2VlZHNmaWx0ZXIgPyB0cnVlIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbV9zZWVkc2ZpbHRlcj09MSA/IG5ld0NsdXN0ZXJzKFNwKSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBuZXdTZWVkKFNwKTsKCiAgICAgICAgc3RkOjpjb3V0IDw8IGdvb2QgPDwgIiAiIDw8IGJhZCA8PCBzdGQ6OmVuZGw7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=