struct CompareKey : public std::unary_function<std::pair<int, int>, bool>
{
bool operator ()(const std::pair<int, int>& p1,
{const std::pair<int, int>& p2) const
return p1.first < p2.first;
}
};
std::set<std::pair<int, long>, CompareKey > somevar;