#include <iostream>
#include <type_traits>
template <typename ClassType>
static std::true_type test(decltype(&ClassType::helloworld));
template <typename ClassType>
static std::false_type test(...);
struct has_helloworld_class {
void helloworld();
};
struct no_helloworld_class {
};
int main () {
using namespace std;
cout << decltype(test<has_helloworld_class>(nullptr))::value << endl;
cout << decltype(test<no_helloworld_class>(nullptr))::value << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKdGVtcGxhdGUgPHR5cGVuYW1lIENsYXNzVHlwZT4Kc3RhdGljIHN0ZDo6dHJ1ZV90eXBlIHRlc3QoZGVjbHR5cGUoJkNsYXNzVHlwZTo6aGVsbG93b3JsZCkpOwoKdGVtcGxhdGUgPHR5cGVuYW1lIENsYXNzVHlwZT4Kc3RhdGljIHN0ZDo6ZmFsc2VfdHlwZSB0ZXN0KC4uLik7CgpzdHJ1Y3QgaGFzX2hlbGxvd29ybGRfY2xhc3MgewoJdm9pZCBoZWxsb3dvcmxkKCk7Cn07CiAKc3RydWN0IG5vX2hlbGxvd29ybGRfY2xhc3Mgewp9OwoKaW50IG1haW4gKCkgewoJdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCQoJY291dCA8PCBkZWNsdHlwZSh0ZXN0PGhhc19oZWxsb3dvcmxkX2NsYXNzPihudWxscHRyKSk6OnZhbHVlIDw8IGVuZGw7Cgljb3V0IDw8IGRlY2x0eXBlKHRlc3Q8bm9faGVsbG93b3JsZF9jbGFzcz4obnVsbHB0cikpOjp2YWx1ZSA8PCBlbmRsOwp9