#include <iostream>
namespace foo {
struct Foo {};
template <typename T>
void func(T t) {
std::cout << "namespace function\n";
}
}
template <typename T>
void func(T t) {
std::cout << "global function\n";
}
int main() {
foo::Foo f;
func(f);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKbmFtZXNwYWNlIGZvbyB7CiAgICBzdHJ1Y3QgRm9vIHt9OwogICAgCiAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KICAgIHZvaWQgZnVuYyhUIHQpIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgIm5hbWVzcGFjZSBmdW5jdGlvblxuIjsKICAgIH0KfQoKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CnZvaWQgZnVuYyhUIHQpIHsKICAgIHN0ZDo6Y291dCA8PCAiZ2xvYmFsIGZ1bmN0aW9uXG4iOwp9CgppbnQgbWFpbigpIHsKICAgIGZvbzo6Rm9vIGY7CiAgICBmdW5jKGYpOwp9Cg==