#include <iostream>
#include <string>
#include <sstream>
std::string nexttime(std::string nowtime) {
std::string hs, ms, ss;
std::istringstream nowstream(nowtime);
std::getline(nowstream, hs, ':');
std::getline(nowstream, ms, ':');
std::getline(nowstream, ss);
int h = std::stoi(hs);
int m = std::stoi(ms);
int s = std::stoi(ss);
/*-------------------------*/
s++;
if (s >= 60) { m++; s = 0; }
if (m >= 60) { h++; m = 0; }
if (h >= 24) h = 0;
/*-------------------------*/
hs = (hs = "0" + std::to_string(h)).substr(hs.size() - 2);
ms = (ms = "0" + std::to_string(m)).substr(ms.size() - 2);
ss = (ss = "0" + std::to_string(s)).substr(ss.size() - 2);
return hs + ":" + ms + ":" + ss;
}
void f(std::string sin) {
std::cout << sin << std::endl;
std::cout << nexttime(sin) << std::endl << std::endl;
}
int main() {
f("00:00:00");
f("23:59:59");
f("00:03:59");
f("15:59:59");
return 0;
}
/* end */
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8c3N0cmVhbT4KCnN0ZDo6c3RyaW5nIG5leHR0aW1lKHN0ZDo6c3RyaW5nIG5vd3RpbWUpIHsKICBzdGQ6OnN0cmluZyBocywgbXMsIHNzOwogIHN0ZDo6aXN0cmluZ3N0cmVhbSBub3dzdHJlYW0obm93dGltZSk7CiAgc3RkOjpnZXRsaW5lKG5vd3N0cmVhbSwgaHMsICc6Jyk7CiAgc3RkOjpnZXRsaW5lKG5vd3N0cmVhbSwgbXMsICc6Jyk7CiAgc3RkOjpnZXRsaW5lKG5vd3N0cmVhbSwgc3MpOwogIGludCBoID0gc3RkOjpzdG9pKGhzKTsKICBpbnQgbSA9IHN0ZDo6c3RvaShtcyk7CiAgaW50IHMgPSBzdGQ6OnN0b2koc3MpOyAgCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBzKys7CiAgaWYgKHMgPj0gNjApIHsgbSsrOyBzID0gMDsgfQogIGlmIChtID49IDYwKSB7IGgrKzsgbSA9IDA7IH0KICBpZiAoaCA+PSAyNCkgaCA9IDA7CiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBocyA9IChocyA9ICIwIiArIHN0ZDo6dG9fc3RyaW5nKGgpKS5zdWJzdHIoaHMuc2l6ZSgpIC0gMik7CiAgbXMgPSAobXMgPSAiMCIgKyBzdGQ6OnRvX3N0cmluZyhtKSkuc3Vic3RyKG1zLnNpemUoKSAtIDIpOwogIHNzID0gKHNzID0gIjAiICsgc3RkOjp0b19zdHJpbmcocykpLnN1YnN0cihzcy5zaXplKCkgLSAyKTsKICByZXR1cm4gaHMgKyAiOiIgKyBtcyArICI6IiArIHNzOwp9Cgp2b2lkIGYoc3RkOjpzdHJpbmcgc2luKSB7CiAgc3RkOjpjb3V0IDw8IHNpbiA8PCBzdGQ6OmVuZGw7CiAgc3RkOjpjb3V0IDw8IG5leHR0aW1lKHNpbikgPDwgc3RkOjplbmRsIDw8IHN0ZDo6ZW5kbDsKfQoKaW50IG1haW4oKSB7CiAgZigiMDA6MDA6MDAiKTsKICBmKCIyMzo1OTo1OSIpOwoKICBmKCIwMDowMzo1OSIpOwogIGYoIjE1OjU5OjU5Iik7CiAgCiAgcmV0dXJuIDA7Cn0KLyogZW5kICovCg==