#include <algorithm>
#include <iostream>
#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; }
};
class Times {
std::vector<Time> t;
static bool lowerThan(const Time& a, const Time& b) { return a.getHour() < b.getHour(); }
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(), lowerThan);
std::sort(t.begin(), t.end(), [] (const Time& a, const Time& b) {
return a.getHour() < b.getHour();
});
}
void display() {
for (const auto& x : t) {
std::cout << x.getHour() << ":" << x.getMinute() << '\n';
}
}
};
int main() {
Times times;
times.display();
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKY2xhc3MgVGltZSB7CiAgICBpbnQgaG91cjsKICAgIGludCBtaW51dGU7CnB1YmxpYzoKICAgIFRpbWUoaW50IGgsIGludCBtKSA6IGhvdXIoaCksIG1pbnV0ZShtKSB7CiAgICB9CgogICAgaW50IGdldEhvdXIoKSBjb25zdCB7IHJldHVybiBob3VyOyB9CiAgICBpbnQgZ2V0TWludXRlKCkgY29uc3QgeyByZXR1cm4gbWludXRlOyB9Cn07CgpjbGFzcyBUaW1lcyB7CiAgICBzdGQ6OnZlY3RvcjxUaW1lPiB0OwogICAgc3RhdGljIGJvb2wgbG93ZXJUaGFuKGNvbnN0IFRpbWUmIGEsIGNvbnN0IFRpbWUmIGIpIHsgcmV0dXJuIGEuZ2V0SG91cigpIDwgYi5nZXRIb3VyKCk7IH0KCnB1YmxpYzoKICAgIFRpbWVzKCkgewogICAgICAgIC8vIFRlc3QgZGF0YQogICAgICAgIHQucHVzaF9iYWNrKFRpbWV7MTAsIDEwfSk7CiAgICAgICAgdC5wdXNoX2JhY2soVGltZXs5LCAyMH0pOwogICAgICAgIHQucHVzaF9iYWNrKFRpbWV7OCwgMzB9KTsKICAgICAgICAKICAgICAgICAvL3N0ZDo6c29ydCh0LmJlZ2luKCksIHQuZW5kKCksIGxvd2VyVGhhbik7CiAgICAgICAKICAgICAgICBzdGQ6OnNvcnQodC5iZWdpbigpLCB0LmVuZCgpLCBbXSAoY29uc3QgVGltZSYgYSwgY29uc3QgVGltZSYgYikgeyAKICAgICAgICAgICAgcmV0dXJuIGEuZ2V0SG91cigpIDwgYi5nZXRIb3VyKCk7IAogICAgICAgIH0pOwogICAgfQoKICAgIHZvaWQgZGlzcGxheSgpIHsKICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHggOiB0KSB7CiAgICAgICAgICAgIHN0ZDo6Y291dCA8PCB4LmdldEhvdXIoKSA8PCAiOiIgPDwgeC5nZXRNaW51dGUoKSA8PCAnXG4nOwogICAgICAgIH0KICAgIH0KfTsKCmludCBtYWluKCkgewogICAgVGltZXMgdGltZXM7CiAgICB0aW1lcy5kaXNwbGF5KCk7Cn0K