#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m, k, i, j;
  cin >> n >> m >> k;
  char bf[n][m];
  bool greenWins = false, redWins = false;
  for (i = 0; i < n; i++)
    for (j = 0; j < m; j++) cin >> bf[i][j];
  int piles[n], kk = 0;
  if (m == 1) {
    cout << "Second";
    return 0;
  }
  for (i = 0; i < n; i++) {
    int ind = -1;
    for (j = 0; j < m; j++) {
      if (bf[i][j] == '-')
        continue;
      else if (ind == -1)
        ind = j;
      else {
        if (bf[i][ind] == bf[i][j] && bf[i][j] == 'G') {
          if (m == 2) break;
          greenWins = true;
          break;
        }
        if (bf[i][ind] == bf[i][j] && bf[i][j] == 'R') {
          if (m == 2) break;
          redWins = true;
          break;
        }
        piles[kk] = j - ind - 1;
        kk++;
        break;
      }
    }
    if (j == m && (ind != -1)) {
      if (bf[i][ind] == 'G')
        greenWins = true;
      else
        redWins = true;
    }
  }
  if (greenWins && redWins == false) {
    cout << "First";
    return 0;
  }
  if (redWins && greenWins == false) {
    cout << "Second";
    return 0;
  }
  if (redWins == true && greenWins == true) {
    cout << "Draw";
    return 0;
  }
  int x = 64;
  while (x) {
    int sum = 0;
    for (i = 0; i < kk; i++) {
      if (piles[i] & x) sum++;
    }
    if (sum % (k + 1)) {
      greenWins = true;
      break;
    }
    x = x / 2;
  }
  if (greenWins)
    cout << "First";
  else
    cout << "Second";
}
