#include<stdio.h>
#include<math.h>

#define MAX_SIZE 20

typedef struct {
    int items[MAX_SIZE];
    int front;
    int rear;
}Queue;

void initQueue(Queue *q){
    q->front=0;
    q->rear= - 1;
}
void enqueue(Queue *q, int value){
    if(q->rear<MAX_SIZE - 1){
     q->items[++(q->rear)]= value;
    }
}
int isPrime(int num){
    if(num<=1) return 0;
    for(int i=2; i<sqrt(num); i++){
    }
    if(num%i==0) return 0;
}
return 1;
}
int main(){
    int n;
    scanf("%d", &n);
    if(n<=0){
        printf("Invalid input");
        return 0;
    }
    Queue q;
    intitQueue(&q);
    
    for(int i=0; i<n; i++){
        int id;
        scanf("%d", &id);
        if(isPrime(id)){
            enequeue(&q, id);
        }
    }
    for(int i= q.front; i<=q.rear; i++){
        printf("%d ", q.items[i]);
    }
    printf(" ");
    return 0;
}