The R1 company wants to hold a web search championship. There were n computers given for the competition, each of them is connected to the Internet. The organizers believe that the data transfer speed directly affects the result. The higher the speed of the Internet is, the faster the participant will find the necessary information. Therefore, before the competition started, each computer had its maximum possible data transfer speed measured. On the i-th computer it was ai kilobits per second.

There will be k participants competing in the championship, each should get a separate computer. The organizing company does not want any of the participants to have an advantage over the others, so they want to provide the same data transfer speed to each participant's computer. Also, the organizers want to create the most comfortable conditions for the participants, so the data transfer speed on the participants' computers should be as large as possible.

The network settings of the R1 company has a special option that lets you to cut the initial maximum data transfer speed of any computer to any lower speed. How should the R1 company configure the network using the described option so that at least k of n computers had the same data transfer speed and the data transfer speed on these computers was as large as possible?

Input

The first line contains two space-separated integers n and k (1 ≤ k ≤ n ≤ 100) — the number of computers and the number of participants, respectively. In the second line you have a space-separated sequence consisting of n integers: a1, a2, ..., an (16 ≤ ai ≤ 32768); number ai denotes the maximum data transfer speed on the i-th computer.

Output

Print a single integer — the maximum Internet speed value. It is guaranteed that the answer to the problem is always an integer.

Examples

Input

3 2
40 20 30


Output

30


Input

6 4
100 20 40 20 50 50


Output

40

Note

In the first test case the organizers can cut the first computer's speed to 30 kilobits. Then two computers (the first and the third one) will have the same speed of 30 kilobits. They should be used as the participants' computers. This answer is optimal.
#include <bits/stdc++.h>
using namespace std;
int main() {
  int a, b, j, k, n, aux, aux_2;
  int num, sum;
  sum = 0;
  int valor[40000];
  int apar[40000];
  bool encontrado;
  cin >> a;
  cin >> b;
  k = 0;
  for (int i = 0; i <= a - 1; i++) {
    cin >> num;
    encontrado = false;
    j = 0;
    while ((j < k) && (!encontrado)) {
      if (num == valor[j]) {
        encontrado = true;
      } else {
        j = j + 1;
      }
    }
    if (encontrado) {
      apar[j] += 1;
    } else {
      valor[k] = num;
      apar[k] = 1;
      k += 1;
    }
  }
  for (int i = 0; i < k; i++) {
    for (int j = i + 1; j < k; j++) {
      if (valor[j] > valor[i]) {
        aux = valor[j];
        valor[j] = valor[i];
        valor[i] = aux;
        aux_2 = apar[j];
        apar[j] = apar[i];
        apar[i] = aux_2;
      }
    }
  }
  for (int i = 0; i < k; i++) {
    sum = sum + apar[i];
    if (sum >= b) {
      cout << valor[i];
      i = k;
    }
  }
  return 0;
}
