#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <list>
#include <string>
#include <queue>
#include <vector>

using namespace std;

struct brojcek{
    int broj;
    int ponavljase;
};

bool sortr(brojcek i, brojcek j){
    return i.ponavljase> j.ponavljase;
}


int main(void){
    int a,b,d(0);
    int c;
    int arr[100];
    
    scanf("%d %d", &b, &a);
    
    brojcek s[b];
        
    for(int i=0; i<b;i++){
        cin >> c;
        bool n=false;
        for(int j=0; j<b; j++){            
            if(s[j].broj == c){
                s[j].ponavljase++;
                n = true;
                break;
            }
        }   
        if(n == false){
            arr[d] = c;
            s[d].broj = c;
            s[d].ponavljase = 1;
            d++;
        }
    }
    
    sort(s, s+d, sortr);
    
    
    for(int i=0;i<d;i++){
        for(int j=0;j<s[i].ponavljase;j++){
            cout << s[i].broj<< " ";  
        }

    }

    scanf("\n");
    return 0;
}
