void increment_datetime(char* stamp)
{
  char limit, roll;   (void)(stamp[13] < '9' ?
  ++stamp[13] : (stamp[13] = '0', stamp[12] < '5' ?
  ++stamp[12] : (stamp[12] = '0', stamp[11] < '9' ?
  ++stamp[11] : (stamp[11] = '0', stamp[10] < '5' ?
  ++stamp[10] : (stamp[10] = '0', stamp[ 9] < ((stamp[8] == '2') ? '3':'9') ?
  ++stamp[ 9] : (stamp[ 9] = '0', stamp[ 8] < '2' ?
  ++stamp[ 8] : (stamp[ 8] = '0',
    limit = "0181010110101"[(stamp[4] * 10 + stamp[5]) & 0xf],
    roll = (stamp[6] == '3' - (limit == '8')), stamp[ 7] < '9' &&
     (stamp[7] != limit || !roll ||
      (limit == '8' && !(((stamp[2] << 1) ^ stamp[3]) & 3) && 
       ((stamp[2] | stamp[3]) != '0' || !(((stamp[0] << 1) ^ stamp[1]) & 3)))) ?
  ++stamp[ 7] : (stamp[ 7] = '0' + roll, !roll ?
  ++stamp[ 6] : (stamp[ 6] = '0', stamp[ 5] < ((stamp[4] == '1') ? '2':'9') ?
  ++stamp[ 5] : (stamp[ 5] = '0' + (stamp[4] == '1'),
                                  stamp[ 4] < '1' ?
  ++stamp[ 4] : (stamp[ 4] = '0', stamp[ 3] < '9' ?
  ++stamp[ 3] : (stamp[ 3] = '0', stamp[ 2] < '9' ?
  ++stamp[ 2] : (stamp[ 2] = '0', stamp[ 1] < '9' ?
  ++stamp[ 1] : (stamp[ 1] = '0', stamp[ 0] < '9' ?
  ++stamp[ 0] : (stamp[ 0] = '0')))))))))))))));
}

#include <iostream>
#include <string>

int main()
{
  char stamp[20];
  while (cin.getline(stamp, sizeof(stamp))) {
    increment_datetime(stamp);
    std::cout << stamp << std::endl;
  }
  return 0;
}

