#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
typedef struct frame {
int num;
int cnt;
int order;
} frame;
frame frames[22];
int main(){
int N, M;
cin>>N>>M;
int tmp;
for(int i=0; i<M; i++){
cin>>tmp;
bool check = false;
for(int j=0; j<N; j++){
if(frames[j].num==tmp) {
frames[j].cnt++;
check=true;
break;
}
if(frames[j].num==0) {
frames[j].num=tmp;
frames[j].cnt++;
frames[j].order=i;
check=true;
break;
}
}
if(!check){
int idx=0;
for(int j=1; j<N; j++){
if(frames[idx].cnt == frames[j].cnt) {
if(frames[idx].order>frames[j].order) idx = j;
}
else if(frames[idx].cnt>frames[j].cnt) idx=j;
}
frames[idx].cnt=1;
frames[idx].num=tmp;
frames[idx].order=i;
}
}
vector<int> v;
for(int i=0; i<N; i++){
v.push_back(frames[i].num);
}
sort(v.begin(), v.end());
for(int i=0; i<N; i++){
if(v[i]==0) continue;
cout<<v[i]<<" ";
}
}