#include <bits/stdc++.h>
using namespace std;
const int mod = 1e9 + 7, lim = 1e7 + 10, key = 1010;
int v[lim], r[lim], d[lim];
int main() {
  int n, m, q;
  scanf("%d%d%d", &n, &m, &q);
  for (long long i = 1, _b = (n); i <= _b; i++)
    for (long long j = 1, _b = (m); j <= _b; j++) scanf("%d", v + key * i + j);
  for (long long i = 0, _b = (n); i <= _b; i++)
    for (long long j = 0, _b = (m); j <= _b; j++) {
      r[key * i + j] = key * i + (j + 1);
      d[key * i + j] = key * (i + 1) + j;
    }
  int _a, _b, _c, _d, h, w;
  int x, y, x0, y0;
  for (long long i = 0, _n = (q); i < _n; i++) {
    scanf("%d%d%d%d%d%d", &_a, &_b, &_c, &_d, &h, &w);
    x0 = 0;
    while (--_a) x0 = d[x0];
    while (--_b) x0 = r[x0];
    y0 = 0;
    while (--_c) y0 = d[y0];
    while (--_d) y0 = r[y0];
    x = x0, y = y0;
    for (long long j = 0, _n = (h); j < _n; j++)
      x = d[x], y = d[y], swap(r[x], r[y]);
    for (long long j = 0, _n = (w); j < _n; j++)
      x = r[x], y = r[y], swap(d[x], d[y]);
    x = x0, y = y0;
    for (long long j = 0, _n = (w); j < _n; j++)
      x = r[x], y = r[y], swap(d[x], d[y]);
    for (long long j = 0, _n = (h); j < _n; j++)
      x = d[x], y = d[y], swap(r[x], r[y]);
  }
  x0 = 0;
  for (long long i = 0, _n = (n); i < _n; i++) {
    x0 = d[x0];
    x = x0;
    for (long long j = 0, _n = (m); j < _n; j++) x = r[x], printf("%d ", v[x]);
    putchar('\n');
  }
  return 0;
}
