#include <stdio.h>
#include <math.h>
#include <vector>
#include <time.h>

using namespace std;

int N,cnt = 0;
vector<int> primes;

int is_prime(int p)
{
    int sq = sqrt(p);
    for (int ps : primes) {
        if(sq < ps)
            return 1;
        if(p % ps == 0)
            return 0;
    }
    return 1;
}

void prime(int N)
{
    int k = 0;
    cnt += 2;
    primes.push_back(2);
    primes.push_back(3);
    while (cnt < N) {
        k++;
        if(is_prime(6*k-1) == 1){
            cnt ++;
            primes.push_back(6*k-1);
        }
        if(is_prime(6*k+1) == 1){
            cnt ++;
            primes.push_back(6*k+1);
        }
    }
    return;
}

int main() {
    int a;
    clock_t start,end;
    double result;
    scanf("%d",&a);
    scanf("%d", &N);
    start = clock();
    prime(N);
    if(a == 1) printf("%d",primes[N-1]);
    if(a == 0) for(int x : primes)
        printf("%d ",x);
    end = clock();
    result = (double)(end - start);
    printf("\ntime : %f",result/ CLOCKS_PER_SEC);
    return 0;
}