class A
{
public:
bool Fun(int n, auto fn = [](int n){ return true; })
{
while(n --> 0)
{
if ( fn(n) )
{
return true;
}
}
return false;
}
};
int main(int argc, char* argv[])
{
A a;
//a.Fun(8);
a.Fun(8, [](int n) {return n%2 == 0;});
return 0;
}
Y2xhc3MgQQp7CiAgcHVibGljOgoKICAgIGJvb2wgRnVuKGludCBuLCBhdXRvIGZuID0gW10oaW50IG4peyByZXR1cm4gdHJ1ZTsgfSkKICAgIHsKICAgICAgICB3aGlsZShuIC0tPiAwKSAKICAgICAgICB7CiAgICAgICAgICAgIGlmICggZm4obikgKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9Cgp9OwoKCmludCBtYWluKGludCBhcmdjLCBjaGFyKiBhcmd2W10pCnsKICAgIEEgYTsKCiAgICAvL2EuRnVuKDgpOwogICAgYS5GdW4oOCwgW10oaW50IG4pIHtyZXR1cm4gbiUyID09IDA7fSk7CgoJcmV0dXJuIDA7Cn0KCg==