#include <stdio.h>

int main() {
    while (1) {
        int l, c, t;
        scanf("%d %d %d", &l, &c, &t);

        if (l == 0 && c == 0 && t == 0) {
            break;
        }

        // Cria a matriz original
        int original[l][c];
        for (int i = 0; i < l; i++) {
            for (int j = 0; j < c; j++) {
                original[i][j] = c * i + j + 1;
            }
        }

        // Arrays para controlar linhas e colunas
        int linha[l], coluna[c];
        for (int i = 0; i < l; i++) {
            linha[i] = i;
        }
        for (int j = 0; j < c; j++) {
            coluna[j] = j;
        }

        // Processa as operações
        for (int opCount = 0; opCount < t; opCount++) {
            char op;
            int a, b;
            scanf(" %c %d %d", &op, &a, &b);
            a--; b--;

            if (op == 'L') {
                int aux = linha[a];
                linha[a] = linha[b];
                linha[b] = aux;
            } else {
                int aux = coluna[a];
                coluna[a] = coluna[b];
                coluna[b] = aux;
            }
        }

        // Gera a resposta
        int resposta[l][c];
        for (int i = 0; i < l; i++) {
            for (int j = 0; j < c; j++) {
                resposta[i][j] = original[linha[i]][coluna[j]];
            }
        }

        // Imprime a resposta
        for (int i = 0; i < l; i++) {
            for (int j = 0; j < c; j++) {
                printf("%d%s", resposta[i][j], (j == c - 1) ? "\n" : " ");
            }
        }
    }

    return 0;
}
