K. Key anagram
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

You are given a string $$$s$$$, consisting of $$$n$$$ lowercase Latin letters. You would like to find its key anagram of order $$$k$$$. A key anagram of order $$$k$$$ is the lexicographically smallest string $$$t$$$ of length $$$k$$$, which is obtained from some substring of the original string $$$s$$$ by rearranging its letters. In other words, the key anagram of order $$$k$$$ is the lexicographically smallest anagram of some substring of length $$$k$$$ of the original string $$$s$$$.

We remind you that a string $$$a$$$ is lexicographically smaller than a string $$$b$$$ if and only if one of the following conditions holds:

  • $$$a$$$ is a prefix of $$$b$$$, but $$$a \neq b$$$;
  • at the first position where $$$a$$$ and $$$b$$$ differ, the letter in $$$a$$$ occurs earlier in the alphabet than the corresponding letter in $$$b$$$.
Input

The first line contains two integers $$$n$$$ and $$$k$$$ ($$$1 \le k \le n \le 10^{6}$$$) – the length of the string and the size of the required substring.

The second line contains $$$s$$$.

Output

Print the string $$$t$$$ – the key anagram of order $$$k$$$.

Examples
Input
10 3
teamspirit
Output
aem
Input
16 5
gaminggladiators
Output
aadil