#include <bits/stdc++.h>
using namespace std;
int main() {
  int N, L, K;
  cin >> N >> L >> K;
  string S;
  cin >> S;
  map<char, int> cnt;
  for (auto c : S) cnt[c]++;
  vector<string> res(N, string(L, ' '));
  int left = 0, right = N - 1;
  for (int j = 0; j < L; j++) {
    char c = 'a';
    for (int i = left; i < K; i++) {
      while (cnt[c] == 0) {
        c++;
        left = i;
      }
      cnt[c]--;
      res[i][j] = c;
    }
    c = 'z';
    for (int i = right; i > K - 1; i--) {
      while (cnt[c] == 0) {
        c--;
        right = i;
      }
      cnt[c]--;
      res[i][j] = c;
    }
  }
  char c = 'a';
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < L; j++) {
      if (res[i][j] == ' ') {
        while (cnt[c] == 0) {
          c++;
        }
        res[i][j] = c;
        cnt[c]--;
      }
    }
  }
  sort(res.begin(), res.end());
  for (auto e : res) cout << e << endl;
}
