#include <bits/stdc++.h>
using namespace std;
struct node {
  int x, y;
  bool operator<(const node& l) const {
    return x < l.x || (x == l.x && y < l.y);
  }
};
node p[1010];
int main(int argc, char* argv[]) {
  int n, m, k, t;
  scanf("%d%d%d%d", &n, &m, &k, &t);
  for (int i = 0; i < k; i++) scanf("%d%d", &p[i].x, &p[i].y);
  sort(p, p + k);
  p[k].x = n + 1;
  p[k].y = m + 1;
  for (int i = 0; i < t; i++) {
    node tmp;
    scanf("%d%d", &tmp.x, &tmp.y);
    int j = 0;
    for (j = 0; j < k; j++) {
      if (p[j] < tmp)
        ;
      else
        break;
    }
    if (p[j].x == tmp.x && p[j].y == tmp.y)
      printf("Waste\n");
    else {
      int sum = (tmp.x - 1) * m + tmp.y;
      sum -= j;
      sum %= 3;
      switch (sum) {
        case 0:
          printf("Grapes\n");
          break;
        case 1:
          printf("Carrots\n");
          break;
        case 2:
          printf("Kiwis\n");
          break;
        default:
          break;
      }
    }
  }
  return 0;
}
