#include<cstdio>
#include<utility>
#include<map>
#include<algorithm>
#include<cstring>

using namespace std;

inline bool compare(pair<int, int> a, pair<int, int> b) {
    return a.second>b.second;
}

int main() {
    int n, c, p, a[1000], boo[1000];
    memset(boo, 0, sizeof(boo));
    pair<int, int> b[1000];
    map<int, int> sif;
    scanf("%d%d", &n, &c);
    for(int i=0; i<n; i++) {
        scanf("%d", a+i);
        sif[a[i]]+=1;
    }
    for(int i=0; i<n; i++) {
        b[i]=make_pair(a[i], sif[a[i]]);
    }

    stable_sort(b, b+n, compare);

    for(int i=0; i<n; ++i) {
        if(!boo[b[i].first])
            for(int j=0; j<b[i].second; j++)
                printf("%d%c", b[i].first, (i!=(n-1))||(j!=(b[a[i]].second)-1) ? ' ' : '\n');
        boo[b[i].first]=1;
    }

    return 0;
}
