#include <bits/stdc++.h>
using namespace std;
const int N = 400 + 5;
const int INF = 1e9;
int R, n, m;
pair<int, int> H[N], T[N];
int vis[N][N];
vector<pair<int, int> > adj[N][N];
queue<pair<int, int> > Q;
int dis[N][N];
int bfs(int h, int t) {
  memset(dis, 0x3c, sizeof dis);
  dis[h][t] = 0;
  Q.push(make_pair(h, t));
  while (Q.size()) {
    int x = Q.front().first, y = Q.front().second;
    Q.pop();
    if (x + y == 0) return dis[x][y];
    for (auto it : adj[x][y]) {
      if (dis[x][y] + 1 < dis[it.first][it.second]) {
        dis[it.first][it.second] = dis[x][y] + 1;
        Q.push(it);
      }
    }
  }
  return INF;
}
bool isCycle(int h, int t) {
  vis[h][t] = 1;
  for (auto it : adj[h][t]) {
    int x = it.first, y = it.second;
    if (vis[x][y] == 1) return 1;
    if (vis[x][y] == 2) continue;
    if (isCycle(x, y)) return 1;
  }
  vis[h][t] = 2;
  return 0;
}
int dp[N][N];
int fun(int x, int y) {
  int &memo = dp[x][y];
  if (memo != -1) return memo;
  if (x + y > R) return memo = 0;
  int ans = 0;
  for (auto it : adj[x][y]) {
    ans = max(ans, fun(it.first, it.second));
  }
  return memo = ans + 1;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int h, t;
  cin >> h >> t >> R;
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> H[i].first >> H[i].second;
  }
  cin >> m;
  for (int i = 1; i <= m; i++) {
    cin >> T[i].first >> T[i].second;
  }
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
      if (i + j == 0)
        ;
      else if (i + j > R)
        ;
      else {
        for (int k = 1; k <= n and k <= i; k++) {
          adj[i][j].push_back(make_pair(i - k + H[k].first, j + H[k].second));
        }
        for (int k = 1; k <= m and k <= j; k++) {
          adj[i][j].push_back(make_pair(i + T[k].first, j - k + T[k].second));
        }
      }
    }
  }
  int ans = bfs(h, t);
  if (ans != INF) {
    cout << "Ivan\n";
    cout << ans << "\n";
    exit(0);
  }
  if (isCycle(h, t)) {
    cout << "Draw\n";
    exit(0);
  }
  memset(dp, -1, sizeof dp);
  cout << "Zmey\n";
  cout << fun(h, t) << "\n";
  return 0;
}
