#include<cstring>
#include<string>
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<cmath>
using namespace std;
string s[4];
int y[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int u[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int r(int x){
if(x%4==0&&x%100!=0||x%400==0) return 1;
return 0;
}
int main(){
int a,b,c;
scanf("%d/%d/%d",&a,&b,&c);
int cnt=0;
if(b>=1&&b<=12){
string k;
if(a<10) k+='0';
k+=to_string(a);
int d=r(a),ans=0;
if(d==1) ans++;
if(ans==1){
if(c<=u[b]){
if(a>=60){
cnt++;
if(b<10){
if(c<10){
s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(c);
}
else{
if(c<10){
s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(c);
}
}
if(a<=59){
cnt++;
if(b<10){
if(c<10){
s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(c);
}
else{
if(c<10){
s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(c);
}
}
}
}
if(ans==0){
if(c<=y[b]){
if(a>=60){
cnt++;
if(b<10){
if(c<10){
s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(c);
}
else{
if(c<10){
s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(c);
}
}
if(a<=59){
cnt++;
if(b<10){
if(c<10){
s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(c);
}
else{
if(c<10){
s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(c);
}
else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(c);
}
}
}
}
d=r(c),ans=0,k.clear();
if(c<10) k+='0';
k+=to_string(c);
if(d==1) ans++;
if(ans==1){
if(a<=u[b]){
if(c>=60){
cnt++;
if(b<10){
if(a<10){
s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(a);
}
else{
if(a<10){
s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(a);
}
}
if(c<=59){
cnt++;
if(b<10){
if(a<10){
s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(a);
}
else{
if(a<10){
s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(a);
}
}
}
}
if(ans==0){
if(a<=y[b]){
if(c>=60){
cnt++;
if(b<10){
if(a<10){
s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(a);
}
else{
if(a<10){
s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(a);
}
}
if(c<=59){
cnt++;
if(b<10){
if(a<10){
s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(a);
}
else{
if(a<10){
s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(a);
}
else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(a);
}
}
}
}
}
if(a>=1&&a<=12){
int d=r(c),ans=0;
string k;
if(c<10) k+='0';
k+=to_string(c);
if(d==1) ans++;
if(ans==1){
if(b<=u[a]){
if(c>=60){
cnt++;
if(a<10){
if(b<10){
s[cnt]="19"+k+"-0"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="19"+k+"-0"+to_string(a)+"-"+to_string(b);
}
else{
if(b<10){
s[cnt]="19"+k+"-"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="19"+k+"-"+to_string(a)+"-"+to_string(b);
}
}
if(c<=59){
cnt++;
if(a<10){
if(b<10){
s[cnt]="20"+k+"-0"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="20"+k+"-0"+to_string(a)+"-"+to_string(b);
}
else{
if(b<10){
s[cnt]="20"+k+"-"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="20"+k+"-"+to_string(a)+"-"+to_string(b);
}
}
}
}
if(ans==0){
if(b<=y[a]){
if(c>=60){
cnt++;
if(a<10){
if(b<10){
s[cnt]="19"+k+"-0"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="19"+k+"-0"+to_string(a)+"-"+to_string(b);
}
else{
if(b<10){
s[cnt]="19"+k+"-"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="19"+k+"-"+to_string(a)+"-"+to_string(b);
}
}
if(c<=59){
cnt++;
if(a<10){
if(b<10){
s[cnt]="20"+k+"-0"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="20"+k+"-0"+to_string(a)+"-"+to_string(b);
}
else{
if(b<10){
s[cnt]="20"+k+"-"+to_string(a)+"-0"+to_string(b);
}
else s[cnt]="20"+k+"-"+to_string(a)+"-"+to_string(b);
}
}
}
}
}
sort(s+1,s+1+cnt);
cout<<s[1]<<endl;
for(int i=2;i<=cnt;i++){
if(s[i]==s[i-1]) return 0;
cout<<s[i]<<endl;
}
return 0;
}