#include <iostream>
using namespace std;
void bar(int a)
{
std::cout << a << std::endl;
}
typedef void(*func_type)(int);
template<func_type func>
void foo()
{
func(5);
}
int main() {
foo<bar>();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBiYXIoaW50IGEpCnsKCXN0ZDo6Y291dCA8PCBhIDw8IHN0ZDo6ZW5kbDsKfQoKdHlwZWRlZiB2b2lkKCpmdW5jX3R5cGUpKGludCk7CnRlbXBsYXRlPGZ1bmNfdHlwZSBmdW5jPgp2b2lkIGZvbygpCnsKCWZ1bmMoNSk7Cn0KCmludCBtYWluKCkgewoJZm9vPGJhcj4oKTsKCXJldHVybiAwOwp9