#include <iostream>
#include <type_traits>
using namespace std;
struct S { void function() { std::cout << __PRETTY_FUNCTION__ << '\n'; } };
//template <typename TYPE>
constexpr bool my_test(void (S::*s)()) {
auto a = s;
return is_same<decltype(a), void()>::value;
}
int main() {
std::cout << "a " << my_test(&S::function);
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IFMgeyB2b2lkIGZ1bmN0aW9uKCkgeyBzdGQ6OmNvdXQgPDwgX19QUkVUVFlfRlVOQ1RJT05fXyA8PCAnXG4nOyB9IH07CgovL3RlbXBsYXRlIDx0eXBlbmFtZSBUWVBFPgpjb25zdGV4cHIgYm9vbCBteV90ZXN0KHZvaWQgKFM6OipzKSgpKSB7CglhdXRvIGEgPSBzOwoJcmV0dXJuIGlzX3NhbWU8ZGVjbHR5cGUoYSksIHZvaWQoKT46OnZhbHVlOwp9CgoKaW50IG1haW4oKSB7CiAgICBzdGQ6OmNvdXQgPDwgImEgIiA8PCBteV90ZXN0KCZTOjpmdW5jdGlvbik7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKfQ==