#include <map>
template <typename T, typename Comparator = std::less<typename T::Key>>
struct Container
{
std::map<typename T::Key, T*, Comparator> m;
};
struct Thing
{
typedef int Key;
};
int main()
{
Container<Thing> c;
}
I2luY2x1ZGUgPG1hcD4KCnRlbXBsYXRlIDx0eXBlbmFtZSBULCB0eXBlbmFtZSBDb21wYXJhdG9yID0gc3RkOjpsZXNzPHR5cGVuYW1lIFQ6OktleT4+CnN0cnVjdCBDb250YWluZXIKewogICAgc3RkOjptYXA8dHlwZW5hbWUgVDo6S2V5LCBUKiwgQ29tcGFyYXRvcj4gbTsKfTsKCnN0cnVjdCBUaGluZyAKewogICAgdHlwZWRlZiBpbnQgS2V5OyAKfTsKCmludCBtYWluKCkKewogICAgQ29udGFpbmVyPFRoaW5nPiBjOwp9