#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#define N 1000010
using namespace std;
int b[N];
int part(int s, int t){
int i = 0, j = 0;
int p = 0;
i = s;
j = t;
p = b[s];
while(i < j){
while(i < j && b[j] >= p){
j--;
}
b[i] = b[j];
while(i < j && b[i] <= p){
i++;
}
b[j] = b[i];
}
b[j] = p;
return j;
}
int quicksort(int s, int t){
int i = 0;
if(s < t){
i = part(s, t);
quicksort(s, i-1);
quicksort(i+1, t);
}
return 0;
}
int main()
{
int n = 0, m = 0;
while (2 == scanf("%d%d", &n, &m)){
for (int i = 0; i < n; i++) {
scanf("%d", &b[i]);
}
quicksort(0, n-1);
for (int i = n-1; i > n-1-m; i--) {
if (i != n-1) {
printf(" ");
}
printf("%d", b[i]);
}
printf("\n");
}
return 0;
}