#include <iostream>
using namespace std;
#include <iostream>
class God
{
private:
static God* firstObject;
God()
{
if (firstObject != NULL)
firstObject = this;
}
public:
static God* BuildGod()
{
if (firstObject != NULL)
return firstObject;
else {
God();
return firstObject;
}
}
operator const char*() { return "sup"; }
};
God* God::firstObject;
int main() {
God* a = God::BuildGod();
std::cout << (const char*)(*a);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgR29kCnsKcHJpdmF0ZToKICAgIHN0YXRpYyBHb2QqIGZpcnN0T2JqZWN0OwogICAgR29kKCkKICAgIHsKICAgICAgICBpZiAoZmlyc3RPYmplY3QgIT0gTlVMTCkKICAgICAgICAgICAgZmlyc3RPYmplY3QgPSB0aGlzOwogICAgfQpwdWJsaWM6CiAgICBzdGF0aWMgR29kKiBCdWlsZEdvZCgpCiAgICB7CiAgICAgICAgaWYgKGZpcnN0T2JqZWN0ICE9IE5VTEwpCiAgICAgICAgICAgIHJldHVybiBmaXJzdE9iamVjdDsKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgR29kKCk7CiAgICAgICAgICAgIHJldHVybiBmaXJzdE9iamVjdDsKICAgICAgICB9CiAgICB9CiAgICAKICAgIG9wZXJhdG9yIGNvbnN0IGNoYXIqKCkgeyByZXR1cm4gInN1cCI7IH0KfTsKCkdvZCogR29kOjpmaXJzdE9iamVjdDsKCmludCBtYWluKCkgewogICAgR29kKiBhID0gR29kOjpCdWlsZEdvZCgpOwogICAgc3RkOjpjb3V0IDw8IChjb25zdCBjaGFyKikoKmEpOwoJcmV0dXJuIDA7Cn0=