#include <bits/stdc++.h>
using namespace std;
long long n, k, l;
string s, ans[2000];
int main() {
  ios_base::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL);
  cin >> n >> l >> k;
  cin >> s;
  sort(s.begin(), s.end());
  int r = l * n - 1;
  for (int i = 0; i < k; i++) {
    ans[i] += s[i];
  }
  for (int i = n - 1; i >= k; i--) {
    ans[i] += s[r];
    r--;
  }
  int le = k;
  k--;
  if (l != 1) {
    for (int i = 0; i < n; i++) {
      if (ans[i].size() != l && ans[i][0] < ans[k][0]) {
        int sz = ans[i].size();
        for (int j = 0; j < l - sz; j++) {
          ans[i] += s[r];
          r--;
        }
      } else if (ans[i].size() != l &&
                 ans[i][ans[i].size() - 1] == ans[k][ans[k].size() - 1]) {
        ans[i] += s[le];
        le++;
        for (int j = i + 1; j <= k; j++) {
          if (ans[j].size() == l) continue;
          ans[j] += s[le];
          le++;
        }
        i--;
      } else if (ans[i].size() != l) {
        int sz = ans[i].size();
        for (int j = 0; j < l - sz; j++) {
          ans[i] += s[r];
          r--;
        }
      }
    }
  }
  sort(ans, ans + n);
  for (int i = 0; i < n; i++) cout << ans[i] << "\n";
  return 0;
}
