#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;
}