#include<bits/stdc++.h>

#define endl '\n'

using namespace std;

#define int long long

signed main(){

  string str;

  while(1){

    cin>>str;

    if(str=="#"){
      break;
    }

    int day[]={31,28,31,30,31,30,31,31,30,31,30,31};
    
    if(count(str.begin(),str.end(),'.')==2){

      long long y,m,d;
      
      sscanf(str.c_str(),"%lld.%lld.%lld",&y,&m,&d);

      int year=2013;

      long long year_cnt=0;
      
      if(y==2012){
	year_cnt+=(d-21);

      }else{

	year_cnt+=10;
	
	while(1){
	  
	  if(year==y){
	    break;
	  }
	  if((year%4==0&&year%100!=0)||year%400==0){
	    year_cnt+=366;
	  }else{
	    year_cnt+=365;
	  }

	  year++;
	    
	}

	for(int i=0;i<(m-1);i++){

	  if(i==1){
	    if((year%4==0&&year%100!=0)||year%400==0){
	      year_cnt+=(day[i]+1);
	    }else{
	      year_cnt+=(day[i]);
	    }
	  }else{
	    year_cnt+=(day[i]);
	  }
	}
	
	year_cnt+=d;
	
	year_cnt%=1872000;
	
      }


      long long a_ans=0,b_ans=0,c_ans=0,d_ans=0,e_ans=0;      
      
      if(year_cnt>=(20*20*18*20)){
	a_ans=year_cnt/(20*20*18*20);
	year_cnt%=(20*20*18*20);
	
      }
      if(year_cnt>=(20*18*20)){
	b_ans=year_cnt/(20*18*20);
	year_cnt%=(20*18*20);
      }
      if(year_cnt>=(18*20)){
	c_ans=year_cnt/(18*20);
	year_cnt%=(18*20);
      }
      if(year_cnt>=(20)){
	d_ans=year_cnt/(20);
	year_cnt%=(20);
      }
      e_ans=year_cnt;
      
      
      printf("%lld.%lld.%lld.%lld.%lld\n",a_ans,b_ans,c_ans,d_ans,e_ans);
      
	
    }else if(count(str.begin(),str.end(),'.')==4){
      long long a,b,c,d,e;
      
      sscanf(str.c_str(),"%lld.%lld.%lld.%lld.%lld",&a,&b,&c,&d,&e);

      long long cnt=0;


      //日数
      cnt+=(20*20*18*20*a);
      cnt+=(20*18*20*b);
      cnt+=(18*20*c);
      cnt+=(20*d);
      cnt+=(e);

      //2012年から
      long long year=2013;
      long long ans=0;

      if(cnt<=10){

	cout<<2012<<"."<<12<<"."<<21+cnt<<endl;
	
      }else{
	cnt-=10;	
	while(1){
	  
	  if((year%4==0&&year%100!=0)||year%400==0){
	    
	    if(cnt>366){
	      cnt-=366;
	    }else{
	      break;
	    }
	  }else{
	    if(cnt>365){
	      cnt-=365;
	    }else{
	      break;
	    }
	  }
	  
	  year++;
	  ans++;
	  
	}
	int m_cnt=1;
       
	if((year%4==0&&year%100!=0)||year%400==0){
	  for(int i=0;i<12;i++){
	    if(i==1){
	      
	      if(cnt>(day[i]+1)){
		cnt-=(day[i]+1);
		m_cnt++;
	      }else{
		break;
	      }
	    }else{
	      if(cnt>(day[i])){
		cnt-=(day[i]);
		m_cnt++;
	      }else{
		break;
	      }
	    }
	    
	  }
	}else{
	  for(int i=0;i<12;i++){
	    if(cnt>(day[i])){
	      cnt-=(day[i]);
	      m_cnt++;
	    }else{
	      break;
	    }
	  }
	}
	cout<<year<<"."<<m_cnt<<"."<<cnt<<endl;
      }
      
    }
  
  }    
  
  
  return 0;

}

