#include <algorithm>
#include <iostream>
#include <tuple>
#include <vector>
class Time {
int hour;
int minute;
public:
Time(int h, int m) : hour(h), minute(m) {
}
int getHour() const { return hour; }
int getMinute() const { return minute; }
friend bool operator<(const Time& a, const Time& b) {
return std::tie(a.hour, a.minute) < std::tie(b.hour, b.minute);
}
};
class Times {
std::vector<Time> t;
public:
Times() {
// Test data
t.push_back(Time{10, 10});
t.push_back(Time{9, 20});
t.push_back(Time{8, 30});
std::sort(t.begin(), t.end());
}
void display() {
for (const auto& x : t) {
std::cout << x.getHour() << ":" << x.getMinute() << '\n';
}
}
};
int main() {
Times times;
times.display();
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHVwbGU+CiNpbmNsdWRlIDx2ZWN0b3I+CiAKY2xhc3MgVGltZSB7CiAgICBpbnQgaG91cjsKICAgIGludCBtaW51dGU7CnB1YmxpYzoKICAgIFRpbWUoaW50IGgsIGludCBtKSA6IGhvdXIoaCksIG1pbnV0ZShtKSB7CiAgICB9CiAKICAgIGludCBnZXRIb3VyKCkgY29uc3QgeyByZXR1cm4gaG91cjsgfQogICAgaW50IGdldE1pbnV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1pbnV0ZTsgfQogCiAgICBmcmllbmQgYm9vbCBvcGVyYXRvcjwoY29uc3QgVGltZSYgYSwgY29uc3QgVGltZSYgYikgewogICAgICAgIHJldHVybiBzdGQ6OnRpZShhLmhvdXIsIGEubWludXRlKSA8IHN0ZDo6dGllKGIuaG91ciwgYi5taW51dGUpOwogICAgfSAgIAp9OwogCmNsYXNzIFRpbWVzIHsKICAgIHN0ZDo6dmVjdG9yPFRpbWU+IHQ7CiAKcHVibGljOgogICAgVGltZXMoKSB7CiAgICAgICAgLy8gVGVzdCBkYXRhCiAgICAgICAgdC5wdXNoX2JhY2soVGltZXsxMCwgMTB9KTsKICAgICAgICB0LnB1c2hfYmFjayhUaW1lezksIDIwfSk7CiAgICAgICAgdC5wdXNoX2JhY2soVGltZXs4LCAzMH0pOwogCiAgICAgICAgc3RkOjpzb3J0KHQuYmVnaW4oKSwgdC5lbmQoKSk7IAogICAgfQogCiAgICB2b2lkIGRpc3BsYXkoKSB7CiAgICAgICAgZm9yIChjb25zdCBhdXRvJiB4IDogdCkgewogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgeC5nZXRIb3VyKCkgPDwgIjoiIDw8IHguZ2V0TWludXRlKCkgPDwgJ1xuJzsKICAgICAgICB9CiAgICB9Cn07CiAKaW50IG1haW4oKSB7CiAgICBUaW1lcyB0aW1lczsKICAgIHRpbWVzLmRpc3BsYXkoKTsKfQ==