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:
import java.awt.Point;
import java.io.*;
import java.math.BigInteger;
import java.util.*;
import java.util.Map.Entry;
import java.util.function.Function;
import java.util.function.Supplier;

public class tests {
	static Scanner in = new Scanner();
	static PrintWriter out = new PrintWriter(System.out);
	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static void main(String[] test) throws NumberFormatException, IOException {
		int n = Integer.parseInt(br.readLine());
		// lower
		long lo = 0;
		long hi = (long) (1e9);
		long go = -1;
		while (lo < hi) {
			long mid = (hi + lo) / 2;
			if (valid(mid) >= n) {
				go = mid;
				hi = mid;
			} else {
				lo = mid + 1;
			}
		}
		StringBuilder ans = new StringBuilder();
		int c = 0;
		while (valid(go) == n) {
			c++;
			ans.append((go++) + " ");
		}
		out.println(c);// c = 5 if exist else 0
		out.println(ans);
		out.flush();
		out.close();
	}

	static int valid(long x) {// 5 step
		int ret = 0;
		while (x > 0) {
			x /= 5;
			ret += x;
		}
		return ret;
	}

	static class Scanner {
		BufferedReader br;
		StringTokenizer st;

		Scanner() {
			br = new BufferedReader(new InputStreamReader(System.in));
		}

		Scanner(String file) throws FileNotFoundException {
			br = new BufferedReader(new FileReader(file));
		}

		String next() throws IOException {
			while (st == null || !st.hasMoreTokens())
				st = new StringTokenizer(br.readLine());
			return st.nextToken();
		}

		int nextInt() throws NumberFormatException, IOException {
			return Integer.parseInt(next());
		}

		String nextLine() throws IOException {
			return br.readLine();
		}

		long nextLong() throws NumberFormatException, IOException {
			return Long.parseLong(next());
		}

	}

}