Problem: Mr. Santa asks all the great programmers of the world to solve a trivial problem. He gives them an integer m and asks for the number of positive integers n, such that the factorial of n ends with exactly m zeroes. Are you among those great programmers who can solve this problem?

Input

The only line of input contains an integer m (1 ≤ m ≤ 100 000) — the required number of trailing zeroes in factorial.

Output

First print k — the number of values of n such that the factorial of n ends with m zeroes. Then print these k integers in increasing order.

Examples

Input

1


Output

5
5 6 7 8 9 

Input

5


Output

0

Note

The factorial of n is equal to the product of all integers from 1 to n inclusive, that is n! = 1·2·3·...·n.

In the first sample, 5! = 120, 6! = 720, 7! = 5040, 8! = 40320 and 9! = 362880.

Solution (in JAVA):

Solution:
/**
 * Created by Omar on 2/26/2016.
 */

import java.util.*;
import java.io.*;

public class B {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        PrintWriter pw = new PrintWriter(System.out);
        long m=Integer.parseInt(br.readLine());
        //String[] parts=br.readLine().split(" ");
        //int[]a= new int[n];
        //for(int i=0;i<n;i++){a[i]=Integer.parseInt(parts[i]);}
//        for(int i=0;i<10;i++){
//            System.out.println(fact(i));
//        }
        long temp=0;
        long x=0;
        HashMap<Long,Long> map=new HashMap<Long,Long>();

        int k=0;
        //System.out.println(power(3,2));

        for(int i=0;i< 500000;i++){ k=0;
            while(power(5,k+1)<=i){
                k++;
            }

            //System.out.println(k);
            temp=0;
            x=i;
           for(int j=0;j<=k;j++){
               temp+=x/power(5,j+1); //System.out.println("temp:"+temp);
           }
          // System.out.println(i+" "+temp);
            map.put((long)i,temp);
        }
        ArrayList<Long>a=new ArrayList<>();
        long key;
        long value;
        for(Map.Entry<Long,Long> e: map.entrySet()){
            key=e.getKey();
            value=e.getValue();
           // System.out.println(key+" "+value);

            if(value==m)
            a.add(key);
        }
        pw.print(a.size());
        pw.print("\n");
        Collections.sort(a);
        for(long i:a){
            pw.print(i);
            pw.print(" ");
        }
        pw.close();
        br.close();
    }
//   static  int fact(int n)
//    {
//        int result;
//        if(n==0 || n==1)
//            return 1;
//
//        result = fact(n-1) * n;
//        return result;
//    }

public static long power(long a,long b){
    long temp=a;
    for(int i=0;i<b-1;i++){
        a=a*temp;
    }
    return a;
}
}