#include <bits/stdc++.h>
using namespace std;
int days[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int sum;
struct Date
{
int year;
int month;
int day;
bool operator<(const Date &t) const
{
if(year != t.year) return year < t.year;
if(month != t.month) return month < t.month;
return day < t.day;
}
}date[5];
void check(int year, int month, int day)
{
if(year <= 59) year += 2000;
else year += 1900;
if(month < 1 || month > 12) return ;
if(month != 2)
{
if(day < 1 || day > days[month])
return ;
}
else
{
int leap = 0;
if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
leap = 1;
if(day < 1 || day > days[2] + leap)
return ;
}
date[sum].year = year;
date[sum].month = month;
date[sum].day = day;
sum ++;
}
int main()
{
string s;
cin >> s;
int a = (s[0] - '0') * 10 + (s[1] - '0');
int b = (s[3] - '0') * 10 + (s[4] - '0');
int c = (s[6] - '0') * 10 + (s[7] - '0');
check(a, b, c);
if(a != c)
check(c, b, a);
if(a != b)
check(c, a, b);
sort(date, date + sum);
for(int i = 0; i < sum; i ++)
printf("%4d-%02d-%02d\n",date[i].year, date[i].month, date[i].day);
return 0;
}