The package for this problem was not updated by the problem writer or Codeforces administration after we've upgraded the judging servers. To adjust the time limit constraint, a solution execution time will be multiplied by 2. For example, if your solution works for 400 ms on judging servers, then the value 800 ms will be displayed and used to determine the verdict.

Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

The problem statement has recently been changed. View the changes.

×
C. Find Pair

time limit per test

1 secondmemory limit per test

256 megabytesinput

standard inputoutput

standard outputYou've got another problem dealing with arrays. Let's consider an arbitrary sequence containing *n* (not necessarily different) integers *a*_{1}, *a*_{2}, ..., *a*_{n}. We are interested in all possible pairs of numbers (*a*_{i}, *a*_{j}), (1 ≤ *i*, *j* ≤ *n*). In other words, let's consider all *n*^{2} pairs of numbers, picked from the given array.

For example, in sequence *a* = {3, 1, 5} are 9 pairs of numbers: (3, 3), (3, 1), (3, 5), (1, 3), (1, 1), (1, 5), (5, 3), (5, 1), (5, 5).

Let's sort all resulting pairs lexicographically by non-decreasing. Let us remind you that pair (*p*_{1}, *q*_{1}) is lexicographically less than pair (*p*_{2}, *q*_{2}) only if either *p*_{1} < *p*_{2}, or *p*_{1} = *p*_{2} and *q*_{1} < *q*_{2}.

Then the sequence, mentioned above, will be sorted like that: (1, 1), (1, 3), (1, 5), (3, 1), (3, 3), (3, 5), (5, 1), (5, 3), (5, 5)

Let's number all the pair in the sorted list from 1 to *n*^{2}. Your task is formulated like this: you should find the *k*-th pair in the ordered list of all possible pairs of the array you've been given.

Input

The first line contains two integers *n* and *k* (1 ≤ *n* ≤ 10^{5}, 1 ≤ *k* ≤ *n*^{2}). The second line contains the array containing *n* integers *a*_{1}, *a*_{2}, ..., *a*_{n} ( - 10^{9} ≤ *a*_{i} ≤ 10^{9}). The numbers in the array can coincide. All numbers are separated with spaces.

Please do not use the %lld specificator to read or write 64-bit integers in С++. It is preferred to use cin, cout, streams or the %I64d specificator instead.

Output

In the single line print two numbers — the sought *k*-th pair.

Examples

Input

2 4

2 1

Output

2 2

Input

3 2

3 1 5

Output

1 3

Note

In the first sample the sorted sequence for the given array looks as: (1, 1), (1, 2), (2, 1), (2, 2). The 4-th of them is pair (2, 2).

The sorted sequence for the array from the second sample is given in the statement. The 2-nd pair there is (1, 3).

Codeforces (c) Copyright 2010-2022 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: May/22/2022 15:10:43 (g2).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|