#include <iostream>
#include <type_traits>
using namespace std;
class xD
{
public:
template<
typename T,
typename = typename std::enable_if<
!std::is_base_of<
xD,
typename std::decay<T>::type
>::value
>::type
>
xD(T&& data)
{
data = i;
}
int i;
};
int main() {
xD xd(123);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyB4RAp7CnB1YmxpYzoKCXRlbXBsYXRlPAoJCXR5cGVuYW1lIFQsCgkJdHlwZW5hbWUgPSB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwKCQkJIXN0ZDo6aXNfYmFzZV9vZjwKCQkJCXhELAoJCQkJdHlwZW5hbWUgc3RkOjpkZWNheTxUPjo6dHlwZQoJCQk+Ojp2YWx1ZQoJCT46OnR5cGUKCT4KCXhEKFQmJiBkYXRhKQoJewoJCWRhdGEgPSBpOwoJfQoJaW50IGk7Cn07CgppbnQgbWFpbigpIHsKCXhEIHhkKDEyMyk7CglyZXR1cm4gMDsKfQ==