#include <iostream>
#include <functional>
struct A{
int m;
std::function<void()> f() {
return [=]() mutable { std::cout << m; };
}
};
int main() {
A a = {3};
auto f = a.f();
a.m = 4;
f();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KCnN0cnVjdCBBewogICBpbnQgbTsgCgogICBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gZigpIHsKICAgICAgIHJldHVybiBbPV0oKSBtdXRhYmxlIHsgc3RkOjpjb3V0IDw8IG07IH07CiAgIH0KfTsKICAgICAgCmludCBtYWluKCkgewogICAgQSBhID0gezN9OwogICAgYXV0byBmID0gYS5mKCk7CiAgICBhLm0gPSA0OwogICAgZigpOwp9