#include <bits/stdc++.h>
using namespace std;
const long long int INF = LONG_LONG_MAX;
const long long int NINF = LONG_LONG_MIN;
int32_t main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  long long int n, l, k;
  cin >> n >> l >> k;
  string s;
  cin >> s;
  sort((s).begin(), (s).end());
  vector<string> list(n);
  long long int p = 0;
  long long int start = 0;
  for (long long int i = 0; i < l; i++) {
    for (long long int j = start; j < k; j++) {
      list[j] += s[p++];
      if (j != 0) {
        if (list[j].back() != list[j - 1].back()) start = j;
      }
    }
  }
  for (long long int i = 0; i < n; i++) {
    for (long long int j = (long long int)list[i].size(); j < l; j++) {
      list[i] += s[p++];
    }
  }
  for (string& ss : list) cout << ss << endl;
}
