#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define out(z) printf("%d\n", (int)(z))

void main (int argc, char *argv[])
{
	int i, j, n = argc > 1 ? abs(atoi(argv[1])) : 0, half = (n - 1) / 2, root = sqrt(n);
	char *x = (char *) malloc(half);
	int count = 1, knocks = 0, dupls = 0;

	switch (n)
	{
		case 2: out(2);
		case 0: case 1: return;
		default: out(2);
	}

	for (i = half; i; x[--i] = 1);

	while ((n = 2 * i + 3) <= root)
		if (x[i++])
			for (x[j = (n * n - 3) / 2] = 0; j < half; x[j += n] = 0);

	for (i = 0; i < half;  i++)
		if (x[i])
			out(2 * i + 3);
}
