#include <bits/stdc++.h>
using namespace std;
long long num[100010];
struct node {
  long long v;
  long long t;
};
vector<node> v;
int main() {
  long long n, k, i, j, sum, len, co;
  long long a, b;
  node temp;
  while (cin >> n >> k) {
    for (i = 0; i < n; i++) cin >> num[i];
    sort(num, num + n);
    temp.t = 1;
    for (i = 0; i < n - 1; i++) {
      if (num[i] != num[i + 1]) {
        temp.v = num[i];
        v.push_back(temp);
        temp.t = 1;
      } else
        temp.t++;
    }
    temp.v = num[n - 1];
    v.push_back(temp);
    len = v.size();
    sum = k;
    for (i = 0; i < len; i++) {
      if (sum > v[i].t * n)
        sum -= (v[i].t * n);
      else
        break;
    }
    a = v[i].v;
    for (j = 0; j < len; j++) {
      if (sum > v[i].t * v[j].t)
        sum -= (v[i].t * v[j].t);
      else
        break;
    }
    b = v[j].v;
    cout << a << " " << b << endl;
    v.clear();
  }
  return 0;
}
