#include <iostream>
template<typename F, typename T>
void
apply(F f, T t){
f(t);
}
template<typename T>
void
print(T t){
std::cout << t << std::endl;
}
int
main(){
apply(print, 10);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8dHlwZW5hbWUgRiwgdHlwZW5hbWUgVD4Kdm9pZAphcHBseShGIGYsIFQgdCl7CglmKHQpOwp9Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgp2b2lkCnByaW50KFQgdCl7CglzdGQ6OmNvdXQgPDwgdCA8PCBzdGQ6OmVuZGw7Cn0KCgppbnQKbWFpbigpewoJYXBwbHkocHJpbnQsIDEwKTsKCXJldHVybiAwOwp9Cg==