#include <bits/stdc++.h>
using namespace std;
const int Maxn = 10005;
int n, k, mini, maxi, cnt[Maxn], ct;
string S[Maxn], str, tmp;
int main() {
  scanf("%d%d", &n, &k);
  cin >> str;
  for (int i = 0; i < n; i++) str += str[n - i - 1];
  for (int i = 0; i < 2 * n; i++) mini = min(mini, str[i] - 'a');
  for (int i = 0; i < 2 * n; i++) {
    if (str[i] - 'a' == mini)
      cnt[i] = cnt[i - 1] + 1;
    else
      cnt[i] = 0;
    maxi = max(maxi, cnt[i]);
  }
  int limit = min(n, maxi * ((1 << (min(15, k) - 1)) - 1));
  for (int i = 0; i < n; i++) {
    tmp = "";
    if (cnt[i + n] != maxi) continue;
    for (int j = i + n; j > i; j--) tmp += str[j];
    S[++ct] = tmp;
  }
  sort(S + 1, S + 1 + ct);
  for (int i = 0; i < limit; i++) putchar(mini + 'a');
  for (int i = limit; i < n; i++) putchar(S[1][i - limit]);
  return 0;
}
