#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main(){
    int n,c,k,len,test;
    scanf("%d %d",&n,&c);
    vector <pair<int,int> > b;
    
    for (int i=0; i<n; i++){
                scanf("%d",&k);
                len=b.size(); 
                test=false; 
                for (int j=0; j<len; j++) if (b[j].second==k){
                                                b[j].first++; 
                                                test=true; break;
                                                }
                if (test==false) b.push_back(make_pair(1,k));
                }            
    len=b.size();
    for (int i=1; i<len; i++) for (int j=0; j<len-i; j++){
        if (b[j].first<b[j+1].first) swap(b[j],b[j+1]);
        }
    for (int i=0; i<len; i++) for (int j=0; j<b[i].first; j++) printf ("%d ",b[i].second);
    printf("\n");
    return 0;
}
