A recently found Ancient Prophesy is believed to contain the exact Apocalypse date. The prophesy is a string that only consists of digits and characters "-".

We'll say that some date is mentioned in the Prophesy if there is a substring in the Prophesy that is the date's record in the format "dd-mm-yyyy". We'll say that the number of the date's occurrences is the number of such substrings in the Prophesy. For example, the Prophesy "0012-10-2012-10-2012" mentions date 12-10-2012 twice (first time as "0012-10-2012-10-2012", second time as "0012-10-2012-10-2012").

The date of the Apocalypse is such correct date that the number of times it is mentioned in the Prophesy is strictly larger than that of any other correct date.

A date is correct if the year lies in the range from 2013 to 2015, the month is from 1 to 12, and the number of the day is strictly more than a zero and doesn't exceed the number of days in the current month. Note that a date is written in the format "dd-mm-yyyy", that means that leading zeroes may be added to the numbers of the months or days if needed. In other words, date "1-1-2013" isn't recorded in the format "dd-mm-yyyy", and date "01-01-2013" is recorded in it.

Notice, that any year between 2013 and 2015 is not a leap year.

Input

The first line contains the Prophesy: a non-empty string that only consists of digits and characters "-". The length of the Prophesy doesn't exceed 105 characters.

Output

In a single line print the date of the Apocalypse. It is guaranteed that such date exists and is unique.

Examples

Input

777-444---21-12-2013-12-2013-12-2013---444-777


Output

13-12-2013
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.io.*;

public class apcalypse {

    

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         Scanner s = new Scanner(System.in);
        String pattern = s.nextLine();
        int indx1  =0;
        int count = 0;
        int l = pattern.length();
        String aMax = "" ; int max =0;
        Map correctDate = new HashMap();
        
        while(true)
        {
            if(count>=l) break;
            int indx2 = pattern.indexOf( '-', count );
            count = indx2+1;
            //System.out.println(indx2+" "+count);
            if(indx2>=2 && l - indx2>=8)
            {
                
                String t = pattern.substring(indx2-2,indx2+8);
                //System.out.println(t);
            
                boolean isCorrect = checkDate(t);
                //System.out.println(isCorrect);
                
                if(isCorrect == true)
                {
                    
                    //System.out.println(correctDate.get(t));
                    if(correctDate.get(t)==null)
                    {   
                        //ystem.out.println("before "+correctDate.get(t)+" "+ t);
                        correctDate.put(t,1);
                        //System.out.println(correctDate.get(t));
                        if(max<1){ max = 1; aMax = t;}
                        
                    }
                    
                    else{
                        //System.out.println("jkljkl");
                        correctDate.put(t,(Integer)correctDate.get(t)+1);
                        if(max<(Integer)correctDate.get(t))
                            {
                            //System.out.println("jkljkl");
                            max =  (Integer)correctDate.get(t);
                            aMax = t;
                            }
                      }
                }
        }           
        else
        {
           break;
        }
            

    }
        System.out.println(aMax);
    }
    
    public static boolean checkDate(String date)
    {
        if(date.charAt(5)!='-') return false;
        int a, b, c;
        try
        {
         a = Integer.parseInt(date.substring(0, 2));
         //System.out.println(a);
        
        }
        catch(NumberFormatException nfe)
        {
        return false;
        }
        
        try
        {
            b = Integer.parseInt(date.substring(3, 5));
            //System.out.println(b);
        }
        catch(NumberFormatException nfe)
        {
        return false;
        }
        
        try
        {
            c = Integer.parseInt(date.substring(6, 10));
            //System.out.println(c);
        }
        catch(NumberFormatException nfe)
        {
        return false;
        }
        //System.out.println(b);
        if(c<2013||c>2015) return false;
        if(b<1||b>12) return false;
        if(a<1) return false;
        if(a>28&&b==2) return false;
        if(a>30&&(b==2||b==4||b==6||b==9||b==11)) return false;
        if(a>31&&(b==1||b==3||b==5||b==7||b==8||b==10||b==12)) return false;
        return true;
        
        
        
    }

}
