#include <bits/stdc++.h>
using namespace std;
int dp[5001][5001][2][2];
int main() {
  int N, K;
  char s[200010];
  scanf("%d%d%s", &N, &K, s);
  queue<int> que;
  string ans = "";
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
      dp[i + 1][j][0][0] = dp[i + 1][j][1][0] = 1000000000;
      dp[i + 1][j][0][1] = dp[i + 1][j][1][1] = 1000000000;
    }
    char minc = 'z';
    for (int j = 0; j < N; j++) {
      for (int k = 0; k < 2; k++) {
        if (j > 0 && dp[i][j][0][k] < K) minc = min(minc, s[j - 1]);
        if (j + 1 < N && dp[i][j][1][k] < K) minc = min(minc, s[j + 1]);
        if (dp[i][j][0][k] < K - 1) minc = min(minc, s[j]);
        if (dp[i][j][1][k] < K - 1) minc = min(minc, s[j]);
      }
    }
    if (dp[i][N - 1][1][0] < K) minc = min(minc, s[N - 1]);
    for (int j = 0; j < N; j++) {
      for (int k = 0; k < 2; k++) {
        if (j > 0 && dp[i][j][0][k] < K && minc == s[j - 1])
          dp[i + 1][j - 1][0][k] = min(dp[i + 1][j - 1][0][k], dp[i][j][0][k]);
        if (j + 1 < N && dp[i][j][1][k] < K && minc == s[j + 1])
          dp[i + 1][j + 1][1][k] = min(dp[i + 1][j + 1][1][k], dp[i][j][1][k]);
        if (dp[i][j][0][k] < K - 1 && minc == s[j])
          dp[i + 1][j][1][k] = min(dp[i + 1][j][1][k], dp[i][j][0][k] + 1);
        if (dp[i][j][1][k] < K - 1 && minc == s[j])
          dp[i + 1][j][0][k] = min(dp[i + 1][j][0][k], dp[i][j][1][k] + 1);
      }
    }
    if (dp[i][N - 1][1][0] < K && minc == s[N - 1])
      dp[i + 1][N - 1][0][1] = min(dp[i + 1][N - 1][0][1], dp[i][N - 1][1][0]);
    ans += minc;
  }
  cout << ans << endl;
  return 0;
}
