#include <bits/stdc++.h>
using namespace std;
int t, r, c, q, cntR, tmp, tmplv;
char str[105][105];
char ans[105][105];
void evaluate(int x, int y, int v) {
  int i, j;
  if (v < 10)
    ans[x][y] = v + '0';
  else if (v < 36)
    ans[x][y] = v - 10 + 'a';
  else
    ans[x][y] = v - 10 - 26 + 'A';
}
int main() {
  int i, j, k;
  cin >> t;
  for (i = 0; i < t; i++) {
    cntR = 0;
    cin >> r >> c >> q;
    for (j = 0; j < r; j++)
      for (k = 0; k < c; k++) {
        cin >> str[j][k];
        if (str[j][k] == 'R') cntR++;
      }
    tmp = tmplv = 0;
    for (j = 0; j < r; j++) {
      if (j & 1) {
        for (k = c - 1; k >= 0; k--) {
          evaluate(j, k, tmplv);
          if (str[j][k] == 'R') tmp++;
          if (((tmplv >= cntR % q && tmp >= cntR / q) ||
               (tmplv < cntR % q && tmp >= cntR / q + 1)) &&
              tmplv < q - 1) {
            tmp = 0;
            tmplv++;
          }
        }
      } else {
        for (k = 0; k < c; k++) {
          evaluate(j, k, tmplv);
          if (str[j][k] == 'R') tmp++;
          if (((tmplv >= cntR % q && tmp >= cntR / q) ||
               (tmplv < cntR % q && tmp >= cntR / q + 1)) &&
              tmplv < q - 1) {
            tmp = 0;
            tmplv++;
          }
        }
      }
    }
    for (j = 0; j < r; j++) {
      for (k = 0; k < c; k++) cout << ans[j][k];
      cout << endl;
    }
  }
  return 0;
}
