#include <set>
#include <vector>
#include <iostream>
template<typename C>
void foo(C const& c)
{
std::cout << "{ ";
for (auto x : c)
{
std::cout << x << " ";
}
std::cout << "}";
}
int main()
{
std::vector<int> v = {1, 2, 3};
foo(v);
std::cout << std::endl;
std::set<std::string> s = {"Hello,", "Generic", "World!"};
foo(s);
}
ICAgICNpbmNsdWRlIDxzZXQ+CiAgICAjaW5jbHVkZSA8dmVjdG9yPgogICAgI2luY2x1ZGUgPGlvc3RyZWFtPgoKICAgIHRlbXBsYXRlPHR5cGVuYW1lIEM+CiAgICB2b2lkIGZvbyhDIGNvbnN0JiBjKQogICAgewogICAgICAgIHN0ZDo6Y291dCA8PCAieyAiOwogICAgICAgIGZvciAoYXV0byB4IDogYykKICAgICAgICB7CiAgICAgICAgICAgIHN0ZDo6Y291dCA8PCB4IDw8ICIgIjsKICAgICAgICB9CiAgICAgICAgc3RkOjpjb3V0IDw8ICJ9IjsKICAgIH0KCiAgICBpbnQgbWFpbigpCiAgICB7CiAgICAgICAgc3RkOjp2ZWN0b3I8aW50PiB2ID0gezEsIDIsIDN9OwogICAgICAgIGZvbyh2KTsKCiAgICAgICAgc3RkOjpjb3V0IDw8IHN0ZDo6ZW5kbDsKCiAgICAgICAgc3RkOjpzZXQ8c3RkOjpzdHJpbmc+IHMgPSB7IkhlbGxvLCIsICJHZW5lcmljIiwgIldvcmxkISJ9OwogICAgICAgIGZvbyhzKTsKICAgIH0=