#include <iostream>
#include <string>
#include <vector>
struct in
{
std::vector<std::string> vec_str;
void add_strings(){}
template<typename T, typename... Args>
void add_strings(T value, Args... args) {
vec_str.push_back(value);
add_strings(args...);
}
template<typename... Args>
in(Args... args) {
add_strings(args...);
}
};
bool operator==(std::string const& str, in const& val) {
for(auto &i : val.vec_str) {
if(i == str)
return true;
}
return false;
}
// -----------------------------------------------------
int main(void)
{
std::string lang, country = "GB";
if (country == in ("US","GB","AU")) {
lang="en";
}
std::cout << "lang = " << lang << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgoKCnN0cnVjdCBpbiAKewogc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHZlY19zdHI7CiB2b2lkIGFkZF9zdHJpbmdzKCl7fQoKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lLi4uIEFyZ3M+CiB2b2lkIGFkZF9zdHJpbmdzKFQgdmFsdWUsIEFyZ3MuLi4gYXJncykgewkKIAl2ZWNfc3RyLnB1c2hfYmFjayh2YWx1ZSk7CiAJYWRkX3N0cmluZ3MoYXJncy4uLik7CiB9CgkKIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+CiBpbihBcmdzLi4uIGFyZ3MpIHsgCiAJYWRkX3N0cmluZ3MoYXJncy4uLik7CiB9Cn07Cgpib29sIG9wZXJhdG9yPT0oc3RkOjpzdHJpbmcgY29uc3QmIHN0ciwgaW4gY29uc3QmIHZhbCkgewogCWZvcihhdXRvICZpIDogdmFsLnZlY19zdHIpIHsKIAkJaWYoaSA9PSBzdHIpCiAJCQlyZXR1cm4gdHJ1ZTsKIAl9CiAJcmV0dXJuIGZhbHNlOwkKfQovLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaW50IG1haW4odm9pZCkgCnsKCXN0ZDo6c3RyaW5nIGxhbmcsIGNvdW50cnkgPSAiR0IiOwoKCWlmIChjb3VudHJ5ID09IGluICgiVVMiLCJHQiIsIkFVIikpIHsKCQlsYW5nPSJlbiI7Cgl9CgoJc3RkOjpjb3V0IDw8ICJsYW5nID0gIiA8PCBsYW5nIDw8IHN0ZDo6ZW5kbDsKCglyZXR1cm4gMDsKfQo=