#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using pli = pair<ll, int>;
const int INF = 0x3f3f3f3f, N = 1e3 + 5;
const ll LINF = 1e18 + 5;
constexpr int mod = 1e9 + 7;
int n, l, k, L[26], R[26];
string s, t[N];
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  cin >> n >> l >> k >> s;
  sort(begin(s), end(s));
  int c = 0, idx = 0;
  L[0] = 1, R[0] = k;
  while ((int)t[k].size() < l) {
    int pl = L[c], pr = R[c];
    for (int i = 0; i < 26; i++) L[i] = n + 1, R[i] = -1;
    for (int i = pl; i <= pr; i++) {
      t[i] += s[idx];
      L[s[idx] - 'a'] = min(L[s[idx] - 'a'], i);
      R[s[idx] - 'a'] = max(R[s[idx] - 'a'], i);
      idx++;
    }
    c = t[k].back() - 'a';
  }
  for (int i = 1; i <= n; i++)
    while ((int)t[i].size() < l) t[i] += s[idx++];
  for (int i = 1; i <= n; i++) cout << t[i] << '\n';
  return 0;
}
