#include <iostream>
#include <functional>
struct A
{
void f() { std::cout << "A::f() called" << std::endl; }
};
int main()
{
std::function<void(A*)> fun(&A::f);
A a;
fun(&a);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KCnN0cnVjdCBBCnsKICAgdm9pZCBmKCkgeyBzdGQ6OmNvdXQgPDwgIkE6OmYoKSBjYWxsZWQiIDw8IHN0ZDo6ZW5kbDsgfQp9OwoKaW50IG1haW4oKSAKewogICBzdGQ6OmZ1bmN0aW9uPHZvaWQoQSopPiBmdW4oJkE6OmYpOwogICBBIGE7CiAgIGZ1bigmYSk7Cn0=