#include<stdio.h>
#include<stdlib.h>
#include<math.h>
struct queue {
    int front,rear;
    int data[100];
};
void initqueue(struct queue *q) {
    q->front = 0;
    q->rear = -1;
}
void enqueue(struct queue *q,int value) {
    q->rear++;
    q->data[q->rear] = value;
}
int isPrime(int num) {
    if(num <= 1)
    return 0;
    if(num == 2)
    return 1;
    if(num % 2 == 0)
    return 0;
    for(int i = 3; i <= sqrt(num);i += 2) {
        if(num % i == 0)
        return 0;
    }
return 1;
}
int main() {
    int n;
    scanf("%d",&n);
    if(n <= 0) {
        printf("Invalid input";
        return 0;)
    }
int arr[n];
for(int i = 0; i < n; i++) {
    if(isPrime(arr[i])) {
        enqueue(&q,arr[i]);
    }
}
if(q.rear == -1) {
    return 0;
}
for(int i = q.front; i<=q.rear; i++) {
    printf("%d",q.rear);
    if(i < q.rear)
    printf(" ");
}
return 0;
}