#include <bits/stdc++.h>
using namespace std;
const int maxn = 5005;
int n, k, cnt;
string s, ans[maxn];
int main() {
  cin >> n >> k >> s;
  char minc = s[0];
  for (int i = 1; i < n; ++i) minc = min(minc, s[i]);
  int mxl = 0;
  for (int i = 0, len = 0; i < n; ++i)
    if (s[i] == minc)
      ++len;
    else
      mxl = max(mxl, len), len = 0;
  if (n <= mxl << (k - 1)) return cout << string(minc, n), 0;
  string tmp = s;
  reverse(tmp.begin(), tmp.end());
  s = s + tmp;
  for (int i = 0, len = 0; i < n; ++i) {
    if (s[i] == minc)
      ++len;
    else
      mxl = max(mxl, len), len = 0;
    if (i == n - 1) {
      if (s[i] != minc) break;
      ++cnt;
      int L = len << k;
      ans[cnt] = s.substr(n - len - (n - L), n - L);
      reverse(ans[cnt].begin(), ans[cnt].end());
      ans[cnt] = string(L, minc) + ans[cnt];
    } else if (len == mxl) {
      ++cnt;
      int L = len << (k - 1);
      ans[cnt] = string(L, minc) + s.substr(i + 1, n - L);
    }
  }
  sort(ans + 1, ans + cnt + 1);
  cout << ans[1] << endl;
  return 0;
}
