#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m, k;
  cin >> n >> m >> k;
  char grid[n][m];
  bool flag1 = 0, flag2 = 0;
  int cnt[100] = {};
  for (int i = 0; i < n; i++) {
    string s;
    cin >> s;
    if (s.find('-') < 0 || s.find('-') >= s.size()) continue;
    int x = s.find('G');
    int y = s.find('R');
    if (y == -1 && x == -1) continue;
    if (y >= s.size() || y < 0) flag1 = 1;
    if (x >= s.size() || x < 0) flag2 = 1;
    if (x < s.size() && x >= 0 && y < s.size() && y >= 0) {
      int tmp = abs(x - y) - 1;
      int cur = 0;
      while (tmp) {
        cnt[cur] += tmp % 2;
        tmp /= 2;
        cur++;
      }
    }
  }
  if (flag1 & flag2)
    puts("Draw");
  else if (flag1)
    puts("First");
  else if (flag2)
    puts("Second");
  else {
    int ans = 0;
    for (int i = 0; i < 100; i++)
      if (cnt[i] % (k + 1)) {
        puts("First");
        return 0;
      }
    puts("Second");
  }
  return 0;
}
