#include <iostream>
#include <utility>
void foo(const std::pair<const char*, std::size_t>& p)
{
std::cout << "pair" << std::endl;
}
template <class T>
void foo(const T& v)
{
std::cout << "generic" << std::endl;
}
int main()
{
const char* s = "abc";
foo(std::make_pair(s, std::size_t(3)));
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dXRpbGl0eT4KCiAgICB2b2lkIGZvbyhjb25zdCBzdGQ6OnBhaXI8Y29uc3QgY2hhciosIHN0ZDo6c2l6ZV90PiYgcCkKICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgInBhaXIiIDw8IHN0ZDo6ZW5kbDsKICAgIH0KICAgIAogICAgdGVtcGxhdGUgPGNsYXNzIFQ+CiAgICB2b2lkIGZvbyhjb25zdCBUJiB2KQogICAgewogICAgCXN0ZDo6Y291dCA8PCAiZ2VuZXJpYyIgPDwgc3RkOjplbmRsOwogICAgfQogICAgCiAgICBpbnQgbWFpbigpCiAgICB7CiAgICAJY29uc3QgY2hhciogcyA9ICJhYmMiOwogICAgCWZvbyhzdGQ6Om1ha2VfcGFpcihzLCBzdGQ6OnNpemVfdCgzKSkpOwogICAgfQo=