/**
* Sergey Kopeliovich (burunduk30@gmail.com)
*/
#include <bits/stdc++.h>
using namespace std;
bool f1(int x) {
return x == 3;
}
typedef bool function_type(int);
bool do_smth(int x, function_type *func) {
return func(x);
}
function<bool(int)> f2 = [](int x) {
return x == 2;
};
bool do_smth(int x, function<bool(int)> func) {
return func(x);
};
int main() {
cout << do_smth(3, f1) << endl;
cout << do_smth(2, f2) << endl;
int n;
cin >> n;
vector<vector<int>> g(n);
function<void(int, int)> dfs = [&](int v, int p) {
for (int x : g[v])
if (x != p)
dfs(x, v);
};
dfs(0, -1);
}