#include <bits/stdc++.h>
using namespace std;
using ll = long long;
template <typename T>
using V = vector<T>;
constexpr int Mod = 998244353;
constexpr int mod = 1e9 + 7;
constexpr ll inf = 1LL << 60;
template <typename T>
constexpr bool chmax(T &a, const T &b) {
  if (a >= b) return false;
  a = b;
  return true;
}
template <typename T>
constexpr bool chmin(T &a, const T &b) {
  if (a <= b) return false;
  a = b;
  return true;
}
int N, K;
string S;
int main() {
  cin.tie(0);
  ios::sync_with_stdio(0);
  cin >> N >> K >> S;
  string t = S;
  S += string(S.rbegin(), S.rend());
  for (ll i = (ll)1; i < (ll)N + 1; i++) chmin(t, S.substr(i, N));
  int l = 1;
  while (l < t.size() && t[0] == t[l]) l++;
  int k = l;
  if (--K > 15)
    k = N;
  else
    k <<= K;
  string ans(t[0], min(k, N));
  ans += t.substr(l, N - ans.size());
  cout << ans << endl;
  return 0;
}
