#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<vector>
#include<string>
#include<cstring>
#include<map>
#include<set>
#include<queue>
#include<algorithm>
#include<cmath>
using namespace std;

int a[1001];
pair<int,int> p[1001];
set<int> s;

int main () {

int n; cin >> n;
int c; cin >> c;
for(int i=0; i<n; i++) { scanf("%d", a+i); s.insert(a[i]); }
int kol = 0;
for(set<int>::iterator it = s.begin(); it!=s.end(); ++it) {
    for(int j=0; j<n; j++) if( a[j] == *it ) p[kol].first--;
    for(int j=0; j<n; j++) if( a[j] == *it ) { p[kol].second = j; break; }
    ++kol;
}
sort(p, p+n);
int co = 0;
for(int i=0; i<n; i++) for(int j=0; j<(-p[i].first); j++) {
    printf("%d%c", a[ p[i].second ], (co == n-1)? '\n' : ' ' );
    co++;
}

return 0; }
