#include <iostream>
#include <functional>
using namespace std;
class X {
public:
template<typename T>
void f(T t) {
cout << t << endl;
}
};
int main() {
X xx;
xx.f(5);
function<void(X,int)> ff(&X::f<int>);
ff(xx, 5);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBYIHsKICAgIHB1YmxpYzoKICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiAgICB2b2lkIGYoVCB0KSB7CiAgICAgICAgY291dCA8PCB0IDw8IGVuZGw7CiAgICB9Cn07CgppbnQgbWFpbigpIHsKICAgIFggeHg7CiAgICB4eC5mKDUpOwogICAgZnVuY3Rpb248dm9pZChYLGludCk+IGZmKCZYOjpmPGludD4pOwogICAgZmYoeHgsIDUpOwogICAgcmV0dXJuIDA7Cn0=