#include <iostream>
#include <sstream>
#include <iterator>
#include <algorithm>
#include <vector>
#include <set>
int main()
{
std::vector<std::string> vExt;
vExt.push_back("*.JPG;*.TGA;*.TIF");
vExt.push_back("*.PNG;*.RAW");
vExt.push_back("*.BMP;*.HDF");
vExt.push_back("*.GIF");
vExt.push_back("*.JPG");
vExt.push_back("*.BMP");
std::stringstream ss;
std::copy(vExt.begin(), vExt.end(),
std::ostream_iterator<std::string>(ss, ";"));
std::string element;
std::set<std::string> unique;
while (std::getline(ss, element, ';'))
unique.insert(unique.end(), element);
std::stringstream oss;
std::copy(unique.begin(), unique.end(),
std::ostream_iterator<std::string>(oss, ";"));
std::cout << oss.str() << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPGl0ZXJhdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c2V0PgoKaW50IG1haW4oKQp7CiAgICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdkV4dDsKICAgIHZFeHQucHVzaF9iYWNrKCIqLkpQRzsqLlRHQTsqLlRJRiIpOwogICAgdkV4dC5wdXNoX2JhY2soIiouUE5HOyouUkFXIik7CiAgICB2RXh0LnB1c2hfYmFjaygiKi5CTVA7Ki5IREYiKTsKICAgIHZFeHQucHVzaF9iYWNrKCIqLkdJRiIpOwogICAgdkV4dC5wdXNoX2JhY2soIiouSlBHIik7CiAgICB2RXh0LnB1c2hfYmFjaygiKi5CTVAiKTsKCiAgICBzdGQ6OnN0cmluZ3N0cmVhbSBzczsKICAgIHN0ZDo6Y29weSh2RXh0LmJlZ2luKCksIHZFeHQuZW5kKCksCiAgICAgICAgICAgIHN0ZDo6b3N0cmVhbV9pdGVyYXRvcjxzdGQ6OnN0cmluZz4oc3MsICI7IikpOwoKICAgIHN0ZDo6c3RyaW5nIGVsZW1lbnQ7CiAgICBzdGQ6OnNldDxzdGQ6OnN0cmluZz4gdW5pcXVlOwogICAgd2hpbGUgKHN0ZDo6Z2V0bGluZShzcywgZWxlbWVudCwgJzsnKSkKICAgICAgICB1bmlxdWUuaW5zZXJ0KHVuaXF1ZS5lbmQoKSwgZWxlbWVudCk7CgogICAgc3RkOjpzdHJpbmdzdHJlYW0gb3NzOwoKICAgIHN0ZDo6Y29weSh1bmlxdWUuYmVnaW4oKSwgdW5pcXVlLmVuZCgpLAogICAgICAgICAgICBzdGQ6Om9zdHJlYW1faXRlcmF0b3I8c3RkOjpzdHJpbmc+KG9zcywgIjsiKSk7CgogICAgc3RkOjpjb3V0IDw8IG9zcy5zdHIoKSA8PCBzdGQ6OmVuZGw7CgogICAgcmV0dXJuIDA7Cn0K