Problem: Print a sequence a_1, a_2, ..., a_N whose length is N that satisfies the following conditions:

* a_i (1 \leq i \leq N) is a prime number at most 55 555.
* The values of a_1, a_2, ..., a_N are all different.
* In every choice of five different integers from a_1, a_2, ..., a_N, the sum of those integers is a composite number.



If there are multiple such sequences, printing any of them is accepted.

Constraints

* N is an integer between 5 and 55 (inclusive).

Input

Input is given from Standard Input in the following format:


N


Output

Print N numbers a_1, a_2, a_3, ..., a_N in a line, with spaces in between.

Examples

Input

5


Output

3 5 7 11 31


Input

6


Output

2 3 5 7 11 13


Input

8


Output

2 5 7 13 19 37 67 79

Solution (in JAVA):

Solution:
import java.util.Arrays;
import java.util.PriorityQueue;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner std = new Scanner(System.in);
        int n = std.nextInt();
        int max = 55555;
        PriorityQueue<Integer> pq = prime(max);
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < n; i++) {
            int prime;
            while (true) {
                prime = pq.poll();
                if (prime % 10 == 1) {
                    break;
                }
            }
            
            sb.append(prime);
            sb.append(" ");
        }

        System.out.println(sb.toString());
    }

    static PriorityQueue<Integer> prime(int n) {
        boolean[] is_prime = new boolean[n+1];
        Arrays.fill(is_prime, true);
        is_prime[0] = is_prime[1] = false;
        PriorityQueue<Integer> pq = new PriorityQueue<>(n);
        for (int i = 2; i <= n; i++) {
            if (!is_prime[i]) {
                continue;
            }

            is_prime[i] = true;
            pq.add(i);
            for (int j = 2 * i; j <= n; j += i) {
                is_prime[j] = false;
            }
        }

        return pq;
    }
}