#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
char mp[25][25];
int n;
int a[45][26];
int dp[45][(1 << 20)];
int dfs(int dep, int sta) {
  int num = 0;
  if (dp[dep][sta] != inf) return dp[dep][sta];
  for (int i = 0, k = dep; i < n; i++, k--) {
    if (sta >> i & 1) {
      if (mp[k][i] == 'a')
        num++;
      else if (mp[k][i] == 'b')
        num--;
      break;
    }
  }
  if (dep >= 2 * n - 2) return dp[dep][sta] = num;
  int &tmp = dp[dep][sta];
  if (dep % 2 != 0) {
    tmp = -inf;
    for (int i = 0; i < 26; i++) {
      int next = a[dep + 1][i] & (sta | (sta << 1));
      if (next == 0) continue;
      tmp = max(tmp, dfs(dep + 1, next) + num);
    }
  } else {
    for (int i = 0; i < 26; i++) {
      int next = a[dep + 1][i] & (sta | (sta << 1));
      if (next == 0) continue;
      tmp = min(tmp, dfs(dep + 1, next) + num);
    }
  }
  return tmp;
}
void pre() {
  for (int i = 0; i < 2 * n - 1; i++) {
    int k = i;
    for (int j = 0; j < n; j++) {
      if (k < 0) break;
      a[i][mp[k][j] - 'a'] |= (1 << j);
      k--;
    }
  }
}
int main() {
  ios::sync_with_stdio(false);
  while (cin >> n) {
    for (int i = 0; i < n; i++) cin >> mp[i];
    pre();
    for (int i = 0; i < 2 * n; i++)
      for (int j = 0; j < (1 << n); j++) dp[i][j] = inf;
    int res = dfs(0, 1);
    if (res > 0) {
      puts("FIRST");
      continue;
    }
    if (res < 0) {
      puts("SECOND");
      continue;
    }
    puts("DRAW");
  }
}
