#include <algorithm>
#include <iostream>
using namespace std;
int a[3], idx;
int mon[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
struct Date {
int y;
int m;
int d;
bool operator<(const Date &t) const {
if (y != t.y) return y < t.y;
if (m != t.m) return m < t.m;
return d < t.d;
}
bool operator==(const Date &t) const {
return y == t.y && m == t.m && d == t.d;
}
} date[3];
int main() {
scanf("%d/%d/%d", &a[0], &a[1], &a[2]);
int i[3] = {0, 2, 2}, j[3] = {1, 0, 1}, k[3] = {2, 1, 0};
for (int n = 0; n < 3; n++) {
if (a[i[n]] >= 60)
date[idx++] = {a[i[n]] + 1900, a[j[n]], a[k[n]]};
else
date[idx++] = {a[i[n]] + 2000, a[j[n]], a[k[n]]};
}
sort(date, date + 3);
for (int i = 0; i < 3; i++) {
Date t = date[i];
if (i && t == date[i - 1]) continue;
if (t.y >= 1960 && t.y <= 2059 && t.m <= 12 && t.m >= 1) {
mon[2] = (t.y % 4 == 0 && t.y % 100 || t.y % 400 == 0 ? 29 : 28);
if (t.d >= 1 && t.d <= mon[t.m]) {
printf("%d-%02d-%02d\n", t.y, t.m, t.d);
}
}
}
return 0;
}