#include <bits/stdc++.h>
using namespace std;
struct pos {
  int x, y;
} p[1005][1005], abc, t;
queue<pos> q;
int n, i, j, k, kk[1005][1005], dir[4][2] = {1, 0, 0, 1, 0, -1, -1, 0};
char ch[1005], vst[1005][1005];
int main() {
  ios::sync_with_stdio(false);
  cin >> n;
  for (i = 1; i <= n; ++i) {
    for (j = 1; j <= n; ++j) {
      cin >> p[i][j].x >> p[i][j].y;
      if (p[i][j].x != -1) {
        vst[p[i][j].x][p[i][j].y] = 'X';
      }
    }
  }
  for (i = 1; i <= n; ++i) {
    for (j = 1; j <= n; ++j) {
      if (vst[i][j] && (p[i][j].x != i || p[i][j].y != j)) {
        cout << "INVALID";
        return 0;
      }
      if (vst[i][j]) {
        abc.x = i, abc.y = j;
        q.push(abc);
      }
    }
  }
  while (q.size()) {
    t = q.front();
    q.pop();
    for (i = 0; i < 4; ++i) {
      abc.x = t.x + dir[i][0];
      abc.y = t.y + dir[i][1];
      if (abc.x && abc.y && abc.x <= n && abc.y <= n &&
          p[abc.x][abc.y].x == p[t.x][t.y].x &&
          p[abc.x][abc.y].y == p[t.x][t.y].y) {
        if (!vst[abc.x][abc.y]) {
          if (abc.x == t.x && abc.y < t.y)
            vst[abc.x][abc.y] = 'R';
          else if (abc.x == t.x && abc.y > t.y)
            vst[abc.x][abc.y] = 'L';
          else if (abc.x < t.x && abc.y == t.y)
            vst[abc.x][abc.y] = 'D';
          else if (abc.x > t.x && abc.y == t.y)
            vst[abc.x][abc.y] = 'U';
          q.push(abc);
        }
      }
    }
  }
  for (i = 1; i <= n; ++i)
    for (j = 1; j <= n; ++j) kk[i][j] = vst[i][j];
  for (i = 1; i <= n; ++i) {
    for (j = 1; j <= n; ++j) {
      if (!vst[i][j]) {
        if (p[i][j].x != -1) {
          cout << "INVALID";
          return 0;
        }
        if (j > 1 && !kk[i][j - 1])
          vst[i][j] = 'L';
        else if (j < n && !kk[i][j + 1])
          vst[i][j] = 'R';
        else if (i > 1 && !kk[i - 1][j])
          vst[i][j] = 'U';
        else if (i < n && !kk[i + 1][j])
          vst[i][j] = 'D';
        else {
          cout << "INVALID";
          return 0;
        }
      }
    }
  }
  puts("VALID");
  for (i = 1; i <= n; ++i) {
    for (j = 1; j <= n; ++j) {
      putchar(vst[i][j]);
    }
    putchar('\n');
  }
}
