#include <iostream>
using namespace std;
template<class T> void bar(T t) { foo(t); }
struct F {};
int main() {
F f;
bar(f);
return 0;
}
void foo(F) { cout << "foo(F)"; }
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8Y2xhc3MgVD4gdm9pZCBiYXIoVCB0KSB7IGZvbyh0KTsgfQoKc3RydWN0IEYge307CgppbnQgbWFpbigpIHsKCUYgZjsKCWJhcihmKTsKCXJldHVybiAwOwp9Cgp2b2lkIGZvbyhGKSB7IGNvdXQgPDwgImZvbyhGKSI7IH0K