#include <set>
#include <iostream>
int main()
{
auto comp = [](const auto& a, const auto& b) { return a.second < b.second; };
std::set<std::pair<int, int>, decltype(comp) > s(comp);
s.insert(std::make_pair(1, 1));
s.insert(std::make_pair(2, 1));
s.insert(std::make_pair(3, 1));
for(auto const &kv : s)
std::cout << "Value: " << kv.second << std::endl;
return 0;
}
I2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKaW50IG1haW4oKQp7CiAgICBhdXRvIGNvbXAgPSBbXShjb25zdCBhdXRvJiBhLCBjb25zdCBhdXRvJiBiKSB7IHJldHVybiBhLnNlY29uZCA8IGIuc2Vjb25kOyB9OwogICAgc3RkOjpzZXQ8c3RkOjpwYWlyPGludCwgaW50PiwgZGVjbHR5cGUoY29tcCkgPiBzKGNvbXApOwoKICAgIHMuaW5zZXJ0KHN0ZDo6bWFrZV9wYWlyKDEsIDEpKTsKICAgIHMuaW5zZXJ0KHN0ZDo6bWFrZV9wYWlyKDIsIDEpKTsKICAgIHMuaW5zZXJ0KHN0ZDo6bWFrZV9wYWlyKDMsIDEpKTsKCiAgICBmb3IoYXV0byBjb25zdCAma3YgOiBzKQogICAgICAgIHN0ZDo6Y291dCA8PCAiVmFsdWU6ICIgPDwga3Yuc2Vjb25kIDw8IHN0ZDo6ZW5kbDsKCiAgICByZXR1cm4gMDsKfQ==