#include <iostream>
struct X {};
template <class T>
void bar(T t)
{
foo(t);
}
void foo(X x)
{
std::cout << "Foo\n";
}
int main()
{
X x;
bar(x);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKCnN0cnVjdCBYIHt9OwoKCnRlbXBsYXRlIDxjbGFzcyBUPgp2b2lkIGJhcihUIHQpCnsKCWZvbyh0KTsKfQoKCnZvaWQgZm9vKFggeCkKewoJc3RkOjpjb3V0IDw8ICJGb29cbiI7Cn0KCmludCBtYWluKCkKewoJWCB4OwoJYmFyKHgpOwp9